- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验6单片机与PC机间的串行通信.
实验6 单片机与PC机间的串行通信
一、实验目的
1、掌握电平转换器件RS-232的使用方法;
2、掌握Proteus VSM虚拟终端(VITUAL TERMINAL)的使用;
3、掌握单片机与PC机间的串行通信软硬件设计方法。
二、实验内容
实现利用虚拟终端仿真单片机与PC机间的串行通信。PC机先发送从键盘输入的数据,单片机接收后回发给PC机。单片机同时将收到的30~39H间的数据转换成0~9的数字显示,其他字符的数据直接显示为其ASCII码。
单片机和PC机进行通信时,要求使用的波特率、传送的位数等相同。要能够进行数据传送也必须首先测试双方是否可以可靠通信。可在PC机和单片机上各编制非常短小的程序,具体可分成PC机串行口发送接收程序、单片机串行口发送程序和单片机串行口发送接收程序。这三个程序能运行通过,即可证明串行口工作正常。
PC机串行口发送接收程序设置串行口为波特率9600、8位数据、1位停止位、无奇偶校验的简单设置。从键盘接收的字符可从串行口发送出去,从串行口接收的字符在屏幕上显示。通过让串行口发送线和接收线短接可测试微机串行口,通过让串行口和单片机系统相接,使用此程序可进一步测试单片机的串行通信状况。具体程序用BASIC编制,简单易懂。直接输入即可运行。程序RS232.
三、实验电路原理图
图7-1 单片机与PC机间电路原理图
实验步骤
1、在PROTEUS中画好电路原理图。
2、串口模型属性设置
串口模型属性设置为:波特率―4800;数据位―8;奇偶校验―无;停止位-1,如图7-2所示。
图7-2 串口模型属性设置
3、虚拟终端属性设置
PCT代表计算机发送数据,PCR用来监视PC接收到的数据,它们的属性设置完全一样,如图7-3所示。SCMT和SCMR分别是单片机的数据发送和接收终端,用来监视单片机发送和接收的数据,它们的属性设置也完全一样,如图7-4所示。单片机和PC机双方的波特率、数据位、停止位和检验位等要确保和串口模型的设置一样,并且同单片机程序中串口的设置一致。
图7-3 PC机虚拟终端属性设置
图7-4 单片机虚拟终端属性设置
要注意到PC机虚拟终端与单片机虚拟终端在RX/TX Polarity属性的设置是相反的,因为信号在经过器件MAX232时要反相。
4、将HEX文件写入电路图中的单片机,在Proteus ISIS界面中的PCT虚拟终端上单击右键,在弹出的快捷菜单中选择“Echo Typed Characters”项;
鼠标指针在PCT终端窗口单击,该窗口出现闪烁的光标,从键盘输入数字“8”,在PCS终端窗口中就出现“8”,表明PC机发送数据“8”,按照设计好的程序,单片机将接收到“8”,所以在单片机接收虚拟终端SCMR上会显示“8”,同时又将数字“8”送显到数码管上。接下来,单片机又将该数回发给PC机,因此在单片机发送终端SCMT上也显示“8”,PC机接收到数据后在接收终端PCR上同样显示“8”,结果如图7-5所示。根据程序设计,当在键盘上输入0~9以外的字符时,单片机输出到数码管上显示的则是该字符的ASCII码,如图7-6所示。
图7-5 程序运行结果1
图7-6 程序运行结果2
实验源代码
程序框图:
1、汇编程序:
ORG 30H
START: MOV SP,#60H
MOV SCON, ;设定串行方式:
;8位异步,允许接收
MOV TMOD,#20H ;设定计数器1为模式2
ORL PCON, ;波特率加倍
MOV TH1,#0F3H ;设定波特率为4800
MOV TL1,#0F3H
SETB TR1 ;计数器1开始计时
AGAIN: JNB RI,$ ;等待接收完成
CLR RI ;清接收标志
MOV A,SBUF ;接收数据送缓冲区
MOV SBUF,A ;发送收到的数据
JNB TI,$ ;等待发送完成
CLR TI ;清发送标志
SJMP AGAIN
END
2、Cx51程序:
#include reg51.h
#define uchar unsigned char
#define uint unsigned int
void display(uchar b);
main()
{
uchar a;
TMOD=0x20;
TL1=0xf3;
TH1=0xf3;
SCON=0x50;
PCON=0x80;/*设置串行口方式*/
TR1=1
您可能关注的文档
最近下载
- 2025用于混凝土中的防裂抗渗复合材料.docx VIP
- 地产项目商业综合体商业街马年春节美陈设计包装方案【概念包装】【春节营销】.pdf VIP
- 值班的记录表.doc VIP
- 车间主任培训(课件90页).pptx VIP
- 2025年6月大学英语六级考试真题第2套(含答案+听力原文+听力音频).docx VIP
- 汽车维修工高级(理论)复习题.docx VIP
- 高速公路质量通病防治手册(最终修改版) .pdf VIP
- 人教版 二年级数学下册二年级数学脱式练习.docx VIP
- 2024年货代明年工作计划.ppt VIP
- 2025年6月大学英语六级考试真题第1套(含答案+听力原文+听力音频).docx VIP
原创力文档


文档评论(0)