![常用控制电路设计及应用(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/195/39132195/b_39132195.jpg)
项目4 数字电位器在AD转换中的应用电路
设计任务
目前,数字电位器以其调节准确、方便,性能稳定、无噪声,具有可编程能力等特点,在电子工程技术中得到了广泛应用。本设计将用数字电位器取代传统的机械电位器,使输入的模拟量更加精确可调,AD转换后输出的数字量更准确。
总体思路
数字电位器是用数字信号控制电位器滑动端位置的新型器件。本设计选用MCP4131-502芯片作为串行信号控制的数字电位器。本设计通过数字电位器提供0~5V的模拟电压,经AD转换变为数字量,然后通过单片机数据处理显示在数码管上。本设计的核心是通过数字电位器的应用使输入的模拟量更加精确。
系统组成
数字电位器在AD转换中的应用电路主要分为以下4个模块。
模拟电压输入电路:提供0~5V的模拟电压,通过单片机控制数字电位器,精确控制输入的模拟电压。
AD转换电路:通过AD转换,将模拟电压转换为数字量,便于单片机处理。
单片机电路:通过单片机采样,向数字电位器发送控制信号,驱动数码管显示。
数码管显示电路:将采样后的数字量显示在数码管上。
数字电位器在AD转换中的应用电路系统框图如图4-1所示。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_5.jpg?sign=1739558971-UuDwrTmxM9I0ztfpuJtQWPUhBh92DDAl-0-5443c5633e3ba0823f97178db232f5b9)
图4-1 数字电位器在AD转换中的应用电路系统框图
模块详解
数字电位器在AD转换中的应用电路如图4-2所示。下面分别对数字电位器在AD转换中的应用电路的各模块进行详细介绍。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_6.jpg?sign=1739558971-yhGWzRVMwIBwrLhnyU629puwHR5yskHw-0-6b17734ed5abe95d1b12b8b3089bc949)
图4-2 数字电位器在AD转换中的应用电路
1.模拟电压输入电路
模拟电压输入电路如图4-3所示,其中MCP4131-502芯片的引脚功能如下。
1引脚为片选信号端,低电平有效; 5引脚为电位器0A端P0A;
2引脚为时钟信号端SCK; 6引脚为电位器抽头端P0W;
3引脚为串行数据输入端SDI/SDO; 7引脚为电位器0B端P0B;
4引脚为接地端VSS(图4-3中未画出); 8引脚为电源端VCC(图4-3中未画出)。
本设计通过单片机控制数字电位器,从而输入0~5V模拟电压到ADC0809芯片。
2.AD转换电路
AD转换电路如图4-4所示。本设计采集ADC0809芯片的IN0引脚上的模拟量,故将MCP4131-502芯片的P0W引脚和ADC0809芯片的IN0引脚连接。ADC0809芯片的模拟通道地址选择信号端ADDA、ADDB、ADDC引脚都接地,这样地址信号000选中的转换通道为IN0引脚。ADC0809芯片的地址锁存允许信号端ALE引脚为高电平有效,故接VCC引脚,则ADDA、ADDB、ADDC 3引脚上的3位地址被锁存。ADC0809芯片的启动信号端START引脚为正脉冲有效,和单片机的P3.3引脚连接。当单片机的P3.3引脚为高电平时,则启动AD转换。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_8.jpg?sign=1739558971-gMzqsbvYxCBWDEDaafo1nJrc2f0rSm4Z-0-5f8a6f42060ae4ae8196aadba033e671)
图4-3 模拟电压输入电路
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_9.jpg?sign=1739558971-ziGFnFiiXHlC3RcwBnnc6d2TuEFFa6AB-0-fd09c9dab0d288ce02315c7eb8e20262)
图4-4 AD转换电路
本电路设计为单极电压输入,VREF(+)引脚接+5V,用于提供片内DC电阻网络的基准电压。CLOCK引脚与1MHz有源晶振的输出引脚相连。转换结束信号端EOC引脚在AD转换过程中为低电平,AD转换结束时为高电平,与单片机的P3.4引脚相连。当AD转换结束时,单片机读取AD转换结果。输出允许信号端OE引脚接单片机的P3.2引脚,且为高电平有效。当单片机将P3.2引脚置高电平时,才可以从三态输出锁存器取走AD转换完的数据。ADC0809芯片的数字量输出端OUT1~OUT8引脚接单片机的P1.7~P1.0引脚。
3.单片机电路
单片机电路主要进行内部程序处理,实现采样、控制数字电位器和驱动数码管显示等功能。单片机电路如图4-5所示。其中,C1、C2及X1构成晶振电路,其作用是为系统提供时钟信号。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_10.jpg?sign=1739558971-cW2yO6LZ2ur5ttD1c3NhSGqUE6QjkkDq-0-86431cae4c18e62c8038698279095d41)
图4-5 单片机电路
1)控制数字电位器功能
在本设计中,通过单片机控制数字电位器。单片机的P1.0、P1.1和P1.2引脚分别接数字电位器的SDI/SDO、SCK和引脚。当
引脚处于低电平时,单片机通过SDI/SDO串行移位输入16位命令字,在SCK引脚信号的每个上升沿时刻输入1位命令字。如图4-6所示,KEY1和KEY2端接单片机P3.4和P3.5中断引脚。通过按键S1和S2调节数字电位器,实现输入的模拟电压增/减。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_13.jpg?sign=1739558971-PHmJYfsiPAfaaXvvfQnW37Xwcn5zA5h6-0-cce05206f8699d5d89cc86ec7135cbfd)
图4-6 按键控制电位器
2)采样功能
单片机通过对ADC0809芯片的控制,实现数据采样功能。具体原理在AD转换电路中已详述。
3)驱动数码管显示功能
单片机通过与数码管的连接,驱动数码管显示。具体原理将在数码管显示电路中详述。
4.数码管显示电路
本设计采用4位共阴数码管,如图4-7所示。根据图4-5可知,P2.7~P2.0引脚驱动数码管8位段选信号,P1.4~P1.7引脚驱动4位位选信号。整个数码管显示采用多维数码管动态扫描显示的方法。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_14.jpg?sign=1739558971-zsATjQgs9BcWY3HA2FNRxkAJFBnsooOn-0-919c8f7ff25ef597259163de8e5b362a)
图4-7 数码管显示电路
以5V输入模拟电压为例,AD0809芯片的输出数据为
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_15.jpg?sign=1739558971-kgYq8Oi1e6G9q8Aa6Kw4suHbiXKGrYpd-0-0e382d9976789ab7cb0a82c03e823a86)
式中,Vin为输入模拟电压;Vout为输出数据。当输入模拟电压为5V时,输出数据为255V,将255×2=510V,510×98.0%=499.8V,然后将其取整后小数点左移两位,即显示为“4.99”。
总体电路仿真
在Proteus中,对上述的总体电路进行仿真,改变数字电位器的电阻值,观测显示结果的变化,如图4-8~图4-11所示。
1.输入模拟电压为0V
由图4-8的仿真结果可以看出,在输入模拟电压为0V时,数码管显示为“000”。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_16.jpg?sign=1739558971-V6Dqf4KVD2ViQMrbuTI8cKpXtprbcr5g-0-2488f75964287c7f52edbbebea948b83)
图4-8 总体电路仿真1
2.输入模拟电压为1V
由图4-9的仿真结果可以看出,在输入模拟电压为1V时,数码管显示为“055”。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_17.jpg?sign=1739558971-zYLKP7pCar630o17WFDoO46xxhhcwJGQ-0-aa093e195b4e6fec774796f0db3eb69c)
图4-9 总体电路仿真2
3.输入模拟电压为2V
由图4-10的仿真结果可以看出,在输入模拟电压为2V时,数码管显示为“105”。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_18.jpg?sign=1739558971-VZQzE1FY0GbOdaIrcvKZyoG1Nu02EnCT-0-c8a94adc834210abf0385888cac10152)
图4-10 总体电路仿真3
4.输入模拟电压为4V
由图4-11的仿真结果可以看出,在输入模拟电压为4V时,数码管显示为“206”。
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_19.jpg?sign=1739558971-pjBT6TpHuLEscD8XmY9u3yi2gHqp4RDJ-0-8bba53a74c33968a0293e7adf01165c6)
图4-11 总体电路仿真4
由以上的仿真结果可知,本设计的电路基本可以完成设计要求。
程序设计
在本次设计中所用到的单片机程序如下:
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_20.jpg?sign=1739558971-A6VQBnluhTWC4W8ZnbdS65bt1NNNe0gS-0-790d88b4b01a4965431b25591a3abfb2)
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_21.jpg?sign=1739558971-eRYboRipLk1bqNHaQm4AqZehbZLPQPuS-0-8f3ae7b52789c9e78cedaf5fec84c1f8)
电路板布线图(见图4-12)
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_22.jpg?sign=1739558971-8f4leD4aQs8EZUzhMAwzWhr75Iy0jWkE-0-108fb3a4ea3a66a8d86938cdea17d05e)
图4-12 电路板布线图
实物照片(见图4-13)
![img](https://epubservercos.yuewen.com/25271E/20516474301068106/epubprivate/OEBPS/Images/txt004_23.jpg?sign=1739558971-u17wLRNfTJbbyNHt5XzEXgHZSakySA4z-0-d1923834dac3070b5a82c38514f79b2d)
图4-13 实物照片
思考与练习
(1)为了使数码管显示亮度提高,在原设计上应怎样处理?
答:在数码管位选端接入上拉电阻。
(2)多位数码管动态显示的原理是什么?
答:各个数码管的段码都是P0接口的输出值,即各个数码管在每一时刻输入的段码是一样的。为了使其显示不同的数字,可采用动态显示的方法,即先让最低位数码管被选通显示,经过一段延时,再让次低位数码管被选通显示,再延时,依次类推。由于视觉暂留,只要延时的时间足够短,就能使各个数码管的显示看起来稳定、清楚。
特别提醒
(1)在设计印制电路板时,晶体和电容应尽可能安装在单片机附近,以减少寄生电容的影响,保证振荡器稳定和可靠的工作。为了提高稳定性,应采用NPO电容。
(2)在Protues软件中,没有ADC0809芯片的仿真模型,所以使用了ADC0808芯片的仿真模型来代替它。在实际电路制作中,最常用的是ADC0809芯片。