单片机实验报告多机通讯.docx

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机实验报告多机通讯

单片机系统设计及应用实验报告第 次实验 实验名称: 单片机串行口与PC机通讯实验 专 业: 姓 名: 学 号: 同组人员: 学 号: 实 验 地点: 实验时间: 2016.12.15 评定成绩: 审阅教师: 目录实验目的1实验内容及要求4实验原理及程序设计流程图5调试过程及相关记录6正确源代码6实验心得7实验目的掌握串行口工作方式的程序设计,掌握单片机通讯的编制;了解实现串行通讯的硬环境,数据格式的协议,数据交换的协议;了解PC机通讯的基本要求。实验内容及要求利用8051单片机串行口,实现与PC机通讯。本实验实现以下功能,将从实验板键盘上键入的字符或数字显示到PC机显示器上,再将PC机所接收的字符发送回单片机,并在实验板的LED上显示出来。实验原理89C51内部有一个可编程全双工串行通信接口。该部件不仅能同时进行数据的发送和接收,也可作为一个同步移位寄存器使用。本实验LED显示是在方式0下,串行口作为同步移位寄存器使用。此时SM2、RB8、TB8均应设置为0。发送数据:TI=0时,执行“MOV SBUF,A”启动发送,8位数据由低位到高位从RXD引脚送出,TXD发送同步脉冲。发送完后,由硬件置位TI。方式0的波特率为fosc/12,即一个机器周期发送或接收一位数据。与PC通讯是方式1:一帧10位的异步串行通信方式,包括1个起始位,8个数据位和一个停止位。当TI=0时,执行“MOV SBUF,A”指令后开始发送。发送时的定时信号由定时器T1送来的溢出信号经过16分频或32分频得到的。在接收到第9位数据(即停止位)时,必须同时满足以下两个条件:RI=0和SM2=0或接收到的停止位为“1”,才把接收到的数据存入SBUF中,停止位送RB8,同时置位RI。在方式1下,SM2应设定为0。四.实验流程图调试过程及相关数据记录编写单片机发送和接收程序,并进行汇编调试。运行PC机通讯软件“commtest.exe”,将单片机和PC机的波特率均设定为1200。运行单片机发送程序,按下不同按键(每个按键都定义成不同的字符),检查PC机所接收的字符是否与发送的字符相同。最初,显示的不是数字而是符号,这是通讯软件的设置,HEX显示,没有勾选。只能实现一次数据传输,原因是串口的工作方式改为0显示led后没有改回方式1。将PC机所接收的字符发送给单片机,与此同时运行单片机接受程序,检查实验板LED数码管所显示的字符是否与PC机发送的字符相同。调试之前,显示为乱码,修改相关代码后显示正常。六.源代码LED0 EQU 30H ;预设数值缓存存储位置ORG 0000HAJMP STARTORG 0023HAJMP INT_1ORG 0040HSTART: MOV SP,#30HMOV TMOD,#20H;设置定时器工作模式2MOV TL1,#0E6H;设置波特率MOV TH1,#0E6HMOV SCON,#50H;设置串口工作模式MOV PCON,#00HMOV LED0,#0BBH;初始化ledMOV R5,#03HSETB EA SETB ESSETB TR1KEYBORD:;键盘检测按键MOV P1, #0FFHMOV A, P1CPL AJZ KEYBORD ;是否全为0LCALL LOOPMOV A, P1CPL AJZ KEYBORDPUSH ATHEN:MOV A, P1CPL AANL A, #0FFHJNZ THENLCALL LOOPPOP AJZ KEYBORDJB ACC.0, CH0JB ACC.1, CH1JB ACC.2, CH2JB ACC.3, CH3JB ACC.4, CH4JB ACC.5, CH5JB ACC.6, CH6JB ACC.7, CH7CH0:MOV A,#00HSJMP MAINCH1:MOV A,#01HSJMP MAINCH2:MOV A,#02HSJMP MAINCH3:MOV A,#03HSJMP MAINCH4:MOV A,#04HSJMP MAINCH5:MOV A,#05HSJMP MAINCH6:MOV A,#06HSJMP MAINCH7:MOV A,#07HMAIN:CLR ACC.7MOV SBUF,ASJMP KEYBORDINT_1:;中断判断是发送还是接收JNB RI,SEND SJMP CEV SEND:CLRTI ;发送子程序MOVSCON, #00HMOV LED0,#00HLCALLSHOWMOVSCON, #50HSJMP BACKCEV:CLRRI ;接收子程序MOVA, SBUF ;接收数据MOV R3,AMOVSCON, #00H;改变串口工作模式

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档