1、I 摘摘 要要 随着电子技术的发展和微处理器技术的应用,带有单片机的智能型测控系统 的应用越来越广泛,多个单片机系统之间数据传输已经应用于工业、科研、农业 等领域,而单片机之间的数据通信最常用的就是串口通信方式,串口通信可以在 使用一根线发送数据的同时利用另一根线接收数据, 使用简单且能实现远距离通 信。 本文介绍了一种单片机多机通信的设计方法,主机与从机之间通过串口实现 通信,主机通过按键来选择要进行通信的从机,然后通过数字矩阵键盘控制从机 的数码管显示数字 0-9,同时该从机返回自己的地址,实现全双工通信。 本文介绍的方法简单易懂,通过仿真基本上实现了上述功能,操作简单,性 能稳定,可广泛
2、应用于各种多机通信系统中。 关键词:单片机;串口通信;C 语言;矩阵键盘 II 目 录 1 设计任务. 1 2 设计方案 . 1 2.1 设计任务 1 2.2 串行通信简介 . 2 3.系统硬件设计. 2 3.1 接口设计 2 32 主机电路模块设计 . 3 3.3 从机电路模块 . 5 3.4 矩阵键盘电路 . 6 4 系统软件设计. 6 4.1 软件设计应用环境 6 4.2 软件设计流程 . 7 4.3 按键程序设计 . 8 4.4 串口通信 8 4.5 从机数码管显示程序设计 .10 5 仿真与性能分析. 10 5.1 系统仿真过程 10 5.2 仿真结果 .10 6 心得体会. 11
3、参考文献 12 附录 1 系统原理图 12 附录 2 程序清单 13 1 1 设计任务设计任务 多机串行通信的设计基本任务 1. 设计三个单片机实现主从式串行通信的系统,主机发送数据到从机,并在 LED 数码管上 显示。 2. 可通过接在主机上的键盘输入数据,通过主机发送到从机。 选做 3. 通信协议遵从 modbus。 4其他功能(创新部分) 仿真模块例 2 设计方案设计方案 2.1 设计任务设计任务 本文在研究传统的多机通信系统的基础上,设计了一种基于 MCS51 系列单片机 A T89C51 的多机通信系统。打开 proteus 仿真电路图,按下软件下方的“开始”图标,启动 系统,按下“
4、1 号机”按键,主机与从机 1 接通,通过主机外接的 4*4 矩阵键盘控制从机 1 的数码管,按下标号为 0-9 的按键时,对应从机 1 的数码管显示 0-9,按下“2 号机”按键, 主机与从机 2 接通,通过主机外接的 4*4 矩阵键盘控制从机 2 的数码管,按下标号为 0-9 的 按键时,对应从机 2 的数码管显示 0-9。 系统分析 2 2.2 串行通信简介串行通信简介 串行通信可以分为同步通信和异步通信两类。 同步通信是一种连续串行传送数据的通信方式, 一次通信只传送一帧信息。 这里的信息 帧与异步通信中的字符帧不同,通常含有若干个数据字符。它们均由同步字符、数据字符和 校验字符(CRC)组成。其中同步字符位于帧开头,用于确认数据字符的开始。数据字符在 同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有 1 到 2 个,用 于接收端对接收到的字符序列进行正确性的校验。 同步通信的缺点是要求发送时钟和接收时 钟保持严格的同步。 异步通信中,在异步通行中有两个比较重要的指标:字符帧格式和波特率。数据通常以 字符或者字节为单位组成字符帧传送。 字符帧由