




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验十 单片机串行口与PC机通讯实验报告 实验目的1. 掌握串行口工作方式的程序设计,掌握单片机通讯的编制;2. 了解实现串行通讯的硬环境,数据格式的协议,数据交换的协议;3. 了解PC机通讯的基本要求。 实验器材1. G6W仿真器一台2. MCS51实验板一台3. PC机一台 实验内容及要求利用8051单片机串行口,实现与PC机通讯。本实验实现以下功能,将从实验板键盘上键入的字符或数字显示到PC机显示器上,再将PC机所接收的字符发送回单片机,并在实验板的LED上显示出来。 实验步骤1. 编写单片机发送和接收程序,并进行汇编调试。2. 运行PC机通讯软件“commtest.exe”,将单片机和PC机的波特率均设定为1200。3. 运行单片机发送程序,按下不同按键(每个按键都定义成不同的字符),检查PC机所接收的字符是否与发送的字符相同。4. 将PC机所接收的字符发送给单片机,与此同时运行单片机接受程序,检查实验板LED数码管所显示的字符是否与PC机发送的字符相同。 实验框图单片机接收程序N开 始置串口方式,设置波特率置T1模式及常数Y开串口中断接收完毕?启动定时器1,串口接收开放结 束清串口中断标志ES设置波特率,启动定时器T1开 始设置串口方式YN读键盘,调用按键去抖子程序数据送串口发送完毕?单片机发送程序读串口数据送RAM调用显示子程序串口中断入口中断返回源程序代码:ORG0000HAJMPSTARTORG0023HAJMPSERVEORG0050HSTART: MOV 41H,#0H ;对几个存放地址进行初始化 MOV 42H,#0H MOV 43H,#0H MOV 44H,#0H MOV SCON,#00H ;初始化串行口控制寄存器,设置其为方式0 LCALL DISPLAY ;初始化显示MOVTMOD,#20H ;设置为定时器0,模式选用2MOVTL1, #0E6H ;设置1200的波特率 MOVTH1, #0E6HSETBTR1 ;开定时器MOVSCON,#50H ;选用方式1,允许接收控制SETBESSETBEA ;开中断LOOP:ACALLSOUT ;键盘扫描并发送,等待中断SJMPLOOPSERVE JNB RI,SEND ;判断是发送中断还是接收中断,若为发送中断则调用 ACALLSIN ;发送子程序,否则调用接收子程序RETISEND:CLRTI ;发送子程序RETISIN:CLRRI ;接受子程序MOVSCON, #00HMOVA, SBUF ;接收数据LCALLXS ;调用显示子程序RETI子程序:SOUT:CLRTI ;清发送中断标志位LCALLKEY ;调用判断按键是否按下子程序MOVA,R0 ;将按键对应的数字存入AMOVSBUF,A ;输出按键数字给锁存 RETKEY:MOVP1,#0FFH ;将P1设置为输入口MOVA, P1CPLA ;将A内值取反ANLA, #0FFH JZ KEY ;将A与FFH与后判断是否为0,若为0则表示无按键按下跳回KEYLCALL D ;调用延时子程序消抖MOVA, P1CPLAANLA, #0FFHJZKEYMOVB,A ;判断有按键按下,将值赋给BKEY1:MOVA, P1CPLAANLA,#0FFHJNZ KEY1LCALLDMOVA,BJBACC.0,PKEY1 ;依次判断A内数据每个位是否为1,并跳JBACC.1,PKEY2 ;转到相对应位的子程序JBACC.2,PKEY3JBACC.3,PKEY4JBACC.4,PKEY5JBACC.5,PKEY6JBACC.6,PKEY7JBACC.7,PKEY8EKEY:RETPKEY1:AJMPK1PKEY2:AJMPK2PKEY3:AJMPK3PKEY4:AJMPK4PKEY5:AJMPK5PKEY6:AJMPK6PKEY7:AJMPK7PKEY8:AJMPK8 K1:MOVR0,#01H ;将相应的数据赋给R0后跳转到EKEYSJMPEKEYK2:MOVR0,#02HSJMPEKEYK3:MOVR0,#03HSJMPEKEYK4:MOVR0,#04HSJMPEKEYK5:MOVR0,#05HSJMPEKEYK6:MOVR0,#06HSJMPEKEYK7:MOVR0, #07HSJMPEKEYK8:MOVR0, #08HSJMPEKEY XS:MOVSCON,#00H ;显示子程序,采用同步移位寄存器 CLRTI MOV DPTR, #TAB MOVCA,A+DPTR ;将相应数值的数码管显示数值送入SBUF MOV R5,#04H ;共四位需要显示 MOV 41H, A MOV R0, #41HDISPLAY1: MOV A,R0 MOV SBUF, A JNB TI,$ ;是否传完了 CLR TI ;清除中断标志位 INC R0 DJNZ R5, DISPLAY1 MOVSCON, #50H RETD: ;延时子程序 MOV R7, #10HDELAY1: MOV R6, #0FFHDELAY2: DJNZ R6, DELAY2 DJNZ R7, DELAY1 RETTAB: DB0BBH, 09H, 0EAH, 6BH DB59H, 73H, 0F3H, 0BH DB0FBH本次实验中解决了如何判断数据是发送还是接收的问题和如何判断数据是否发送或接受完毕的问题,通过实验中的讨论和研究书上关于串行口的内容,我们通过中断标志位和循环很好的解决了这个问题。这个实验让我认识到单片机中中断的巨大作用,它不仅可以省去很多繁琐的设计步骤,还可以帮助我们解决许多设计上的问题。另外,我觉得这是一次较为综合性的实验,按键,消抖,数码管显示,定时,串行口中断,串行口数据的收发这些内容都在本次实验中体现出来了,也算是让我们进行了一个小复习,让我们站在一个更高的平台上去编写程序。主要操作上的问题有两个:问题:PC机可以根据按键的按下显示相应的符号,但是不是预期的数字原因:PC机没有设置十六进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位招聘考试卫生类药学专业知识试卷(药品研发)
- 阿坝职业学院《公差设计》2024-2025学年第一学期期末试卷
- 广东茂名农林科技职业学院《大数据运维》2024-2025学年第一学期期末试卷
- 广东医科大学《框架应用开发》2024-2025学年第一学期期末试卷
- 2025年初级隐私计算工程师必-备知识面试预测题及解析
- 2025年市场营销经理面试宝典市场分析与策略模拟题及参考答案
- 2025年美容美发师中级技能鉴定考试题库及解析
- 黄冈师范学院《数据分析建模》2024-2025学年第一学期期末试卷
- 苏州工业职业技术学院《动画周边产品营销》2024-2025学年第一学期期末试卷
- 陇东学院《建筑力学2》2024-2025学年第一学期期末试卷
- 物业承接查验移交资料清单
- 工信部规《通信建设工程安全生产操作规范》
- 社会组织内部规范化治理课件
- 农村公路建设标准
- GB/T 13825-2008金属覆盖层黑色金属材料热镀锌层单位面积质量称量法
- GA/T 1237-2015人员基础信息采集设备通用技术规范
- 红十字急救培训-包扎课件
- 药物分析实验注意事项课件
- 沙盘游戏治疗课件
- 甘肃省烟花爆竹经营许可实施标准细则
- 企业内部控制基本规范与配套指引
评论
0/150
提交评论