Counter Driven, Sine Encoded Memory Produces 0.75% Distortion Sinewave via D/A Converter
详情介绍
电路功能与优势
本电路显示如何在精密热敏电阻温度监控应用中使用精密模拟微控制器 ADuC7122 。ADuC7122集成多通道12位SAR ADC、12个12位DAC、1.2 V内部基准电压源、ARM7内核、126 kB闪存、8 kB SRAM以及各种数字外设,例如UART、定时器、SPI和两个I2C 接口等。它与一个4.7 kΩ热敏电阻相连。
ADuC7122采用7 mm × 7 mm、108引脚BGA小型封装,因此整个电路可以放在极小的PCB上,从而进一步降低成本。
热敏电阻是对温度敏感的低成本电阻,功能与RTD相似,由固体半导体材料构成,具有正或负温度系数。热敏电阻价格低廉,灵敏度高,可以检测RTD或热电偶无法观察到的细微温度变化。然而,热敏电阻具有高度非线性特征;因此,如果不采用线性化技术,它只能应用于非常窄的温度范围。电路线性化技术可以通过软件实现,但这不在本文讨论范围之内。
尽管具有功能强大的ARM7内核和高速SAR ADC,但ADuC7122仍是一款低功耗解决方案。当ARM7内核在326.4 kHz工作、主ADC有效并测量外部温度传感器时,整个电路的典型功耗为7 mA。在两次温度测量之间可以关断ADC和/或微控制器,使功耗进一步降低。
电路描述
图1所示电路完全通过USB接口供电。利用3.3 V低压差线性调节器ADP3333 ,可将USB接口提供的5 V电源调节至3.3 V,进而向ADuC7122提供DVDD电压。ADuC7122的AVDD电源经过额外滤波处理,如图所示。在线性调节器的输入端也放置一个滤波器,对USB电源进行滤波。
本应用中用到ADuC7122的下列特性:
- 12位SAR ADC
- ARM7TDMI® 内核:功能强大的16/32位ARM7内核集成了126 kB闪存和SRAM存储器,用来运行用户代码,可配置并控制ADC,对来自热敏电阻传感器的信号进行模数转换处理,以及控制UART/USB接口的通信。
- UART: UART用作与PC主机的通信接口。
- 两个外部开关\按钮(未显示)用来强制该器件进入闪存引导模式:使DOWNLOAD处于低电平,同时切换RESET开关,ADuC7122将进入引导模式,而不是正常的用户模式。在引导模式下,通过USB接口并利用I2CWSD工具可以对内部闪存重新编程。
- BUF_VREF: 带隙基准电压源也通过缓冲连接到BUF_VREF1和BUF_VREF2引脚,用作系统中其它电路的基准电压源。这些引脚需连接至少0.1 μF的电容,以降低噪声。
本电路所用的热敏电阻为4.7 kΩ电阻,型号为NCP18XM472。它采用0603表贴封装。25°C时,图2电路所用热敏电阻具有以下特性:β = 3500(β参数描述电阻与温度的关系),电阻(R25) = 4.7 kΩ。
ADuC7122的USB接口通过FT232R UART转USB实现,它将USB信号直接转换为UART协议。
除图1所示的去耦外,USB电缆本身还应采用铁氧体磁珠来增强EMI/RFI保护功能。本电路所用铁氧体磁珠为Taiyo Yuden BK2125HS102-T,它在100 MHz时的阻抗为1000 Ω。
本电路必须构建在具有较大面积接地层的多层电路板上。为实现最佳性能,必须采用适当的布局、接地和去耦技术(请参考教程MT-031, 教程MT-101及ADuC7122 评估板布局)。
图2中的输入热敏电阻电路旨在产生0°C至90°C的精确温度测量结果。请注意,此系统不含温度校正。该电路包含一个简单的热敏电阻电路,其不具备电路线性化功能。如果采用线性化技术,它可以在更广的温度范围内工作,不过这会降低传感器的分辨率。
图2所示电路采用分压器配置,因而可以将ADC结果D转换为RTH(热敏电阻)的电阻测量结果,计算公式如下:
计算出热敏电阻的电阻值之后,就可以利用Steinhart-Hart方程确定传感器的当前温度。
ADuC7122使用以下公式确定传感器温度:
其中:
T2 = 未知温度
T1 = 298K
β = 298K或25°C时热敏电阻的β参数,β = 3500
R25 = 298K或25°C时热敏电阻的电阻值,R25 = 4.7 kΩ
RTH = 通过以上公式计算出的未知温度时热敏电阻的电阻值
图3显示ADuC7122对图2所示热敏电阻传感器的响应与温度的关系。
代码说明
用于测试本电路的源代码和“超级终端”配置文件可从以下网址下载(zip压缩文件):www.analog.com/CN0153_Source_Code。
UART配置为波特率9600、8数据位、无极性、无流量控制。如果本电路直接与PC相连,则可以使用“超级终端”(HyperTerminal)等通信端口查看程序来查看该程序发送给UART的结果(请参考图4)。源代码附有注释说明,方便了解、使用。可利用Keil μVision 3应用程序对代码进行编译和测试。
讨论
样片申请及购买
样片
产品 |
描述 |
可提供样片的 |
aduc7120 | 精密模拟微控制器,12位模拟输入/输出,ARM7TDMI MCU | |
ADUC7022 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU | ADUC7022BCPZ32 ADUC7022BCPZ62 |
ADP3333 | 高精度,超低IQ、300 mA、ANYCAP®低压差稳压器 | ADP3333ARMZ-1.8RL7 ADP3333ARMZ-2.5-R7 ADP3333ARMZ-3-R7 ADP3333ARMZ-3.15R7 ADP3333ARMZ-3.3-R7 ADP3333ARMZ-5-R7 |
ADUC7021 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU | ADUC7021BCPZ32 ADUC7021BCPZ62 ADUC7021BCPZ62I |
ADUC7020 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU内核 | ADUC7020BCPZ62 ADUC7020BCPZ62I |
ADUC7019 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU内核 | ADUC7019BCPZ62I |
ADUC7122 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU | ADUC7122BBCZ |
ADUC7025 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU | ADUC7025BCPZ62 ADUC7025BSTZ62 |
ADUC7028 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU | ADUC7028BBCZ62 |
ADUC7023 | 精密模拟微控制器,12位模拟I/O,具有增强型IRQ处理程序的ARM7TDMI MCU | ADUC7023BCP6Z62I ADUC7023BCPZ62I |
ADUC7029 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI MCU | ADUC7029BBCZ62 ADUC7029BBCZ62I |
ADUC7121 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI MCU | ADUC7121BBCZ |
ADUC7024 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU | ADUC7024BCPZ62 ADUC7024BCPZ62I ADUC7024BSTZ62 |
ADUC7027 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU | ADUC7027BSTZ62 ADUC7027BSTZ62I |
ADUC7026 | 精密模拟微控制器,12位模拟I/O,ARM7TDMI® MCU | ADUC7026BSTZ62 ADUC7026BSTZ62I |