一.实验目的
1. 掌握 51 单片机串口工作原理。
2. 掌握 51 单片机串口初始化编程。
3. 掌握 51 单片机串口的软硬件编程。
二.实验设备和器件
1.KEIL软件
2.PROTEUS仿真软件
3.伟福实验箱
三.实验内容
(1)编程实现:编程实现:甲、乙双机串行通信,双机的 RXD
和 TXD 相互交叉相连,甲机的 P0 口接 8 个开关,乙机的 P0口接 8 个发光二极管。甲机设置为只发不收的单工方式。要求甲机读入 P0口的 8 个开关的状态后,通过串行口发送到乙机,乙机将接收到的甲机的 8 个开关的状态数据送入 P0 口
- 电路图:
- 代码:
/*甲机(接开关)代码*/
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
void main()
{uchar temp=0;
TMOD=0x20; /*设置定时器T1为方式2*/
TH1=0xfd; /*波特率9600*/
TL1=0xfd;
SCON=0x40; /*方式1只发送,不接收*/
PCON=0x00; /*波特率为9600,SMOD=0*/
TR1=1; /*启动T1*/
P0=0xff; /* P1口为输入*/