3 主要硬件电路及器件介绍
3.1 80C51单片机
图3:8051引脚图
80C51单片机按功能划分,由8个部件组成:微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、四个I/O口(P0口、P1口、P2口、P3口)、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)的集中控制方式[1]。
各功能部件的介绍:
(1) 数据存储器(RAM):片内为128个字节单元,片外最多可扩展至64K字节。用以存放数据,我们称之为片内数据存储器。
(2) 程序存储器(ROM/EPROM):片内ROM为4K,片外最多可扩展至64K字节。
(3) 中断系统:具有5级中断的中断系统,2级中断优先权。
(4) 定时器/计数器:2个16位的定时器/计数器,具有四种工作方式。
(5) 串行口:1个全双工的串行通信接口,具有四种工作方式。
(6) 特殊功能寄存器(SFR)共有21个,每个寄存器占一个存储单元。
(7) 微处理器:为8位CPU,内部具有一个8位CPU(位处理器),不仅可处理字节数据,还可以进行位变量的处理。
另外还有四个8位双向并行的输入/输出(I/O)端口,每个端口都有八条引线和一个输出驱动器和一个输入缓冲器。这四个端口的功能不完全相同。P0口既可作一般I/O端口使用,又可作地址/数据总线使用;P1口是一个准双向并行口,作通用并行I/O口使用;P2口除了可作为通用I/O使用外,还可在CPU访问外部存储器时作高八位地址线使用;P3口是一个多功能口除具有准双向I/O功能外,还具有第二功能。
控制引脚介绍:
(1) 电源:单片机使用的是5V电源,其中40引脚接电源正级,20引脚接地。
(2) 时钟引脚XTAL1、XTAL2时钟引脚外接晶体与片内反相放大器构成了振荡器,产生片内CPU时钟控制信号。此引脚也可外接晶体振荡器。
(3) RST:当时钟电路开始工作时,在此引脚上出现24个时钟周期以上的高电平能够使单片机复位。另外我们在此引脚与VCC之间连接一个24兆欧的下拉电阻,在外接电路之间连接二个36微法的电容,可以保证有效的复位。在单片机正常工作时,此引脚应为≤0.5V低电平。
(4) ALE:当访问外部程序存储器时ALE(地址锁存允许)输出脉冲用于16位地址中的低8位的锁存信号,以便P0口实现地址/数据复用。当不去访问外部锁存器时,ALE端将输出一个1/6的时钟频率正脉冲信号输出,此频率约为时钟振荡器的1/6。但是每当访问外部数据存储器时,在两个机器周期中ALE只出现一次,即ALE会跳过一个脉冲。因此,严格来说,用户不能用ALE做时钟源或定时。ALE端可以驱动8个TTL负载
(5) /PSEN(29脚):此引脚是单片机访问片外ROM存储器的读选通信号。在执行访问片外ROM的MOVC指令期间,每个机器周期PSEN上产生一个负脉冲,用于对于片外ROM数据存储器选通,这两次有效的/PSEN信号不出现。其他情况下,/PSEN线均为高电平封锁状态。
(6) /EA/VPP(31脚):当EA端保持高电平时并且程序地址小于4KB时,读取内部存储器指令,但在PC值超过4KB程序地址时则执行外部存储器内的程序;当/EA保持低电平时,不管地址大小则只访问外部程序存储器,一律读取外部程序存储器指令[2]。
3.2 DAC0832
图4:DAC0832引脚图
DAC0832是8分辨率的D/A转换芯片,集成电路内有两级输入寄存器。由8位输入锁存器、8位DAC 寄存器、8 位D/A 转换器及转换控制电路四部分构成。8位输入锁存器用于存放主机送来的数字量,使输入数字得到缓冲和锁存,并加以控制。DAC0832输出的是电流,一般要求输出是电压,所以还必须经过一个外接的运算放大器转换成电压[3]。DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。
DAC0832的引脚功能如下:
(1) D0~D7:数字信号输入端。
(2) ILE:输入寄存器允许,高电平有效。
(3) CS:片选信号,低电平有效。
(4) WR1:写信号1,低电平有效。
(5) XFER:传送控制信号,低电平有效。
(6) WR2:写信号2,低电平有效。
(7) IOUT1、IOUT2:DAC电流输出端。
(8) RFB:是集成在片内的外接运放的反馈电阻。
(9) VREF:基准电压(-10~10V)。
(10) Vcc:是源电压(+5~+15V)。
(11) AGND:模拟地 NGND:数字地,可与AGND接在一起使用。
3.3 数码显示管通过控制7个笔画段的亮或暗,和控制一个小数点的亮和暗来实现数码管显示。LED 显示器有共阴极和共阳极2 种形式。共阳极显示器是发光二极管的阳极连接在一起,当需要显示某字符时,只需要将共阳极端接高电平,根据显示需要让a-h中某些位置接低电平。共阴极显示器是发光二极管的阴极连接在一起,当需要显示某字符时,只需要将共阴极端接低电平,a-h 中某些位接高电平即可。
显示器的工作方式分为静态显示方式和动态显示方式两种:
(1) 静态显示方式就是显示器在显示一个字符时,相应的发光二极管恒定的导通或截止,例如a、b、c、d、e、f导通,g截止时显示“0”,这种使显示器显示字符的字形数据常称为段数据。静态显示方式的每一个七段显示器,需要由一个8 位并行口控制。优点是显示稳定,提高了工作效率,缺点是位数较多时显示口随之增加。
(2) 动态显示方式是一位一位的轮流点亮各位显示器,对于每一位显示器来说,每隔一段时间点亮一次。显示器的亮度既与导通电流有关,也与点亮时间和间隔时间的比例有关。调整电流和时间参数可以实现亮度较高较稳定的显示,如显示器的位数不大于8位,则控制显示器公共极的电位只需要一个8位口(位数据口),控制字形也需要一个8位口(段数据口)。要使显示管显示不同的数字或者字符,需要使端口输出相应的字型码