单片机与PC机的串口通信 - 毕业论文(7)
软件设计
机发送数据过来。由于PC机在发送有效数据之前会加一个开始符(FFH),在有效数据之后会加一个开始符(7FH),所以单片机接收到主机发送来的FFH之后,置RAM存贮单元的初始地址30H单元,用来放紧接着接收的数据,程序中还用了一个计数器COUNTER来计接收到的数据位数,直到接收到7FH为止。程序框图见附录2。
单片机接收主程序MAIN及中断服务程序STR清单如下: COUNTER EQU 40H POINT EQU 41H ORG 0000H LJMP MAIN ORG 0023H LJMP SRT
MAIN:MOV SP,#60H
MOV TMOD,#20H ;定时器T1的方式2 MOV PCON,#00H ;串行口波特率控制位 MOV TH1,#0F4H ;2400Kb/s MOV TL1,#0F4H MOV 30H,#15
MOV COUNTER,#1
MOV R0,#30H ;接收数据存放区 MOV R1,#30H
SETB TR1 ;开始计数 CLR ET1 ;清定时中断
MOV SCON,#50H ;串行口控制寄存器给值 SETB EA ;开总中断 SETB ES ;开串行口中断 MOV IP,#10H MAIN1: ACALL DISP SJMP MAIN1 SRT: PUSH ACC PUSH 01H JBC RI,GET
SJMP EXIT GET: MOV A,SBUF
CJNE A,#0FFH,GET1 ;判断是否为开始字符,不是跳GET1放数据存贮 R0,#30H ;是开始符就置存贮区首地址30H,计数器清0并跳出中断 MOV COUNTER,#0 SJMP EXIT
GET1: CJNE A,#07FH,GET2 判断是否为结束符,不是跳GET2放数据存贮区 MOV R5,COUNTER ;是结束符,放发送缓存区开始字符 INC R5
第 31 页 (共 43 页)
MOV
PC机与MCS-51单片机的串口通信
MOV POINT,#30H MOV SBUF,#255 SJMP EXIT GET2: MOV @R0,A INC R0
INC COUNTER EXIT: POP 01H POP ACC RETI
6.1.2 单片机中断方式发送程序
由于本次设计的系统要实现的功能是将PC机送到单片机的数据回送到PC机,所以单片机要在接收完PC机数据后立即将数据回送到PC机。也就是说要将RAM存贮单元的初始地址30H单元内数据逐一发送出去。程序框图见附录2。
单片机发送主程序MAIN及中断服务程序SEND清单如下:
COUNTER EQU 40H POINT EQU 41H ORG 0000H LJMP MAIN ORG 0023H LJMP SRT
MAIN:MOV SP,#60H
MOV TMOD,#20H ;定时器T1的方式2 MOV PCON,#00H ;串行口波特率控制位 MOV TH1,#0F4H ;2400Kb/s MOV TL1,#0F4H MOV 30H,#15
MOV COUNTER,#1
MOV R0,#30H ;接收数据存放区 MOV R1,#30H
SETB TR1 ;开始计数 CLR ET1 ;清定时中断
MOV SCON,#50H ;串行口控制寄存器给值 SETB EA ;开总中断 SETB ES ;开串行口中断 MOV IP,#10H MAIN1: ACALL DISP SJMP MAIN1 SRT: PUSH ACC
第 32 页 (共 43 页)
软件设计
PUSH 01H
JBC RI,GET ;判断是否为接收,是跳GET接收程序,否执行发送程序 CLR TI DJNZ R5,SEND1 SJMP EXIT
SEND1: MOV R1,POINT MOV A,@R1 MOV SBUF,A INC R1 MOV POINT,R1 SJMP EXIT EXIT: POP 01H POP ACC RETI
6.1.3 单片机显示程序
单片机显示部分可以用来检测接收到的数据是否正确,单片机显示程序主要
将接AT89C51从串行口收到的数据显示出来。在程序设计中,在AT89C51RAM存贮器中的四个显示缓冲器单元30H-34H,分别存放着由PC机方发送过来的数据,AT89C51的P2口扫描输出总是只有一位为高电平,即4位显示器中仅有一位公共阴极为低电平,其它位为高电平,AT89C51的P0口相应位(阴极为低)的显示数据的段数据,使该位显示出一个字符,其它们为暗,依次地改变P2口输出为高的位,P0口输出对应的段数据,4位显示器就显示出由缓冲器中显示数据所确定的字符。程序框图见附录2。
单片机显示子程序清单如下:
DISP: PUSH ACC MOV DPTR,#TAB MOV R1,#30H
MOV A,COUNTER
JZ DISP2 ;没有接收到数据,跳出DISP继续显示P.等待状态 MOV R2,A MOV R6,#08H DISP1:MOV A,@R1 CPL A ANL A,#0FH
MOVC A,@A+DPTR
MOV P0,A ;送字形码到P0口 MOV A,R6
第 33 页 (共 43 页)
PC机与MCS-51单片机的串口通信
MOV P2,A ;送位控制到P2口 RR A
MOV R6,A DJNZ R7,$ INC R1 DJNZ R2,DISP1 ;判断接收位数 DISP2:MOV R1,#30H POP ACC RET
TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH DB 77H,7CH,39H,5EH,79H,0F3H
END
6.2 PC机通信程序设计
PC通信程序采用Visual Basic语言编程,VB提供了串行端口控制Mscomm来为应用程序提供串行通讯。该控件屏蔽了通信过程中的底层操作,我们可以设置、监视Mscomm控件的属性和事件,结合Timer控件即可完成对串行口的初始化和数据的输入输出工作。主程序按照通信协议的要求,首先确定波特率和信息帧格式,然后调用发送子程序将键盘输入的数据发送出去,为了使主机能够对整个检测过程进行控制,须要在发送命令以后设定等待的时间,也可以通过条件判断下一步是发送还是接收命令。对发送的命令,可能是文本方式或二进制代码。在发送二进制代码时,应特别注意发送的格式。
第 34 页 (共 43 页)
系统调试
7 系统调试
电路调试是整个系统功能否实现的关键步骤,我们将整个调试过程分为三大部分:硬件调试、软件调试和综合调试。
7.1 硬件调试
硬件调试主要是针对单片机、红外通信电路(包括发射和接收电路)以及PC机部分(包括电平转换电路)硬件电路分别进行调试。这一部分硬件调试主要分成两大块:上电前的调试和上电后的调试。 一、上电前的调试
在上电前,我们必须确保电路中不存在断路或短路情况,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要使用的工具是万用表,用来完成检测电路中是否存在断路或者短路情况等。 二、上电后的调试
在确保硬件电路正常,无异常情况(断路或短路)方可上电调试,上电调试的目的是检验电路是否接错,同时还要检验原理是否正确,在本次课程设计中,上电调试可分成三大块:单片机、红外通信和PC机部分的硬件调试。
1、单片机部分硬件调试:这一部分调试主要是检查时钟电路、复位电路是否接对,数码管是否亮这一系列问题。
2、红外通信电路调试:由于SM0038固定频率是38KHZ,我们是将单片机发送端接地,红外线发射器发射红外光,将红外线接收器正对发射器,距离约0.5m,用万用表的电压档接于红外线接收器的OUT脚与地之间。当发射器的频率与接收器不相吻合时,电压输出在+3.6v左右;吻合时,输出电压约为0v。调整R1见附录(电路原理图)之值(R1用15~20kΩ),直到万用表测出的电压接近0v,在实际 …… 此处隐藏:1767字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [互联网资料]2022年厦门大学机电工程系824机械设计
- [互联网资料]东南大学2022年硕士研究生拟录取名单公
- [互联网资料]能源调研报告(精选多篇)
- [互联网资料]初三英语下学期 中考英语 语法填空训练
- [互联网资料]2022内蒙古选调生行测常识备考:新事物
- [互联网资料]自驾必备!在新西兰租什么样的车自驾游
- [互联网资料]佛教素食菜谱44页未完
- [互联网资料]盈利能力分析外文翻译
- [互联网资料]2022年南昌航空大学音乐学院736马克思
- [互联网资料]优选外贸跟单实习报告总结(精品版)
- [互联网资料]银行新员工培训总结
- [互联网资料]2_year_visa_new_guidance_190316
- [互联网资料]天津市五校宝坻一中静海一中杨村一中芦
- [互联网资料]2007--2008学年第一学期高三数学宁波市
- [互联网资料]Chromatic framework for vision in ba
- [互联网资料]幼儿园大班上学期美术教案《心愿树》含
- [互联网资料]2022年华中农业大学信息学院820微型计
- [互联网资料]硬盘坏道的表现 __硬盘使用久了
- [互联网资料]江苏省2016年会计从业资格考试《会计基
- [互联网资料]公共场所卫生监督试卷全解
- 高级英语第一册所有修辞方法及例子总结
- 综合交通枢纽规划与城市发展
- 沃尔玛的企业文化案例分析
- 美国Thanksgiving Day 感恩节 介绍
- PEP六年级英语上册Unit6How do you fee
- 最齐全的中国大型商场购物中心名单
- 数据结构实验报告八—哈夫曼编译码
- 杭州市余杭区人民政府(通知)
- 七年级语文成语运用专项训练
- 微观经济学第三章 消费者行为 课后习题
- 对_钱学森之问_的思考
- Excel_三级联动_下拉菜单
- 办公用品需求计划申请表
- 对外汉语教材必须要知道的发展史
- 挑战杯大学生学术科技作品竞赛作品申报
- 举办民办教育培训机构应具备下列条件
- 太阳能路灯项目设计方案
- 2013年八年级上最新人教版新教材Unit3I
- 【历史】 6-4 《近代科学之父牛顿》 课
- 高中生物《第四章 第二节 探讨加酶洗衣




