6 E 1 2 3
● 键盘按键编码
键盘按键编码如图3.6所示:
每个按键的具体实现功能由用户根据需要 在所编写的程序中设定,图中的按键编码仅 作参考。
图3.6键盘按键编码 3.2.3 液晶显示电路
显示器件是实验板中普遍使用的输出器件,较常用的是LED数码管和LCD液晶显示器。前者仅能显示数据输出,而后者能显示更多,更复杂的字符,如汉字,甚至是图形等。此实验板采用MS12232B点阵液晶显示器作为输出显示器件。 实验板液晶显示电路如图3.7所示: 图3.7实验板液晶显示电路
RST液晶显示器复位引脚,低电平有效,与AT89C51 P2.4连接,系统中应用软件实现复位操作。E1、E2都是读写选通信号,分别与P2.3、P2.2 连接。RW读写选择信号与P2.1 连接。A0是数据显示和指令数据选择信号,与P2.0 连接。D0~D7是数据线,分别与P0.0~P0.7连接,传送CPU发送给显示器的数据,指令等。同时,P0.0~P0.7连接270欧上拉电阻,起到限流作用。 ● MS12232B引脚特性: 管脚号 1 2 3 4 5 6 7 8 9 管脚名称 VCC VSS VLCD RES E1 E2 RW A0 DB0 LEVER +3∽5V 0V 0+5V OR 0∽-5V HL HL HL HL HL HL 管脚功能描述 电源电压 电源地 LCD外接驱动负电压 当VDD=+3V时,VLCD接0∽-5V负电压 复位信号(低电平有效) 读写使能信号 读写使能信号) 读写选择信号 DI=“H”,表示DB7~DB0为显示数据 DI=“L”,表示DB7~DB0为显示指令数据 数据线
10 11 12 13 14 15 16 17 18 DB1 DB2 DB3 DB4 DB5 DB6 DB7 VLED+ VLED- HL HL HL HL HL HL HL -- -- 数据线 数据线 数据线 数据线 数据线 数据线 数据线 LED(+5V)或EL背光源 LED(0V)或EL背光源 3.2.4 串行通信电路
AT89C51中的串行接口能方便地与其他计算机或串行传送信息的外围设备实现双机,多机通信。此实验板中仅设计与上位机实现数据传送串行通信电路。RS-232C标准规定发送数据线TXD和接受数据线RXD均采用EIA电平,即传送数字“1”时,传输线上的电平在 -3~-15V之间;传送数字“0”时,传输线上的电平在+3~+15V之间。但单片机串行口采用正逻辑的TTL电平,这样就存在TTL电平与EIA电平之间的转换问题。因此实验板中采用电平转换芯片MAX232 与9芯D插座连接方式。 与PC机串行通信电路如图3.8所示:
MAX232 电平转换芯片实现电平转换,仅需外加4个0.1uF的电容,即可实现TTL电平和RS-232 电平的互换。 在电路设计时,T1IN,T2IN引脚中的一个与AT89C51 中的TXD(P3.1)引脚连接,接收CPU发送给PC机的数据;T1OUT,T2OUT引脚中的一个与9芯D插座中的RXD(2)引脚连接,发送T1IN或T2IN引脚接收到的数据。R1IN,R2IN引脚中的一个与9芯D插座中的TXD(3)引脚连接,接收上位机发送给AT89C51 的数据;R1OUT,R2OUT引脚中的一个与AT89C51 中的RXD(P3.0)引脚连接,发送R1IN或R2IN 引脚接收到的数据。需要注意的是在选择TXXX,RXXX是要对应,例如选择T1IN接收数据,则另一端必须由T1OUT发送数据。RXXX也如此。否则AT89C51 与PC机将不能实现通信功能。
图3.8实验板与上位机串行通信电路 3.2.5 IO口扩展电路
实验板中各功能模块没有涉及IO口扩展,硬件电路设计中仅增加了三个CON口分别与AT89C51 的P0口、P1口、P2口、P3口相连,将它们引出以便在用户在其他实验中扩展。 实验板IO 口扩展电路如图3.9所示: 图3.9实验板IO口扩展电路 3.2.6 电源电路 电源(Vcc)是整个实验板正常工作的动力源泉。电源电压过大会大大缩短芯片的工作寿命,严重的会烧毁芯片及其它元器件;过小将不能驱动实验板工作电路。因此设定合适的电源电压值非常重要。此实验板主要芯片工作电压均位+5V左右,所以采用7805三端稳压 芯片将+12V整形为+5V直流给整个实验板供电。 实验板的电源电路如图3.10所示: 图3.10实验板的电源电路
C3 ,C4两个电容接7805的Vin端对外电源输入的电压进行滤波; C5,C6 两个电容接7805的Vout端对整形后的电压进行滤波,确保Vcc端输入+5V直流电压。D1为光二级管,
接通电源时,灯亮表示电源电路供电正常,否则电源电路出错。
3.3 实验板元器件清单 验板元器件清单见表3.3-1: 名 称 AT89C51 LM7805CPK 电源插头 电容C3 电容C4 电容C5 电容C6 发光二级管D1 电阻R0 晶振XTAL 电容C1 电容C2 按键K1 电容C11 电阻R7 电阻R8 发光二级管D1 按键1~16 参 数 ———— ———— ———— 0.1uF 10 uF 10uF 0.1uF ———— 430欧 12MHZ 30pF 30pF ———— 22uF 270欧 8.2K ———— ———— 封装类型 DIP40 TO-220 VR-6 RAD-0.2 RB-.2.4 RB-.2.4 RAD-0.2 RAD-0.3 AXIAL-0.3 XTAL-1 RAD-0.1 RAD-0.1 SOP-4 RB-.2.4 AXIAL-0.3 AXIAL-0.3 RAD-0.3 SOP-4 所属模块 ———— 电源电路 电源电路 电源电路 电源电路 电源电路 电源电路 电源电路 电源电路 时钟电路 时钟电路 时钟电路 复位电路 复位电路 复位电路 复位电路 复位电路 键盘电路
电阻R1~R4 HD74LS21P MS12232B 排阻 MAX232 9芯D插座 电容C7~C10 430欧 ———— ———— 270欧 ———— ———— 1uF AXIAL-0.3 DIP14 SIP18 SIP9 DIP16 DB-9RAM RB-.2.4 键盘电路 键盘电路 显示电路 显示电路 串行通信电路 串行通信电路 串行通信电路 表3.3-1实验板元器件清单 第4章 实验板的软件设计 4.1 软件总体设计
实验板的软件设计是在硬件电路板的基础上,通过汇编程序来实现的。在仿真器上调试成功后,录入AT89C51 中,以便实验板调用。此设计过程中主要完成三个功能:键盘扫描,液晶显示,与上位机串行通信。主要设计流程如图4.1软件总体设计流程图: Y Y Y Y N N N
开 始
初始化
调按键扫描
有键按下?
显示键?
字库键?
串口键? 键?
置标志,转键盘扫描程序