- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程设计报告
课程 单片机技术
题目 串口通信-多机通信系统
系 别
年 级 07级 专 业 电子科学与技术
班 级 学 号
学生姓名
指导教师 职 称
设计时间
目 录
1 题设要求分析 1
2 硬件电路的设计 3
2.1 系统的组成 3
2.2 系统的工作原理 3
2.3 硬件电路原理图设计 4
2.4 硬件电路的实现 6
3 软件电路的设计 8
3.1 通信协议的设计 8
3.2 主机程序设计 8
3.3 从机程序设计 12
4 系统的调试与实现 15
4.1 从机模块调试 15
4.2 LED显示模块调试 15
4.3电平转换模块功能调试 15
4.4主机模块功能调试 16
4.5整体设计功能调试 16
参考文献 18
1 题设要求分析
本小组的试验题目如下:
一、任务:
设计实现多台单片机系统之间的串行通信
二、基本要求(难度系数0.8):
(1)设计一个主从式多机通信系统,包含1台主机和3台从机,主机和从机全部为单片机;
(2)选择合适总线接口芯片,正确连接主机和从机;
(3)编程实现分布式数据采集功能,主机可以获取各分机当前AD转换结果,并显示。
三、发挥部分:
(1)完善通信功能。(根据完成情况加分,上限+0.2)
经过本小组成员对本课题认真讨论先做出如下分析:
对课题分析后本小组认为本次实验的目的是就是应用单片的串口通信功能实现一个分布式采集系统。整个系统中包含一片主机和三片从机,主机的任务是实现对三片从机的AD转换结果的采集并在数码管上显示之。这样从硬件的角度上将整个系统分为两个模块——主机模块和从机模块。主机模块中包含单片机模块、led数码管显示子模块和串口电平转换子模块,从机模块则包括单片机子模块、AD转换子模块和串口电平转换子模块。就本次试验而言硬件电路的设计难点在于串口电平转换芯片的选择及其连接,而软件的设计难点在于串口通信协议的制定及相关程序的编写。
实现多机通信方案的实现。不同于双机通信多机通信系统中需要识别通信信息发出者或是接受者是谁。经过查阅资料发现在大多数的多机通信系统中都是才采用地址识别的方法实现的。所谓地址识别方法就是在发送或接受信息前先发送和校验地址帧。就本题目而言,先要对通信系统中的每台机器分配一个唯一的地址作为识别信息。具体的识别过程如下:
首先,从机处于只接收地址帧的状态;
主机发送一帧地址信息;
从机接受到地址帧后,将本机地址与地址帧中的地址进行比较,如果地址相同准备接受数据,否则丢弃当前帧,依然处于只接受地址帧的状态;
主机发送数据帧,相应的从机接受数据,数据传送完毕后,从机继续回到只接受地址帧的状态,在这个过程中其他从机不受影响;
当主机需要与其他从机进行数据传输时,可以再次发送地址帧呼叫从机,重复这一过程[1]。
对于本题而言可通过此过程实现主机对从机的绝对控制。这样在主机中编写一个循环程序就可以实现对三台从机的AD转换结果的不停采集。至于地址帧与数据帧的区别则可通过串口工作方式三下的第九位的置1或置0来实现。在完成通信的基础上,再将采集到的三路结果分别用两个led数码管显示即可试验预期目的。
2 硬件电路的设计
2.1 系统的组成
根据题目分析可知硬件电分为主机模块和从机模块。主机模块中包含单片机子模块、led数码管显示子模块和串口电平转换子模块,从机模块则包括单片机子模块、AD转换子模块和串口电平转换子模块。在主模块中由AT89S51单片机担任主机,六个led数码管担任显示设备和一片MAX485担任串口的电平转换。在整个主机系统中有三个从机模块三个从机模块结构一样,有一片AT89S51单片机担任从机外接一片ADC0809转换芯片和一片MAX485担任串口的电平转换。串口采用单工及异步通信方式。整个硬件结构原如图1所示。
图 1 系统结构原理图
2.2 系统的工作原理
主机AT89S51编程可实现循环访问个从机,当从机接受主机访问后启动AD转换设备ADC0809对外部模拟信号进行转换。当从机获得转换结果后通过串口将其发送到主机,主机接受到转换结果后再将其发送到相应的led数码管显示。
2.3 硬件电路原理图设计
(1)led数码管显示电路 led数码管显示电路如图2所示显示子模块由六个数码管和相应的启动芯片构成。其中每路通道的采集值用量为数码管显示。为了节约单片机的I/O口本题的数码管采用MAX7219芯片。给芯片的优点在于可完成电路的刷新。MAX7219芯片的SEG A-SEG DP为数码管段码接口,DIG0-DIG7为位码接口,CLK、DIN、LOAD分别与单片
文档评论(0)