单片机双机串口通信说明.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机双机串口通信说明 20080202033 任务: 设计一个两个单片机的串口通信的电路,甲机有8个灯显示,乙机有两个按键。 双机通信的收、发双方必须按照约定好的方式、速率来传输信息。甲机发送的数据就是按键的状态,按键按下时乙机的1、3、5、7灯亮,再按下是2、4、6、8灯亮。乙机一直处于等待接收状态,一旦接收到标志位数据,就根据标志状态来决定是1、3、5、7亮还是2、4、6、8亮。 硬件电路图: 3.硬件调试 1)、分别输入源程序,一台输入发光程序1.asm, 另一台输入接收程序2.asm. 2)、汇编源程序。 3)、首先运行乙机的接收程序,观察发光二级管状态。 4)、然后运行甲机的发送程序,重复按下控制按键,观察乙机电路中发光二极管的灯亮状态,如果显示状态不正确,可用断点运行等方式查看问题具体出现在哪里。 4.编程控制: 1)、总体介绍: 程序包括甲机程序、乙机程序; ①.甲机程序:串行口为方式1,10位为一帧,按键的安置,定时器,标志位里的数据寄存器PSW的内容的发送,数据的发送,检查数据是否发送,发送完成则继续检测按键状态。 ②.乙机程序:串行口、定时器设置与甲机相同,数据接收,检查数据接收完毕后送到累加器,判断按键来确定发光二极管的发光情况。完成一次后准备接收下一个数据,循环运行。 2)、具体程序: 甲机 org 0000h ajmp main org 0100h ;定时器中断的入口地址 main:mov scon,#40h ;串行口为方式1,10为一帧 mov tmod,#20h ;定时器t1为方式2 mov tl1,#0f4h ;设置定时器为初始值 mov th1,#0f4h setb tr1 clr f0 mov p2,#0ffh wait1:jb p2.0,$ ;查询按键是否按下,无键按下继续等待 cpl f0 ;标志位取反 mov a,psw ;将含有标志位f0的寄存器psw内容送给a anl a, ;屏蔽无关位 mov sbuf,a ;将a送sbuf发送数据 wait2:jbc ti,cont ;检测数据是否发送完毕 ajmp wait2 ;未完继续等待发送 cont:sjmp wait1 ;发送完成则继续检测按键状态 end 乙机 org 0000h ajmp main org 0100h ;定时器中断的入口地址 main:mov scon,#40h ;串行口为方式1,10为一帧 mov tmod,#20h ;定时器t1为方式2 mov tl1,#0f4h ;设置定时器为初始值 mov th1,#0f4h setb tr1 setb ren wait:jbc ri,read ajmp wait read:mov a,sbuf jb acc.5,l2 l1:mov p1, sjmp wait l2:mov p1, cont:sjmp wait ;发送完成则继续检测按键状态 end 5.流程图: 6.心得体会: 本次设计是通过两块简单的89C51单片机实现信息的串口通信。设计过程中,从双机通信背景的了解,到89C51单片机具体功能的了解,与89C51单片机的区别;从串口通信的原理的熟悉,到掌握具体串口通信在双机之间的实现;从硬件电路设计到程序编写;从硬件调试到软件模拟实现等过程在自己的努力和老师的亲切指导下,都是有条不紊地进行。?? 设计中,收获不少东西,也遇到了不少的问题。首先,在完成单片机课程学习任务后,对内容的掌握不够,缺乏灵活运用的能力,对于知识的扩展也存在一定的问题,因此,初面对设计课题,无法系统地进行设计思路的拟定。其次,一个学期的学习,在巩固和学习硬件知识的同时,用软件控制协调硬件实现现实功能,通过硬件完成软件的功能等方面的融会贯通,取得了一定的效果。再者,硬件设计过程中,I/O口的扩展,外部ROM的扩展,对于芯片的选择,软件编写时,对于某些指令的功能,功能模块的连接,芯片地址选择等都遇到了很大的障碍,不过在老师帮助和自己查阅资料得到了解决,与此同时,了解了不少的问题。另外,设计中犯一些常识性的错误,对设计进程造成了一定的影响。例如,程序调试时

文档评论(0)

湘雅书斋 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:5220142302000001

1亿VIP精品文档

相关文档