avr400 低成本ad转换器

avr400 低成本ad转换器

ID:13839937

大小:69.00 KB

页数:7页

时间:2018-07-24

avr400 低成本ad转换器_第1页
avr400 低成本ad转换器_第2页
avr400 低成本ad转换器_第3页
avr400 低成本ad转换器_第4页
avr400 低成本ad转换器_第5页
资源描述:

《avr400 低成本ad转换器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、834a484c3a9eb2982756c0edf73595ff.doc翻译:吕益光AVR应用笔记AVR400:低成本A/D转换器翻译:吕益光2006年5月9日lvyiguang@163.com修订:邵子扬2006年5月10日shaoziyang@gmail.com1.特性l中断驱动l代码大小:23字长l外围元件少l分辨率:6位l测量范围:0~2Vl能够在任何含8位计时/计数和模拟比较器的AVR设备上运行2.简介本应用笔记关注的目标,是需要模数转换器件场合下的低成本和低空间占用。它描述了怎样仅仅使用两个外围组件:一个电阻和一个电容,构成一个简易的

2、模数转换单元。这一设计使得廉价而紧凑的模数转换电路成为可能。3.工作原理几乎所有的AVR微控制器都具有一个模拟比较器,这就使得它很容易构成一个模数转换器。被测信号连接至反向输入端,参考信号连接至同向输入端。参考信号通常有一个RC滤波电路。当电容被充电的时候,加在它两端的电压将遵循指数规律变化。如果被测电压被限制在0.4*Vcc以内的话,那么指数曲线将非常接近于一条直线。应用信号的电压UIN,是通过测量电容电压升高至应用电压以上所需要的时间得出的。通过端口B的一个针脚来控制电容的充放电,这样的话,仅仅使用三个引脚就完成了这一功能。示意图如图1。第7

3、页共7页834a484c3a9eb2982756c0edf73595ff.doc翻译:吕益光图1电路图R/C时间常数必须满足以下公式:512/f=-RCln(1-0.4),推导得到RC=1002/f一些典型频率下的一些组件参数如表1所示。如果时间常数与此不同,将导致一些结果的错误。因此,R/C网络中,使用高精度的器件是必要的。电容电压曲线如图2,直线也被绘制在图中,与之相比较。因为所提供的电压在此是作为参考电压的,所以在转换过程中它必须稳定。表1:R/C网络组件典型参数XTAL(MHz)1246810121416R(KΩ)100333030271

4、005647160C(nF)10158.25.64.711.51.50.39第7页共7页834a484c3a9eb2982756c0edf73595ff.doc翻译:吕益光图2A/D线性转换为确保能够正常运行,电容放电时间必须达到至少200us。如果电容没有充分放电,较低的电压将不能测量。如果输入电压大于0.4*Vcc,转换将返回最大值。在转换开始之前,偏移数值被装载到定时/计数寄存器。在512(64*8)个周期之后,计数器将给出溢出中断。这就是电容两端的电压被充到0.4*Vcc所用的时间。如果电压在运行范围之内,一个模拟比较器中断将产生。偏移量

5、被从标准值中减掉。4.执行ADC(模数转换器)使用定时/计数(寄存器)和模拟比较器中断。转换过程中是不占用MCU(单片机)资源的。第7页共7页834a484c3a9eb2982756c0edf73595ff.doc翻译:吕益光5.“AD-convert”子程序――-模数转换器初始化这是一个用来初始化模数转换器的子程序。在模数转换器被使用以前,这一步骤是必需的。在调用子程序之前,要先使能比较器和定时中断,相应的控制针脚应设置成输出。然后调用使能全局中断的“SEI”指令,来使能A/D转换器。转换器的使能禁止是通过调用“CLI”(命令)来实现的。表2:

6、“convert-init”子程序性能表参数值代码大小6个字长执行周期10,包括RET(复位)指令在内寄存器使用l低位寄存器:没有使用l高位寄存器:一个l指针:没有使用表3:“convert-init”寄存器使用寄存器输入内部输出R16“result”-擦除寄存器设置比较器和中断定时器中断使能设置控制针脚输出A/D初始化完成图3“convert-init”流程图第7页共7页834a484c3a9eb2982756c0edf73595ff.doc翻译:吕益光6.“A/D_convert”子程序――开始A/D转换使用这个程序来开始A/D转换。它将计数

7、器预设置为256~64,并且开始计数至频率XTAL/8。转换完成标志位(状态寄存器中的T-flag)被清零,电容开始被充电。表4:“AD_convert”子程序性能表参数值代码大小7个字长执行周期10(包括复位)寄存器使用l低位寄存器:没有使用l高位寄存器:1个l指针:没有使用l状态标志位:1个表5:“AD_convert”寄存器使用寄存器输入内部输出R16“result”-擦除寄存器SREGT-flag-用来指示转换进程的标志位设置定时器偏移量清除全部转换标志位开始转换,时钟/8开始充电转换起点完成图4模数转换器转换流程图第7页共7页834a4

8、84c3a9eb2982756c0edf73595ff.doc翻译:吕益光7.“ANA_COMP”-中断处理程序该程序在转换完成后执行。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。