为了与Keil进行联合调试,打开主机的工程文件,在键盘上按“Ctrl+F5”,进入联合调试环境,进行相应的设置,将调试数据窗口显示出来,调试界面如图5-10所示。该界面是主机调试环境,图中Keil环境和Proteus环境调试窗口中显示“r0-r8”的值依次为“0B、08、00、00、00、08、03、30”,从机0#、1#和2#机发送来的数据“02、05、08”依次在数组rdata中,在数据存储器中还显示了主机处理后的数据排列“08、05、02”。从机的调试过程和主机一样,在此不再累述。
5.3本章小结
本章对串行通信系统控制进行了仿真与调试,以Proteus为平台的实验系统取代常规的单片机实验平台,其便捷的设计方式、灵活的设计手段都是硬件平台无法比拟的。通过仿真直观地看到通信系统的功能效果,通过调试可以直接看到运行过程中各变量及单片机各寄存器中的数据变化,以确定程序运行的正误。
6.系统硬件 PCB设计
本文所仿真的串行通信系统,所有的上位机和下位机电路均放在一个原理图中,但实际串行通信应用中,常常上位机和下位机不在同一个地点工作。因此在考虑实际应用之后,只需做一个通用的串行通信最小系统的PCB。PCB经加工成板,焊接元器件之后将串行通信最小系统人为规定为上位机或下位机,然后给进行下位机编号即可完成本系统的工作。
6.1最小系统的模块化电路设计
单片机的最小系统是单片机能够工作的最小硬件组合,主要包括:电源、晶振
振荡器、 复位电路。对于一个能够实现串行通信的最小系统的单片机还应有ISP下载端口、串行接口RS232、MAX232电路、开关、按键、指示灯、显示器、报警喇叭等部分组成。
6.1.1 AT89C51外围电路设计
AT89C51的工作电压为+5V,即单片机最小系统的电源Vcc=5V。由于当单片机的31引脚为高电平时,单片机从部程序存储器开始访问;当为低电平时则只访问外部程序存储器,所以可以31引脚与电源相连接。
对于晶振电路,AT89C51中右一个用于构成部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入和输出端。这个放大器与作为反馈元件的片外石英晶体或瓷谐振器一起构成自激震荡器,震荡电路如图6.1所示。外接石英晶体(或瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联震荡电路。外接电容C1、C2没有十分严格的要求,单电容值的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度稳定性,如果使用石英晶振,推荐电容使用
[13][15]
30pF?10pF,如果使用瓷谐振器建议选择40pF?10pF。该系统选用的是12MHz的石英晶振,而微调电容选择22PF。
对于复位电路,选用了电容与电阻串联的形式,另将一按键与电容并联可实现手动复位,电容为电解电容C=100uF,电阻为R=10KΩ。复位电路的基本要滤波电容和电阻的乘积大于5个外部时钟周期,根据时间常数 :
通过以上分析,复位电路中,电容选择C=100uF,电阻选择R=10KΩ是合理的。 另外,由于单片机的P0口的输出电路时漏极开路电路,若想输出高电平需要外接上拉电阻,所以在P0口处增加一个阻值为10KΩ的8引脚排阻。AT89C51的外围电路图如图6.1所示,ISP为AT89C51的下载编程器端口。
??RC?1s?5?112?106
图6.1 AT89C51单片机外围电路
6.1.2 LCD1602液晶显示模块电路
LCD1602的接口可以和AT89C51单片机接口直接相连,电路如图6.2所示。LCD1602的工作电压为+5V,S1为液晶显示器的电源开关,亮度通过1K的可变电阻RV1进行硬件调节。
6.1.3 RS 232模块电路设计
图6.2 LCD1602外围电路
串行通信的距离和传输率与电气特性有关,传输距离随传输速度的增加而缩短。
点对点的UART通信,由于采用TTL电平传输,一般仅用于板级通信。如要增加传输距离,则通信信号需要驱动或调制。
RS232接口是一种串行通信标准,是由美国EIA(电子工业协会)和Bell公司一起开发的通信协议,它对信号线的功能、电气特性、连接器等都作了明确的规定[7]。
RS232采用的是EAI电平,采用负逻辑,其电气特性如下: 逻辑0——+5V,+15V; 逻辑1——-5V,-15V; 波特率——20000bps之; 传输距离——15m以。
MAX232芯片可以完成TTL电平与RS232电平间的转换。其供电电压为-5V电源,片有升压电路。这样不必增加电源的品种,简单可靠。通过RS232使用MODEM还可以通过线远距离传送。
本AT89C51单片机的串行通信最小系统的RS232的驱动采用MAX232芯片,其连线图如图6.3所示。
图6.3 RS232模块电路图
6.2 系统硬件PCB总原理图
根据AT89C51单片机串行通信最小系统模块化电路设计,以及通用单片机实验板设计思想,本系统设计所需要的器件如表6。