当前位置:首页 > 单片机 > 单片机
[导读]一般来说,内部带A/D转换器的单片机价格都比较昂贵,而且一般只有8到10位的分辨率,这在高分辨率要求的场合显然不适用;而普通的单片机则根本没有 A/D转换器。随着现代电子技术的发展,出现了一些体积小、内含模拟

一般来说,内部带A/D转换器的单片机价格都比较昂贵,而且一般只有8到10位的分辨率,这在高分辨率要求的场合显然不适用;而普通的单片机则根本没有 A/D转换器。随着现代电子技术的发展,出现了一些体积小、内含模拟比较器的单片机,如ATMAL的AT89C2051、ZILOG的Z86E04、 MICROCHIP的PIC16C620等,这些单片机在使用时连接比较器的端口一般只作普通I/O使用,而对其内置的模拟比较器的应用却很少。下面以 AT89C2051为例,谈谈利用单片机内置模拟比较器来构成A/D转换器的新方法。

1 硬件转换电路

AT89C2051 是MCS51单片机系列中的一种,它虽然只有20个引脚,却集成了51系列单片机的标准内核,其中包括2k程序存储器、128字节数据存储器、2个16位定时计数器、一个标准全双工UART和一个精确的模拟比较器,而这个模拟比较器是以前产品所没有的。图1是利用AT89C2051的模拟比较器来构成双积分式A/D转换器的电路原理图。其中:内置模拟比较器的结构如图中虚线包围部分所示,比较器的正、反相输入端分别与P1.0、P1.1连接,这是两个漏极开路无上拉电阻的输出和输入端口,当向P1.0、P1.1写“1”时,M1、M2截止,相当于P1.0、P1.1对数字部分悬空,这时比较器的输入不受单片机端口输出的影响;由于P1.0、P1.1具有很强的灌电流能力,当写入“0”时,P1.0、P1.1能吸入20mA的灌电流,而且M1、M2的饱和电压很低,利用这一特点可为积分电容彻底放电。比较器输出端在单片机内部与P3.6连接,读P3.6就可得到比较器的输出结果。因此,利用 AT89C2051这个内置的比较器,再加上少量的外围器件就可组成双积分式A/D转换器。图1中,I0为恒流源,其电流约为0.5~2mA,Cf是积分电容,Cf与I0的选择取决于A/D转换的位数,Vref为参考电压,一般取模拟输入电压最大值的一半,U2是一个模拟开关,其中通道0接参考电压,通道1至7接模拟输入,即该A/D转换器有7个输入通道。

2 转换过程

当恒流源对电容器积分时,积分电容上的电压与时间成线性比例关系,这样利用单片机内部的定时计数器就可分别测量参考电压及模拟输入电压的积分时间,再通过 CPU的运算来得到转换的结果。单片机的端口P1.2至P1.4可用来输出模拟开关通道选择地址,定时计数器T0可设定为方式1,16 位定时状态,用来测定积分时间。该转换过程可分5个步骤:

第一步为积分电容的放电,主要是向P1.1写“0”,利用其吸入灌电流大的特点为Cf放电,同时定时计数器T0清零。

第二步是参考电压积分,即模拟开关选择通道0,相当于Vref接至比较器的正输入端,并向P1.1写“1”,同时启动定时计数器,这样,I0开始对Cf积分;程序循环读P3.6状态,以检测比较器的输出结果,当积分电容上的积分电压稍大于(由于比较器有极高的增益,故可近似地看作等于)参考电压时,比较器的输出反转,P3.6发生由高至低的跳变。程序检测到这个跳变后,停止定时计数器,保存此时的定时计数器结果Tref,此时可由恒流源对电容积分的关系式得出:Vref=(I0 Tref)/Cf

第三步为积分电容放电,也就是重复第一步对Cf放电和定时计数器T0清零。

第四步为输入电压积分,此时模拟开关可选择通道1~7中的一个,相当于模拟输入电压Vx接至比较器的正输入端,重复第二步对输入电压积分,则可得到积分时间Tx,因此,Vx=(I0Tx)/Cf

以上4步积分电容Cf上的积分电压波形如图2所示。

第五步是通过CPU的运算来求得A/D转换的结果,由第二步结果除以第四步结果,可以得到:
    Vref/Vx=Tref/Tx

变换后得:
    Vx=(VrefTx)/Tref

上式即A/D转换的结果。

从上式可以看出:A/D转换结果Vx只与Vref、Tx、Tref有关而与I0、Cf无关。这一点非常重要。因为它意味着在转换过程中抑制了恒流源和积分电容温漂所造成的误差,从而保证了该A/D转换器工作的稳定性,这也正是积分式A/D转换器的优点。理论上,该A/D转换器的精度只取决于参考电压的稳定性和单片机定时计数器的精确度,而这两点都相对比较容易保证。当然,这是指在恒流源为理想恒流源的情况,实际上恒流源的特性决定了该A/D转换器的非线性误差,因此,在要求较高的场合,应选用线性好的恒流源集成电路,如LM334等,而在要求不高的情况下则可用图3所示的由分立元件组成的恒流源电路来实现A/D转换。这时积分电容可选择温度系数较小的涤纶电容等。

