利用电平转换器件RS232实现单片机与PC间的串口通信分析Word文档格式.docx
《利用电平转换器件RS232实现单片机与PC间的串口通信分析Word文档格式.docx》由会员分享,可在线阅读,更多相关《利用电平转换器件RS232实现单片机与PC间的串口通信分析Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。
一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC上来运行,家用PC的也是承受不了的。
二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。
不过,这种电脑,通常是指个人计算机,简称PC机。
它由主机、键盘、显示器等组成。
还有一类计算机,大多数人却不怎么熟悉。
这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。
顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。
因为它体积小,通常都藏在被控机械的“肚子”里。
它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。
现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。
各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。
1.1设计目的
本设计包括确定控制任务、系统总体方案设计、硬件系统设计、软件程序的设计等,以便使学生掌握有关单片机控制的设计思想和设计方法。
为学生今后从事单片机控制系统开发工作打下基础。
1.2设计内容和要求
本课程设计的基本要求是使学生全面掌握单片机控制系统设计的基本理论熟悉掌握MCS-51系列单片机的编程方法,具体要求如下:
利用电平转换器件RS-232实现单片机与PC间的串口通信,利用虚拟终端仿真单片机与PC间的串行通信。
PC先发送从键盘输入的数据,单片机接收后会发给PC机,双方收发数据是相同的单片机将收发到的30-39H间的数据转换成0-9显示,其他数据直接显示为字符的ASCII码。
2方法选择
2.1从PROTTEUS库中选取元件
图1AT89C2051:
单片机
1,RES:
电阻如图2所示:
图2RES:
电阻
27SEG-BCD-RED:
红色BCD数码管如图3所示:
图37SEG-BCD-RED:
红色BCD数码管
3CAP、CAP-ELEC:
电容、电解电容如图4所示:
图4CAP、CAP-ELEC:
电容、电解电容
4BUTTON:
按钮控件如图5所示:
图5BUTTON:
按钮控件
5MAX232/MAX220:
RS-232收发器如图6所示:
图6MAX232:
RS-232收发器
2.2原理图中用到的部分元器件的功能、原理及引脚说明
1.串口模型COMPIM及其引脚功能如图7所示:
图7串口模型COMPIM及其引脚功能
2.MAX232/MAX220:
RS-232收发器的功能
实现电平转换,也就是将CMOS电平转换成TTL电平
3.RS232(DB9)引脚定义
(1):
DCB:
载波检测。
主要用于Modem通知计算机其处于在线状态,即Modem检测到拨号音,处于在线状态。
(2):
RXD:
此引脚用于接收外部设备送来的数据;
在使用Modem时,会发现RXD指示灯在闪烁,说明RXD引脚上有数据进入。
(3):
TXD:
此引脚将计算机的数据发送给外部设备;
在使用Modem时,会发现TXD指示灯在闪烁,说明计算机正在通过TXD引脚发送数据。
(4):
DTR:
数据终端就绪;
当此引脚高电平时,通知Modem可以进行数据传输,计算机已经准备好。
(5):
GND:
信号地;
(6):
DSR:
数据设备就绪;
此引脚高电平时,通知计算机Modem已经准备好,可以进行数据通讯了。
(7):
RTS:
请求发送;
此引脚由计算机来控制,用以通知Modem马上传送数据至计算机;
否则,Modem将收到的数据暂时放入缓冲区中。
(8):
CTS:
清除发送;
此引脚由Modem控制,用以通知计算机将欲传的数据送至Modem。
(9):
RI:
Modem通知计算机有呼叫进来,是否接听呼叫由计算机决定
4.MAX232原理
MAX232芯片是专门为电脑的RS-232标准串口设计的接口电路,使用+5V单电源供电。
内部结构基本可分三个部分:
第一部分是电荷泵电路。
由1、2、3、4、5、6脚和4只电容构成。
功能是产生+12V和-12V两个电源,提供给RS-232串口电平的需要。
第二部分是数据转换通道。
由7、8、9、10、11、12、13、14脚构成两个数据通道。
其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;
DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分是供电。
15脚DNG、16脚VCC(+5V)。
5.AT89C2051单片机引脚介绍
AT89C2051为20引脚小型封装,2K内部程序存储器,15个可编程I/O口线,没有P0口和P2口的16根I/O线,内部集成了一个模拟比较器。
AT89C2051单片机的引脚排列如图8所示:
图8AT89C2051单片机的引脚排列
芯片共有20个引脚,引脚的排列顺序为从靠芯片的缺口(见上图)左边那列引脚逆时针数起,依次为1、2、3…20,在单片机的20个引脚中,电源引脚2根,外接晶体振荡器引脚2根,复位引脚1根以及P1、P3口可编程I/O引脚15根。
(1)主电源引脚(2根)
VCC(Pin20):
电源输入,接+5V电源
GND(Pin10):
接地线
(2)外接晶振引脚(2根)
XTAL1(Pin5):
片内振荡电路的输入端
XTAL2(Pin4):
片内振荡电路的输出端
(3)控制引脚(1根)
RST/VPP(Pin1):
复位引脚,引脚上出现2个机器周期的高电平将使单片机复位
(4)可编程输入/输出引脚(15根)
P1口:
8位准双向I/O口线,P1.0—P1.7,共8根
P3口:
8位准双向I/O口线,P3.0—P3.5、P3.7,共7根
3硬件设计
3.1系统各组成部分硬件设计
(1)、硬件设计电路图如图9所示:
图9硬件设计电路
3.2电路图的原理
(1)、利用电平转换器件RS-232实现单片机与PC间的串行通信。
本次试验利用虚拟终端仿真单片机与PC间的串行通知。
PC先发送从键盘输入的数据,单片机接收后回发给PC机,双方收发数据是相同的单片机将接收30-39H间的数据转换成0-9显示,其他数据直接显示为字符的ASCII码。
(2)、4个虚拟终端,分别给单片机的串行口及COMPIM的2脚、3脚,COMPIM的3脚与虚拟终端的发送端TXD相连,将单片机串口的RXD,TXD以及COMPIM的2脚分别接入虚拟终端的RXD,以此监视单片机和串口模型收、发数据。
(3)、PCS代表计算机发送数据,PCR用来监视PC接收到的数据,SCMS、SCMR分别为单片机发送、接收终端,分别监视单片机发送、接收数据。
4软件设计
4.1软件设计流程图如图12所示:
图12软件设计流程图
4.2源程序设计
ORG0
ORG30H
SJMPSTART
START:
MOVTMOD,#20H;
设计定时方式寄存器
MOVPOCN,#0;
设置电源制寄存器
MOVTH1,#0E6H;
装初值
MOVTL1,#0E6H;
SETBTR1;
开中断
CLRES;
中断允许
MOVSP,#5FH;
装入指针初值
LOOP:
MOVSCON,#50H;
串行口工作于方式1
JNBRI,$;
判断RI=1?
CLRRI;
清零
MOVA,SBUF;
读进收到的数据
PUSHACC
CJNEA,#3AH,RANG1;
判断A的内容是否等于48
RANG1:
JCRANG3;
判断CY=1?
CJNEA,#3AH,RANG2;
判断A的内容是否等于58
RANG2:
JNCRANG3;
判断CY=0?
CLRC;
CY=0
SUBBA,#30H;
转换为ASCII码
RANG3:
MOVP1,A;
输出到数码管显示
POPACC
RANG4:
NOP
MOVSBUF,A;
启动发送
JNBTI,$;
判断TI=1?
END
5调试和结果分析
5.1调试结果
(1)、在刚开始设计完原理图时,编译运行时出现了如图13所示,表示该程序是错误的,经过我们的一起研究发现了程序的末尾没有加上END结束标志。
图13编译运行图
(2)、程序调试完了之后,在运行时出现了如图14所示,在PCS中输入数字和字符而在数码管、PCR、SCMR、SCMS没有显示跟踪结果。
在我们的研究和探讨中发现了我们没有在串行口的3引脚发送数据端没有加上标记PCS。
图14运行图
(3)、在原理图基本调试出来的时候,运行在PCS中输入数字“8”我们发现在PCR中没有显示跟踪结果,如图15所示,最后我们把PCR的属性改成如下所示才把原理图和程序调试出来。
调试成功后的运行图如图16所示:
图15编辑元件图
5.2实验结果
(1)、在PCS中输入“8”时,结果如图17所示:
图17结果图
(2)、当PCS输入数据位“3”时,运行结果如图18所示:
图18结果图
(3)、当PCS输入数据为“5”时,运行结果如图19所示:
图19结果图
(4)、当PCS输入数据为“1”时,运行结果如图20所示:
图20结果图
6课程设计体会
本课程设计在进行过程中得到李静,鲁旭涛老师的悉心指导。
课程设计过程中,两位老师多次帮助我们小组分析思路,开拓视角,在我们小组遇到困难想放弃的时候给予我们最大的支持和鼓励。
老师严谨求实的治学态度,踏实坚韧的工作精神,将使我们终生受益。
在此,谨向两位老师致以诚挚的谢意和崇高的敬意。
在本课程设计过程中,班上的一些同学、朋友也给了我们巨大的帮助与鼓励。
在此一并感谢。
在我们的成长、学习过程中,能够在大学阶段学习到单片机的知识,是我们一生的荣幸与财富。
相信,在未来的日子里我们会更加努力学习,充分利用所学知识,回报社会、师长。
参考文献
1.孙涵芳.MCS-51/96系列单片机原理及应用(修订版).北京航空航天大学出版社.1994
2.李朝青.单片机原理及接口技术(第3版).北京航空航天大学出版社.2005