基于 51 单片机的双机串行通信课程设计一、总体设计1 设计目的1.经过设计相关模块充分熟悉 51 单片机的最小系统的组成和原理; 2.经过软件仿真熟悉 keil 和 proteus 的配合使用; 3.经过软件编程熟悉 51 的 C51 编程法律规范; 4.经过实际的硬件电路搭设提高实际动手能力。2.设计要求: 两片单片机之间进行串行通信, A 机将 0x06 发送给 B 机, 在B 机的数码管上静态显示 1, B 机将 0~f 动态循环发送到 A 机, 并在其数码管上显示。3.设计方案: 软件部分, 经过通信协议进行发送接收, A 机先送 0x06(B 机数码管显示 1)给 B 机( B 机静态显示) , 当从机接收到后, 向 B 机发送代表 0-f 的数码管编码数组。B 收到 0x06 后就把数码表TAB[16]中的数据送给从机。二、 硬件设计1.51 单片机串行通信功能图 1.AT89C51( 52) 计算机与外界的信息交换称为通信, 常见的通信方式有两种: 并行通信和串行通信。51 单片机用 4 个接口与外界进行数据输入与数据输出就是并行通信, 并行通信的特点是传输信号的速度快, 但所用的信号线较多, 成本高, 传输的距离较近。串行通信的特点是只用两条信号线( 一条信号线, 再加一条地线作为信号回路) 即可完成通信, 成本低, 传输的距离较远。51 单片机的串行接口是一个全双工的接口, 它能够作为UART( 通用异步接受和发送器) 用, 也能够作为同步移位寄存器用。51 单片机串行接口的结构如下: ( 1) 数据缓冲器( SBUF) 接受或发送的数据都要先送到 SBUF 缓存。有两个, 一个缓存, 另一个接受, 用同一直接地址 99H,发送时用指令将数据送到SBUF 即可启动发送; 接收时用指令将 SBUF 中接收到的数据取出。( 2) 串行控制寄存器( PCON) SCON 用于串行通信方式的选择, 收发控制及状态指示, 各位含义如下: SM0SM1SM2RENTB8RB8TIRISM0,SM1:串行接口工作方式选择位, 这两位组合成 00, 01, 10, 11 对应于工作方式 0、 1、 2、 3。串行接口工作方式特点见下表SM0SM1工作方式功能波特率 0008 位同步移位寄存器( 用于 I/O 扩展) fORC/1201110 位异步串行通信( UART) 可变( T1 溢出率*2SMOD/32) 10211 位异步串行通信( UART) fORC/64 或 fORC/3211311 位异步串行通信( UART) 可变( T1 溢出率*2SMOD/32) SM2: 多机通信控制位。REN: 接收允许控制位。软件置 1 允许接收; 软件置 0 禁止接收。TB8: 方式 2 ...