单片机多机通信课程设计.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
1设计任务 多机串行通信的设计基本任务 1.设计三个以上单片机实现主从式串行通信的系统,主机发送数据到指定站号的从机端 ,也可以群发到所有从机端,并在LED数码管上显示。 2.可通过接在主机上的键盘输入数据,通过主机发送到从机。 3.从机也可输入数据,并可在查询到主机空闲时将数据发送给主机。 4*.从机间可相互通信(从机—)主机(另一从机),通信协议遵从modbus规范。 4@. 其他功能(创新部分) 仿真模块例 2设计方案 2.1设计任务 本文在参考了现在普遍的多机通信系统的基础上,设计了一种基于51单片机STC89C5 1的多机通信系统。在proteus上设计并仿真电路图。进入proteus程序仿真,启动程序系 统,首先主机通过按键选择准备通信的从机,接通后,主机通过矩阵键盘上的数字按键 与从机通信,使从机上的数码管显示对应的数字,以此实现多机通信。如,与2号机通信 并传输"8"这个数字。首先主机从选择从机按键上按"2号机"键,与2号机连通后按下主机 矩阵键盘上的"8"键,对应的2号机数码管上会显示数字"8",证明通信成功。 2.2串行通信简介 串行通信可以分为同步通信和异步通信两类。 同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信 息帧与异步通信中的字符帧不同,通常含有若干个数据字符。它们均由同步字符、数据 字符和校验字符(CRC)组成。其中同步字符位于帧开头,用于确认数据字符的开始。数 据字符在同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有 1到2个,用于接收端对接收到的字符序列进行正确性的校验。同步通信的缺点是要求发 送时钟和接收时钟保持严格的同步。 异步通信中,在异步通行中有两个比较重要的指标:字符帧格式和波特率。数据通常 以字符或者字节为单位组成字符帧传送。字符帧由发送端逐帧发送,通过传输线被接收 设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时 钟源彼此独立,互不同步。接收端检测到传输线上发送过来的低电平逻辑"0"(即字符帧 起始位)时,确定发送端已开始发送数据,每当接收端收到字符帧中的停止位时,就知 道一帧字符已经发送完毕。 串口通信最重要的参数是波特率、起始位、数据位、停止位和奇偶校验。 波特率:是一个衡量通信速度的参数,表示每秒钟传送的bit的个数。 起始位:当通信线上没有数据被传送时处于逻辑"1"状态,当发送设备要发送一个数 据时,先发送一个逻辑"0"信号,这个低电平就是起始位,起始位通过通信线传向接收设 备,接收端检测到这个低电平后,就确认开始接收数据了。起始位的作用是使通信双方 在传送数据前协调同步。 数据位:是衡量通信中实际数据位的参数,当计算机发送一个信息包,实际的数据不 会是8位的,标准的值是5、7或8位,如何设置取决于要传送的信息。每个包是指一个字 节,包括开始/停止位、数据位和奇偶校验位,由于实际数据位取决于通信协议的选取, 术语"包"指任何通信的情况。 停止位:用于表示单个包的最后一位。典型的值为1、1.5和2位,它是一个数据的结 束标志,接收端接收到停止位后,通信线路上会回复逻辑"1"的状态,知道下一个起始位 的到来。 奇偶校验位:在串行通信中一种简单的检错方式,有四种方式:偶、奇、高和低。对 于偶和检验的情况,串口会设置检验位,用一个值确保传输的数据有偶个或者奇个逻辑 高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验,这样使得接收 设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数 据是否不同步。 3.系统硬件设计 3.1接口设计 MCS- 51单片机具有多机通信功能,利用它可以构成分布式系统,电路结构如图3.1所示 图3.1电路结构 本设计单片机之间通过串口进行通信,主机通过按键来选择要进行通信的从机,进而 通过按键控制从机的数码管显示数字。 数码管与单片机的连接方式采用并行连接方式。系统设计框图如图3.2所示: 图3.2系统设计框图 3..2主机电路模块设计 3.2.1 单片机简介 AT89C51单片机内部主要由9个部件组成:1个8位中央处理器;4KBFlash存储器;12 8B的数据存储器;32条I/O口线;2个定时器/计数器;1个具有6个中断源、4个优先级的 中断嵌套结构;用于多处理机通信、I/O扩展或全双工UART的串行口;特殊功能寄存器; 1个片内振荡器和时钟电路。AT89S51系列单片机完全继承了MCS- 51的指令系统,共有111条指令,按其功能可分为五大类:数据传送类指令、算术运算类 指令、逻辑运算类指令、控制转移类指令、布尔操作。AT89C51单片机引脚如图3.3所示 。 图3.3AT89C51单片机引脚图 管脚说明: P0口:8位、漏极开路的双向 【单片机多机通信课程设计】涉及到的主要知识点如下: 1. **多机通信系统**:设计任务中提到了一个由三个以上单片机组成的主从式串行通信系统,主机能够向特定从机发送数据,也可以广播到所有从机,并在LED数码管上显示数据。这种通信模式常用于分布式系统中,提高数据交换的效率。 2. **串行通信**:串行通信分为同步通信和异步通信。同步通信一次传递一帧包含多个数据字符的信息,要求发送和接收时钟严格同步。异步通信则允许独立的时钟源,通过起始位、数据位、停止位和奇偶校验位来保证数据的正确传输。 3. **波特率**:波特率决定了通信的速度,即每秒传输的bit数量,是串行通信的重要参数。 4. **起始位和停止位**:起始位用于同步接收端,标志着数据传输的开始;停止位作为数据包的结束标志,让接收端知道数据传输已完成。 5. **数据位**:实际传输的数据位数,根据需要可以选择5、7或8位等。 6. **奇偶校验位**:提供简单的错误检测,通过设置奇偶校验,确保传输的数据有偶数或奇数个高电平位。 7. **单片机硬件设计**:MCS-51单片机具有多机通信功能,可用于构建分布式系统。本设计中,单片机之间通过串行口通信,主机通过按键选择通信从机,并控制从机的数码管显示。 8. **AT89C51单片机**:它是8位微控制器,包含CPU、存储器、I/O口线、定时器/计数器、中断系统、串行口等功能。它的指令系统包括数据传送、算术运算、逻辑运算、控制转移和布尔操作等五大类。 9. **接口设计**:数码管与单片机采用并行连接,而单片机之间则通过串行口进行通信。系统设计中,主机电路模块包括单片机的选择、通信控制以及与外部设备(如键盘和数码管)的交互。 10. **通信协议**:从机间的通信遵循Modbus规范,这是一套广泛应用于工业自动化领域的通信协议,允许设备间的透明通信。 这个课程设计涵盖了单片机系统设计、串行通信协议、硬件接口设计以及通信协议的应用等多个核心领域,是学习和实践单片机通信技术的良好案例。
剩余20页未读,继续阅读
- m0_697922322023-12-18总算找到了想要的资源,搞定遇到的大问题,赞赞赞!
- 糖吃了鱼吗?2023-06-12发现一个宝藏资源,赶紧冲冲冲!支持大佬~
- 2301_818515122023-12-24感谢大佬分享的资源,对我启发很大,给了我新的灵感。
- 2301_774852052023-12-10果断支持这个资源,资源解决了当前遇到的问题,给了新的灵感,感谢分享~
- xinghua_57011982023-12-22资源中能够借鉴的内容很多,值得学习的地方也很多,大家一起进步!
- 粉丝: 198
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助