5.2下位机电路和程序设计
用Proteus6.9设计的仿真电路只用了几个元器件。由于两个虚拟串口采用相同的标准电平,因此电路中用来作,ITllL电平向RS232电平转换的电路在仿真电路中可以省略。单片机的实例程序用Keil C51语言编写,串口接收数据采用中断的方式,发送数据采用外部中断的方式,用按钮开关控制数据的发送。
5.3串口通信仿真
打开友善串口调试助手,修改串口为COM3,波特率为9600,校验位为None,数据位8,停止位为1。用Proteus打开仿真电路文件,先设置AT89C51的属性,右击选中AT89C5l,再用左键单击AT89C51,在出现的属性对话框里点击Program File后的打开按钮,找到自Keil源程序编译好的.HEX文件后单击打开,然后在Clock Frequency后填写12M。单击OK接下来打开串口COMPIN的属性对话框,在PhsicalPort后选择COMl,波特率为9600,校验位为None,数据位8,停止位为l。设置好后,启动仿真就可以实现电脑和单片机串口通信的仿真了。首先演示一下单片机向计算机的串口发送数据。拨动开关向右拨,运行,按一下开关。虚拟串口终端最示单片机向计算 机COMl发送的数据,而计算机的COMI已经和
COM3相连,因软件PROTEUS 所此可以在COM3收到单片机发送给COMi的数据。接着冉演示一下计算机的串口向单片机发送数据。拨动开关向左拨,在口调试助手中输入想要发送的数据,点击手动则字符 串由COM3发送给了计算机的COMI。再由COMI发送给单片 机。单片机的程序里面有回显功能,将接 送给了COM因 此可以在COM3的接受框内能够接收到会显得字符串。
六.电路原理框图
七.相关硬件及配套软件 7.1 AT89C51器件简介
AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
7.2 COMPIN简介
COM口( cluster communication port )即串行通讯端口。微机上的com口通常是9针,也有25针的接口,最大速率115200bps。通常用于连接鼠标(串口)及通讯设备(如连接外置式MODEM进行数据通讯或一些工厂的CNC机接口)等。一般主板外部只有一个COM口,机箱后面和并口一起的那个九孔输出端(梯形),就是COM1口,COM2口一般要从主板上插针引出。并口是最长的那个梯形口。本实验主要应用九针接口。
7.3 MAX232器件简介
MAX232是一种双组驱动器/接收器,片内含有一个电容性电压发生器以便在单5V电源供电时提供EIA/TIA-232-E电平。
当用单片机和PC机通过串口进行通信,尽管单片机有串行通信的功能,但单片机提供的信号电平和RS232的标准不一样,因此要通过max232这种类似的芯片进行电平转换。
7.4友善串口调试助手
一个强大而稳定的串口调试助手,支持常用的110-921600bps波特率及自定义波特率,波特率最高可支持8000000(串口硬件有关),可适应于非标准波特率。支持串口自动识别,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符,可以任意设定自动发送周期,并能将接收数据保存成文本文件,能发送任意大小的文本文件。
7.5虚拟串口软件Virtual Serial Port Driver 6.9简介
该软件安装成功后可以虚拟出多个串口用于实验,虚拟串口都是成对出现使用的,最大限度的方便了用户数的需求。
八.程序设计
注:本程序采用C语言编写,程序如下: #include
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00}; void Delay(uint x) {