没有合适的资源?快使用搜索试试~ 我知道了~
双机通信系统单片机课程设计.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 10 浏览量
2022-07-08
06:19:20
上传
评论
收藏 6.93MB DOC 举报
温馨提示
试读
24页
双机通信系统单片机课程设计
资源推荐
资源详情
资源评论
单片机双机通信系统设计
1
页
1
设计概况 ...........................................................2
1 总体设计 .........................................................3
1.1 设计要求 ..................................................3
1.2 设计方案 ..................................................3
2 双机通信硬件设计 .................................................4
2.1 AT89C51 简介 ..............................................4
2.2 AT89C51 串行口的工作方式 ..................................5
2.3 晶振电路设计 ..............................................8
2.4 复位电路设计 ..............................................8
2.5 接口电路的设计 ............................................9
2.6 输入输出电路设计 ..........................................11
3 双机通信软件设计 ................................................13
3.1 串行通信软件实现 .........................................13
3.2 串行通信程序流程 .........................................13
3.3 程序清单 .................................................16
4 软件仿真 .......................................................20
5 硬件连接 .......................................................21
6 设计总结 .......................................................23
参考文献 ..........................................................24
单片机双机通信系统设计
1
页
2
设计概况
要构成一个较大规模的控制系统,常常需要采用多机控制实现,而 AT89C51
单片机有一个异步通信方式的全双工串行接口,可以方便地构成双机、多机系
统。而串行通信也成为单片机与单片机、单片机与上位机之间进行数据传输的
主要方式,是一种适用于远距离通信的数据传输方式。
串行通信是单片机的一个重要应用。本次课程设计就是要利用单片机来完
成一个系统,实现双片单片机串行通信。通信的结果实用数码管进行显示,数
码管采用查表方式显示。两个单片机之间采用 RS232 进行双机通信。在通信过
程中,使用通信协议进行通信。
关键词:单片机;串行通信;接口
单片机双机通信系统设计
1
页
3
1 总体设计
1.1 设计要求
设计一个单片机双机通信系统,单片机 A 接 1 个 8 位按键开关,单片机 B
接 8 个发光二极管,通过串行通信实现由 A 机拨码开关控制 B 机发光二极管的
亮灭。
1.2 设计方案
本次设计,对于两片 AT89C51,采用 RS-232 进行双机通信。如图 1 所示,
发送方的数据由串行口 TXD 段输出,经过电平转换芯片 MAX232 将 TTL 电平转换
为 RS-232 电平输出,经过传输线将信号传送到接收端。接收方也使用 MAX232
芯片进行电平转换后,信号到达接收方串行口的接收端。接收方接收后,在 LED
二极管上显示接收的对应信息。
图 1 双机通信系统原理框图
软件部分,通过通信协议进行发送接收,发送机先送联络信号给接收机,
当接收机接收到联络信号后,向发送机回答一个应答信号,表示同意接收。发
送机收到应答信号后开始发送数据,每发送一个数据块字节都要计算“校验
和”,假定数据长度为 16 个字节,起始地址为 40H,一个数据块发送完毕后立
即发送“校验和”。接收机接收数据并存入数据缓冲区起始地址也为 40H,每
接收到一个数据字节便计算一次“校验和”,当接收到一个数据块后,在接受
发送机发来的“校验和”,并将它与接收机计算的校验和进行比较。若二者相
等,说明接受正确,接收机回答 00H,发送机结束发送;若二者不等,说明接
受不正确,接收机回答 0FFH,请求重发,发送机重新发送数据一次。接收机接
收到数据后通过发光二极管 LED 显示发送机的发送状态。
晶振电路
复位电路
8 路拨码
开关电路
发
送
机
接
收
机
接口
接口
晶振电路
复位电路
显 示
电路
单片机双机通信系统设计
1
页
4
2 双机通信硬件设计
2.1 AT89C51 简介
AT89C51 是一个带有 4k 字节存储器的单片机,它具有 128 字节内部
RAM;32 个 I/O 口线和;两个 16 位定时/计数器,一个 5 向量两级中断结构,
一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51 可降至 0Hz
的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止 CPU 的
工作,但允许 RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方
式保存 RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一
个硬件复位。如图 2 所示,DIP40 封装的 AT89C51 的各个引脚及其功能。
图 2 AT89C51 单片机引脚封装
AT89C51 单片机各个引脚功能如下:
(1)电源几时钟引脚
•V
CC
(40 号引脚):电源接入引脚
单片机双机通信系统设计
1
页
5
•V
SS
(20 号引脚):接地引脚
•XTAL1(19 号引脚):晶振接入的一个引脚
•XTAL2(18 号引脚):晶振接入的另一个引脚
(2)控制线引脚
•RST/V
PD
(9 号引脚):复位信号输入引脚/备用电源输入引脚
•ALE/
PROG
(30 号引脚):地址锁存允许信号输出引脚/编程脉冲输入引
•
EA
/
PP
V
(31 号引脚):内外存储器选择引脚/片内 EPROM 编程电压输入引
脚
•
PSEN
(29 号引脚):外部程序存储器选通信号输出引脚
(3)I/O 引脚
·P0.0—P0.7(39—32 号引脚):一般 I/O 口引脚/低位地址总线引脚
·P1.0—P1.7(1—8 号引脚):一般 I/O 口引脚
·P2.0—P2.7(21—28 号引脚):一般 I/O 口引脚/高位地址总线引脚
·P3.0—P3.7(10—17 号引脚):一般 I/O 口引脚或第二功能引脚
P3.0(10 号引脚):RXD 串行口输入
P3.1(11 号引脚):TXD 串行口输出
P3.2(12 号引脚):
0INT
外部中断 0 输入
P3.3(13 号引脚):
1INT
外部中断 1 输入
P3.4(14 号引脚):T0 定时器 0 的外部输入
P3.5(15 号引脚):T1 定时器 1 的外部输入
P3.6(16 号引脚):
WR
片外数据存储器“写”选通控制输出
P3.7(17 号引脚):
RD
片外数据存储器“读”选通控制输出
2.2 AT89C51 串行口的工作方式
AT89C51 的串行口是一个可编程全双工的通信接口,具有通信异步接受和
发送的全部功能,能同时进行数据的接收和发送,也可作为同步移位寄存器使
用。
AT89C51 的串行口主要由两个独立的串行数据缓冲寄存器 SBUF(一个发送
缓冲寄存器,一个接收缓冲寄存器),串行口控制寄存器、输入移位寄存器及若
干控制门电路组成。
(1) 串行口数据缓冲寄存器 SBUF
剩余23页未读,继续阅读
资源评论
omyligaga
- 粉丝: 55
- 资源: 2万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功