51单片机与PC的RS232接口串行通信实现研究大学毕业论文毕业设计学位论文范文模板参考资料文档格式.docx
《51单片机与PC的RS232接口串行通信实现研究大学毕业论文毕业设计学位论文范文模板参考资料文档格式.docx》由会员分享,可在线阅读,更多相关《51单片机与PC的RS232接口串行通信实现研究大学毕业论文毕业设计学位论文范文模板参考资料文档格式.docx(7页珍藏版)》请在冰豆网上搜索。
目前串口通信的最大速率,RS-232是20Kbps,RS-422/485是300Mbps。
就距离范围来说,RS-232通常为50英尺,RS-422/485为4000英尺,当然还可以用中继器进行扩展。
一个串行局域网的最大设备数量为32个,通过中继器这个数值还可以更大,但最大不能超过所用设备的地址限制通常为256。
多年以来,串行技术与连接设备都得到了很大的发展。
串口设备仍有大量应用,设备电缆和软件的大量库存证明了这一点。
毫无疑问,串行连接仍然是工商业及医疗应用中的广泛标准。
1.2设计目的和意义
(1)设计目的串行通信仅仅使用一条数据线,就可以将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。
其只需要少数几条线就可以在系统间交换信息,如计算机与计算机、计算机与单片机以及外设之间的远距离通信
(2)设计意义计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。
由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。
在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。
随着计算机技术尤其是单片微型机技术的发展,人们已越来越多地采用单片机来对一些工业控制系统中如温度、流量和压力等参数进行检测和控制。
PC机具有强大的监控和管理功能,而单片机则具有快速及灵活的控制特点,通过PC机的RS-232串行接口与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。
因此如何实现PC机与单片机之间的通讯具有非常重要的现实意义。
二方案功能详述及论证2.1方案功能详述2.1.1总体功能设计通过编写单片机侧的串口通信程序,设置相应的波特率如9600b/s。
使单片机接收到PC机所发送的命令后,收到正确的命令后开始将“天净沙秋思”这篇短文的数据传送到PC机。
2.1.2具体功能模块设计本文论述的单片机与PC机串行口通信包括如下功能模块。
(1)单片机系统模块:
实现和PC机通信的串口通信程序。
(2)外围电路模块:
实现单片机和PC机之间的串口电平转换。
(3)通信程序模块:
一方面是单片机的程序,另一方面是PC机的通信程序。
2.2方案论证本文采取了专用电平转换芯片MAX232实现PC机与MCS51单片机之间的串行通信方法。
通过对系统的通信方式选择89C51通信波特率的设置,通信的设置,以及对接口电路的软件和硬件的设计分析,展示了该电路的实用信。
系统还通过(该软件的下载网址是www.wave-cn.“伟福51软件仿真器”com)进行编译,本系统的设计和具体实际应用相结合,系统的安全性、可靠性及实用性强,操作简单、扩展功能强,设计具有良好的可行性和可操作性。
按照单片机系统的设计方法,这一阶段,我需要考察实际应用环境的需要,确定单片机与PC机串行通信系统的整体设计方案。
它包括系统的可行性分析、功能分析、单片机选型以及系统硬软件的分工问题。
2.2.1可行性分析这次设计是我的毕业设计任务,在指导老师的指导下和搜集、查阅相关资料、确定单片机系统能达到需要的设计目标,而且达到目标需要的经济成本没有超出可接收的范围。
2.2.2系统功能分析单片机以其体积小、价格低、抗干扰性好等特点,在现在控制系统中常用在操作现场进行数据采集,以及实现现场控制中。
但是由于其数据存储容量和数据处理能力都较低,所以一般情况下要通过通信手段使它与PC机相连,把所采集到的数据传送到PC机上,再在PC机上进行数据处理,充分发挥两者各自的优势。
由于单片机输入、输出电平是TTL电平,而PC机配置的是RS—232标准串行接口,两者的电气规范不一致,因此要完成单片机与PC机的数据通信,必须对单片机输出的TTL电平进行电平转换。
单片机和PC的串口通信原理方案如图2-1所示。
图2-1串口通信原理方案2.2.3单片机选型单片机的选型的依据为,应用系统本身对数据处理能力的要求,以及是否有其他方面的特殊需要(低功耗、工作温度、接口电路)的原则来确定。
在此,本人选择Intel公司的MCS-51系列单片机中的8051单片机。
MCS-51系列的单片机是Intel公司在1980年推出的8位机系列,8051为这一系列的代表产品。
8051单片机内部包括8位CPU、4KB片内ROM、128KB片内RAM、4个8位并口、一个全双工的串口,支持64KB寻址空间,并提供5个中断源和两级中断。
其性能指标如表2-1。
表2-1MCS-51系列单片机8051的性能指标单片机片内片内I/计串行DMA/中空闲和掉ROMROMO数口AD断电方式类型型号(KB)(KB)并器源口ROM805141284216UART无无5无以上我选用的单片机的种类和型号,取决于对该类型号的熟悉程度以及手头所具备开发系统的条件。
而在第六章我用单片机实验板对系统软件进行调试所用到的单片机是STC89C52RC,其特点是可以直接用串口进行ISP编程,对于使用就变得很简单了,我在这里作一个说明。
2.2.4系统硬软件的功能设计对系统的各项功能进行划分,确定软件和硬件的分工问题,根据图2-1单片机和PC的串口通信原理方案,实现该方案需要从通信协议(串行通信总线标准接口)、硬件电路和程序3个方面考虑。
1)通信协议标准接口,就是明确定义若干信号线,使接口电路标准化、通用化,借助串行通信标准接口,不同类型的数据通信设备很容易实现它们之间的串行通信连接。
标准异步串行通信接口有以下几类:
RS-232C、RS-232E、RS-449、20mA电流环、USB通用接口。
根据协议的广泛性和此次设计为短距离通信,并且PC机配置的是RS—232标准串行接口等条件。
标准接口即通信协议采用基本的RS-232,但是在具体运用上可以根据实际的需要进行变化。
例如,当对传输的数据要求不高时,可以采用无奇偶检验的10位数据,而需要数据稳定性时,可以采用软件握手的方法。
根据单片机对串口的使用还有初始化串口的要求,其通信协议也需要结合单片机的信号和在实际使用中的通信方式而定。
2)硬件电路如图2-1所示,数据通信的硬件上采用3线制,将单片机和PC串口的3个引脚(TXD、RXD、GND)分别连在一起,即将PC机和单片机的发送数据线TXD与接收数据线RXD交叉连接,两者的地线GND直接相连,而其他信号线如握手信号线均不用,采用软件握手的方式。
这样既可以实现预定的任务又可以简化电路设计。
但由于单片机的TTL逻辑电平和RS-232的电气特性完全不同,RS-232的逻辑0电平规定为515V之间,逻辑1电平为-5-15V之间,因此在将PC机和单片机的TXD和RXD交叉连接时必须进行电平转换,这里我选用的是MAX232电平转换芯片。
3)传输程序单片机和PC的通信,在程序上涉及两个部分的内容:
一方面是单片机的C51程序或者汇编程序,完成数据的收发。
二是PC机的串口通信程序和界面的编制。
2.2.5本章小结经过这一阶段的设计,已经有比较成型的系统设计框架,对软硬件系统的分工有较明确的方案。
现在总结如下:
1)确定单片机与PC机串行数据通信系统的通信方案,如图2-1;
2)选择Intel公司的MCS-51系列单片机中的8051实验板对系统软件进行调试所用到的单片机是STC89C52RC;
3串行通信总线标准接口采用RS-232C;
4)串行数据通信的硬件上采用3线制,选用的是MAX232芯片进行单片机与RS-232接口的电平转换;
5)单片机端用C51程序或者汇编程序进行编程,完成数据的收发,PC机端完成串口通信程序和界面的编制。
此时,可以开始进行系统的硬件设计工作了。
三系统硬件设计3.1选用设备和设计总框图本系统选用8051(4KBEPROM)单片机一片,MAX232芯片的PC一台、连线若干进行设计。
系统总框图如图3.1所示。
图3.1系统总框图从设计方框图中可以看出用此方案设计的系统由电源电路、MAX232串行接口电路、单片机外围电路、LED显示电路。
单片机能够接收PC机所发送的命令,收到正确的命令后开始将待发送的数据传送到PC机。
向PC通信传送一首诗歌或者短文。
3.2串行接口通信硬件线路图串行接口硬件线路图如图3.2所示。
图3.2串行接口硬件线路图本设计的串行通信部分主要是由MAX232电平转换电路,其原理是:
MAX232芯片把单片机引脚的COMS电平(0—5V)转换为RS232电平(-12V—12V),AT89S52单片机有一个全双工的串行通信口,而PC机有一个RS232的通信接口。
只要用RS232D型9针的引脚的双边母头接到PC机上,而另一头和MAX232相连接,MAX232的输出再和AT58S52相连就可以实现单片机和PC机的串行通信1。
AT89S52的串行通信引脚的TXD和RXD分别接到MAX232具体连线如上图3.2所示,的T1IN和T1OUT上,3MAX232的R1OUT和R1IN分别接到RS232的2、上,RS232的5脚接地。
MAX232外围元件只有四个电容,根据MAX232的典型应用电路,可取10μF∕50V的电解电容。
单片机外围电路由LED显示电路、晶振电路组成。
3.3电源电路电源电路如图3.3所示。
U1712Vin5V1GNDT1LM7805J4AC220V42C21C225VD1-D43C2312TRANS10.1μF2200μF47μF3图3.3电源电路电源电路是整个系统工作的能量来源,主要由变压器、桥式整流电路、滤波电容电路、低功率三端稳压器LM7805等组成。
上图中我们设计的是系统中所需的5V的电源。
其工作原理是变压器把市电220V的交流电降压为低压交流电,通过桥式整流电路把低压交流整流为含有脉动和谐波成份的直流电,再通过滤波电容把其中含有的脉动的交流成份滤出,就成为平缓的直流电,直流电压不够稳定,它再通过三端稳压器LM7805把电压稳定在一个基本不变的数值上,LM7805输出的稳定的电压就可以作系统的电源用了。
3.4主要芯片说明3.4.1单片机AT89C51概述:
1.MCS-51单片机的特点MCS-51单片机包含中央处理器、程序存储器ROM、数据存储器RAM、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,他们的特点:
(1)面向控制的8位中央处理器(CPU)
(2)具有布尔处理(即位处理)能力(3)64KB程序存储器空间(4)64KB数据存储器空间(5)4KB片内程序存储器(EPROM)(6)128B内部数据存储器(RAM)(7)一组特殊功能寄存器(SFR)(8)32根双向并可按位寻址的I/O口线(9)2个16位定时器/计数器(10)5个中断源两个外中断、两个定时/计数器中断和一个串行中断(11)一个全双功异步串行口(12)片内振荡器和时钟电路2.MCS-51单片机的结构下图是MCS-51系列单片机的内部结构示意图,如图3.4所示。
图3.4MCS-51结构框图3.MCS-51的引脚说明:
MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。
现在我们对这些引脚的功能加以说明:
图3.5MCS-51引脚示意图
(1)主电源引脚Vcc和VssVCC(40脚):
接5V电源正端VSS(20脚):
接5V电源地端。
(2)外接晶体引脚XTAL1和XTAL2XTAL1(19脚):
接外部石英晶体的一端。
在单片机内部它是一个反相放大器的输入端这个放大器构成了片内振荡器。
XTAL2(18脚):
接外部晶体的另一端。
在单片机内部接至片内振荡器的反相放大器的输出端。
(3)RST/VPD(9脚):
RST即为RESETVPD为备用电源所以该引脚为单片机的上电复位或掉电保护端。
VPD是备用电源输入端,当单片机掉电或电源发生波动导致电源电压下降到一定值时,备用电源通过VPD端给内部RAM供电,保持其中的信息,直至单片机工作电压恢复正常。
(4)ALE30脚:
当访问外部存储器时ALE(允许地址锁存信号)以每机器周期两次的信号输出用于锁存出现在P0口的低8位地址,的功能是8751等片内含有ROM器件的编程脉冲输入端。
(5)/PSEN(29脚):
片外程序存储器读选通信号输出端低电平有效。
(6)/VPP(31脚):
为访问外部程序存储器控制信号低电平有效。
VPP是编程电源输入端。
(7)P0口(39脚~32脚):
P0.0~P0.7统称为P0口。
(8)P1口(1脚~8脚):
P1.0~P1.7统称为P1口可作为准双向I/O接口使用。
(9)P2口(21脚~28脚):
P2.0~P2.7统称为P2口一般可作为准双向I/O接口。
(10)P3口(10脚~17脚):
P3.0~P3.7统称为P3口。
8751的复位方式可以是自动复位,也可以是按钮复位。
如下图3.5,图3.5所示。
图3.6上电复位电路图3.7按键复位电路单片机进入复位状态的条件是:
在内部振荡器运行时,使复位输入端RESET至少保持两个机器周期(24个振荡周期)为高电平,由CPU采样复位信号,启动复位时序,完成复位操作。
3.4.2MAX232芯片简介:
图3.8MAX232芯片结构框图RS232接口芯片MAX232,SOP封装主要有以下型号:
MAX232CSE、MAX232ESE。
后缀第一个字母如果为“C”,代表工业级。
后缀第,代表商业级,如果为“E”二个字母带“S”,代表SOP封装。
后缀最后一个字母带“”的:
表示无铅产品。
特殊说明:
带“A”的MAX232A,有MAX232ACSE、MAX232AESE,它们使用的是0.1uF外部电容,最高速率200kbps。
而MAX232使用的是1uF外部电容,最高速率120kbps。
3.4.3MAX232芯片简介:
图3.9RS232接口图针脚、定义、符号:
1载波检测DCD2接收数据RXD3发送数据TXD4数据终端准备好DTR5信号地SG6数据准备好DSR7请求发送RTS8清除发送CTS9振铃提示RI接口特性:
(1)接口的电气特性:
在RS-232C中任何一条信号线的电压均为负逻辑关系。
即:
逻辑“1”,-5—-15V;
逻辑“0”5—15V。
噪声容限为2V。
即要求接收器能识别低至3V的信号作为逻辑“0”,高到-3V的信号作为逻辑“1”
(2)接口的物理结构:
RS-232-C接口连接器一般使用型号为DB25的25芯插头座通常插头在DCE端插座在DTE端.一些设备与PC机连接的RS-232C接口因为不使用对方的传送控制信号只需三条接口线即“发送数据”、“接收数据”和“信号地”。
所以采用DB-9的9芯插头座,传输线采用屏蔽双绞线。
(3)传输电缆长度由RS-232C标准规定在码元畸变小于4的情况下,传输电缆长度应为50英尺.其实在一般应用中传输距离小于50m最大传输速率为20kbps.由于RS-232-C接口标准出现较早,难免有不足之处,主要有以下四点:
(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。
(2)传输速率较低,在异步传输时,波特率为20Kbps。
(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
(4)传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在50米左右。
四系统软件设计4.1波特率的设置在串行通信中通信双方应该采用相同的波特率以确保通信成功.PC机系统中配备有异步信适配器该板上有8250异步通信接口PC机上波特率的设置是通过8250初始化而实现的.在COM2的8250寄存器中2F8H、2F9H分别设置为波特率因子的低8位和高8位值.该因子k的取值范围在1~65535之间对输入时钟118432进行分.