需要注意的是,由于单片机采用端口查询的方式来检测比较器的输出结果,MCS51系列单片机端口查询命令需要占用2个机器周期,而定时计数器则需要在每个机器周期上加1。因此,在使用时有可能在比较器的输出反转时,程序不能立刻停止定时计数器,而是要等到下一个机器周期运行到CLRTR0语句时才停止。这样,定时计数器的值总为偶数,这一问题如果不在程序中进行处理就会造成误差。解决的方法是增加I0、Cf的积分时间,即把积分时间加大一倍,再把定时计数器的读数即Tref和Tx除以2,这样就能把定时计数器多加了1的误差去掉而得到正确的结果。也就是说,如果要得到12位的分辨率,那么就需要有13位的定时计数器的读数。这种算法虽然牺牲了定时计数器的1位分辨率,加长了转换周期,但是确保了测量结果的准确性。对于有模拟比较器输出跳变中断的单片机如Z86E08等,上述过程处理起来会更简单,可用程序在比较器输出反转时来设定中断,并在中断子程序的开始时停止定时计数器,其读数减去从比较器中断到执行中断子程序之间的机器周期数即为实际积分时间。

由于AT89C2051的定时计数器为16位,所以该A/D转换器的分辨率实际上可以达到15位。调整I0和Cf的值就能改变A/D转换器的分辨率,I0和Cf的取值与分辨率和单片机时钟频率之间的关系,应满足下式:

12×2N+1/(f0 Vmax)≤Cf/IO≤12×216/(f0Vmax)

式中Vmax 为最大模拟输入电压,N为分辨率位数,f0为单片机的时钟频率。根据上式,在设计时应保证足够长的积分时间以保证分辩率的要求。同时还应保证积分时间不能超过单片机的最大定时值,以免引起定时计数器的溢出。

3 软件编程

整个工作过程的主要程序如下(该程序采用MCS51汇编语言编写)。除法子程序和20μs延时子程序分别为:

(1)初始化主程序:


4 结束语

上述所述,采用内部带模拟比较器的单片机加上少量的外国元件,并在程序上稍作处理,就能够构成一种新的A/D转换器,该方法可节约因扩展A/D而占用的大量I/O,而且这种A/D转换器能达到很高的分辩率和精度,并且有抗干扰能力强、分辩率可由程序调整的特点,从而增加了单片机的应用范围和使用灵活性,同时就应用系统的设计也显得简洁和不效。

参考文献
1.AT89 系列单片机。爱迪尔电子有限公司
2.Discrete Z8 Microcontrollers Databook.Zilong,Inc

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

8位单片机在嵌入式设计领域已经成为半个多世纪以来的主流选择。尽管嵌入式系统市场日益复杂,8位单片机依然不断发展,积极应对新的挑战和系统需求。如今,Microchip推出的8位PIC®和AVR®单片机系列,配备了先进的独立...

关键字: 单片机 嵌入式 CPU

在嵌入式系统开发中,程序烧录是连接软件设计与硬件实现的关键环节。当前主流的单片机烧录技术已形成ICP(在电路编程)、ISP(在系统编程)、IAP(在应用编程)三大技术体系,分别对应开发调试、量产烧录、远程升级等不同场景。...

关键字: 单片机 ISP ICP IAP 嵌入式系统开发

在嵌入式系统开发中,看门狗(Watchdog Timer, WDT)是保障系统可靠性的核心组件,其初始化时机的选择直接影响系统抗干扰能力和稳定性。本文从硬件架构、软件流程、安全规范三个维度,系统分析看门狗初始化的最佳实践...

关键字: 单片机 看门狗 嵌入式系统

本文中,小编将对单片机予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: 单片机 开发板 Keil

稳压器只能起到稳定直流电压的作用,它无法改变交流电压的大小和方向,也就无法替代变压器的作用。而变压器虽然自身并没有稳压功能,但是却能够改变电压大小和方向,使得电力设备能够正常传输和分配。

关键字: 稳压器 电压

随着单片机系统越来越广泛地应用于消费类电子、医疗、工业自动化、智能化仪器仪表、航空航天等各领域,单片机系统面临着电磁干扰(EMI)日益严重的威胁。电磁兼容性(EMC)包含系统的发射和敏感度两方面的问题。

关键字: 单片机 电磁兼容

自举电路(Bootstrap Circuit)是一种在电子电路中广泛应用的升压技术,其核心作用是通过电路自身的工作状态提升某个节点的电压,而无需增加外部电源电压。

关键字: 自举电路 电压

电路保护的意义在于保护电子电路中的元件免受过电压、过电流、浪涌和电磁干扰等有害因素的影响,从而防止设备损坏,确保电子设备的安全和稳定运行‌‌。

关键字: 电路保护 电压

以下内容中,小编将对单片机的相关内容进行着重介绍和阐述,希望本文能帮您增进对单片机的了解,和小编一起来看看吧。

关键字: 单片机 复位电路

在这篇文章中,小编将为大家带来单片机的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 单片机 异常复位
关闭