查看ADC的源代码
←
ADC
跳转到:
导航
,
搜索
因为以下原因,你没有权限编辑本页:
您刚才请求的操作只有这个用户组中的用户才能使用:
用户
您可以查看并复制此页面的源代码:
== Overview == AD/DA 芯片几乎被模拟巨头 ADI 垄断了。当年因为Wassenaar Arrangement,美国要求最高端的技术要禁售给中国。 ADI 有好几百款芯片在禁售单上。其10bit 100MSPS以上的 ADC 芯片都是禁售的,甚至连 AD/DA 研发部门都罕有华人 <br> == MCP3421 == * 18 bit ADC in a SOT-23-6 package, I²C interface * Self calibration of internal offset and Gain per each Conversion * On-board Voltage Reference: 2.048V +-0.05%, 5ppm/C * On-board PGA (Programmable Gain Amplifier): x1, x2, x4, x8 * Programmable Data Rate Options: ** 3.75 SPS (18bit) ** 15 SPS (16bits) ** 60 SPS (14bits) ** 240 SPS (12bits) * Low current consumption: 145 uA (Continuous Conversion) or 39 uA (One-Shot Conversion with 1 SPS) * 2.7V to 5.5V power supply * -40 - 125 C [[文件:Mcp3421-app.png]] [http://ww1.microchip.com/downloads/en/DeviceDoc/22003b.pdf MCP3421 Datasheet] <br><br> == CS53L30 == ;;System Features * Native (no PLL required) support for 6-/12-MHz, 6.144-/12.288-MHz, 5.6448-/11.2896-MHz, or 19.2-MHz master clock rates and 8- to 48-kHz audio sample rates * Master or Slave Mode. Clock dividers can be used to generate common audio clocks from single-master clock input. * Low power consumption * Less than 4.5-mW stereo (16 kHz) analog mic record * Less than 2.5-mW mono (8 kHz) analog mic record * Selectable mic bias and digital interface logic voltages * High-speed (400-kHz) I²C control port https://www.cirrus.com/en/pubs/proDatasheet/CS53L30_F2.pdf <br><br> == ADAS1000 == <br><br> === ADS7844 === [[文件:ADS7688.png | 800px]] <br><br> === ADS7688 === <br><br> == Atmega328 == 8-channel 10-bit ADC in TQFP and QFN/MLF package <source lang=cpp> analogReference(INTERNAL);use internal 1.1V as Avref //analogReference(DEFAULT); use AVcc as AVref </source> or 选择内部 1.1V 作为 Vref: ADC = Vin/Vref * 2^n, n = 10 in 328p <source lang=cpp> #include "Arduino.h" #if defined(__AVR_ATmega32U4__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) #define ADMUX_VCCWRT1V1 (_BV(REFS0) | _BV(MUX4) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1)) #elif defined (__AVR_ATtiny24__) || defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__) #define ADMUX_VCCWRT1V1 (_BV(MUX5) | _BV(MUX0)) #elif defined (__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__) #define ADMUX_VCCWRT1V1 (_BV(MUX3) | _BV(MUX2)) #else #define ADMUX_VCCWRT1V1 (_BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1)) #endif float Read_Volts(void) { // Read 1.1V reference against AVcc // set the reference to Vcc and the measurement to the internal 1.1V reference if (ADMUX != ADMUX_VCCWRT1V1) { ADMUX = ADMUX_VCCWRT1V1; // Bandgap reference start-up time: max 70us // Wait for Vref to settle. delayMicroseconds(350); } // Start conversion and wait for it to finish. ADCSRA |= _BV(ADSC); while (bit_is_set(ADCSRA,ADSC)) {}; // Result is now stored in ADC. // Calculate Vcc (in V) float vcc = 1.1*1024.0 / ADC; return vcc; } </source> <br><br> == 参考 == * [http://www.docin.com/p-618373939.html sigma-delta+adc数字滤波器设计与优化] * [http://www.ti.com/lit/an/slyt626/slyt626.pdf Designing an anti-aliasing filter for ADCs in the frequency domain] * [[ADC Filter]] <br><br> <br><br> <br><br> <br><br> <br><br> <br><br><br><br> <br><br> <br><br> <br><br> <br><br> <br><br> <br><br><br><br> <br><br> <br><br>
返回到
ADC
。
个人工具
登录
名字空间
页面
讨论
变换
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
社区专页
新闻动态
最近更改
随机页面
帮助
工具箱
链入页面
相关更改
特殊页面