1、可自动切换量程的数字电压表可自动切换量程的数字电压表一、实验任务 制作可调量程的电压表,通过继电器调节电压表的量程,使电压在0V200mV,200mV2V之间转换。二、各个芯片的资料 1、 ADC0832 ADC0832 是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片。该芯片具有体积小,兼容性,性价比高的优点。 ADC0832 具有以下参数: 8位分辨率; 双通道A/D转换; 输入输出电平与TTL/CMOS相兼容; 5V电源供电时输入电压在05V之间; 工作频率为250KHZ,转换时间为32S; 一般功耗仅为15mW; 8P、14PDIP(双列直插)、PICC 多种封装; 商
2、用级芯片温宽为0C to +70C,工业级芯片温宽为40C to +85C;芯片接口说明: CS_ 片选使能,低电平芯片使能。 CH0 模拟输入通道0,或作为IN+/-使用。 CH1 模拟输入通道1,或作为IN+/-使用。 GND 芯片参考0 电位(地)。 DI 数据信号输入,选择通道控制。 DO 数据信号输出,转换数据输出。 CLK 芯片时钟输入。 Vcc/REF 电源输入及参考电压输入(复用)。 单片机对ADC0832 的控制原理:正常情况下ADC0832 与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电
3、路设计时可以将DO和DI 并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK 输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能,当此2 位数据为“1”、“0”时,只对CH0 进行单通道转换。当2位数据为“1”、“1”时,只对CH1进行单通道转换。当2
4、 位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。当2 位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1 作为正输入端IN+进行输入。到第3 个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数据。直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATD0。随后输出8位数据,到第19 个脉冲时数据输出完成,也标
5、志着一次A/D转换的结束。最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了。作为单通道模拟信号输入时ADC0832的输入电压是05V且8位分辨率时的电压精度为19.53mV。如果作为由IN+与IN-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。但值得注意的是,在进行IN+与IN-的输入时,如果IN-的电压大于IN+的电压则转换后的数据结果始终为00H。 2、74HC573 74HC573和74LS373原理一样,8数据锁存器。主要用于数码管、按键等等的控制 OE:output_enable,输出使能; LE:latch_enable,数据锁存使能,lat
6、ch是锁存的意思; Dn:第n路输入数据; On:第n路输出数据;(1)真值表 Dn LE OE On H H L H L H L L X L L Qo X X H Z 第四行:当OE1是,无论Dn、LE为何,输出端为高阻态; 第三行:当OE0、LE0时,输出端保持不变; 第二行第一行:当OE0、LE1时,输出端数据等于输入端数据; 在实际应用的时: a OE0; b 先将数据从单片机的口线上输出到Dn; c 再将LE从0-1-0 d 这时,你所需要输出的数据就锁存在On上了,输入的数据在变化也影响不到输 (2)高阻态 输出既不是高电平,也不是低电平,而是高阻抗的状态;在这种状态下,可以多个
7、芯片并联输出;但是,这些芯片中只能有一个处于非高阻态状态,否则会将芯片烧毁; (3)数据锁存 当输入的数据消失时,在芯片的输出端,数据仍然保持; (4)数据缓冲 加强驱动能力。3、74HC245 总线驱动器,典型的TTL型三态缓冲门电路。由于单片机等CPU的数据地址控制总线端口都有一定的负载能力,如果负载超过其负载能力,一般应加驱动器。另外,也可以使用74HC244等其他电路,74HC244比74HC245多了锁存器。第1脚DIR,为输入输出端口转换用,DIR=“1”高电平时信号由“A”端输入“B”端输出,DIR=“0”低电平时信号由“B”端输入“A”端输出。 第29脚“A”信号输入输出端,A
8、1=B1 A8=B8,A1与B1是一组,如果DIR=“1”OE=“0”则A1输入B1输出,其它类同。如果DIR=“0”OE=“0”则B1输入A1输出,其它类同。 第1118脚“B”信号输入输出端,功能与“A”端一样,不再描述。 第19脚OE,使能端,若该脚为“1”A/B端的信号将不导通,只有为“0”时A/B端才被启用,该脚也就是起到开关的作用。第10脚GND,电源地。第20脚VCC,电源正极三、硬件电路图四、硬件电路分析 硬件电路大体可以分为四个模块:量程选择模块、AD转换模块、数码显示模块、单片机及其外围电路。量程选择模块:由可调输入电源、继电器、运算放大器和限压电路组成。可调电源由负载5V
9、电压的滑动变阻器构成,调节触头即可改变输入运放“+”端的电压。继电器的作用就是通过开关的变换以改变接入运放“-”端和输出端的电阻,及通常所称的“Rf” 档位的选择也是以此为硬件基础的。继电器的电磁铁一端接+5V电源,另一端则接在NPN型三极管的集电极。三极管的基极则与单片机的P1.2.相连,其间有一个5K的电阻,是三极管工作在截止区或饱和区,避免工作在放大曲。借助软件设计,改变P1.2的电平即可控制继电器的工作状态,进而改变接入电压的放大倍数,从而达到改变档位的要求。 AD转换模块:钳位保护电路是为了防止电压超过ADC0832的正常转换电压而设计的。ADC0832进行AD转换,其具体的工作原理
10、和控制方法在元器件的介绍中将详细叙述。 数码显示模块:由三个八段数码管、两片数码管驱动芯片74HC245和一片锁存和缓冲芯片74HC573以及单片机P0口(字形)、P1.5、P1.6、P1.7(字位)构成。 单片机及外围电路:包括:单片机,6MHZ晶振,复位电路,电源和一些为使单片机正常工作的相应连接。五、工作原理调节滑动变阻器给运放正端输入一电压(2V),该电压通过运放放大后接入ADC0832,ADC0832在软件设定下对放大后的电压进行AD转换,得到对应的二进制码,再借助于软件判断,对该电压进行合适的档位选择(00.2V选用25倍档位;02V选用2.5倍档位)。选用合适的档位得到正确的二进制码后,进行BCD转换,然后通过数码显示电路读出被测电压的值。六、程序流程图程序包括变量声明部分、主程序、各功能处理子程序(AD转换子程序、档位选择子程序、BCD码转换子程序、数码管显示子程序)1.主程序 2.各功能处理子程序 AD转换子程序(见下页): 档位选择子程序(见下页):BCD码转换子程序:显示子程序 七、仿真结果截图
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1