基于单片机多机三机通信仿真设计-学习笔记
主机功能:按下S1,从机1灯亮;按下S2,从机1灯灭;
按下S3,从机2灯亮;按下S4,从机2灯亮;
按下key2,从机1和从机2同时灯亮;
按下key3,从机1和从机2同时灯灭;
接 线: 主机P3^0(RXD)分别接从机1和从机2的P3^1(TXD);
主机P3^1(TXD)分别接从机1和从机2的P3^0(RXD);
从机1和从机2共地;
主机P1^7接地,使矩阵键盘S1-S4为独立键盘使用。

#include<reg51.h>
#include<string.h>
#define addr 0x01//从机1的地址
#define _SUCC_ 0x0f//数据传送成功
#define _ERR_ 0xf0//数据传送失败
unsigned char aa=0xff;//主机与从机之间通信标志
unsigned char Buff[20];//数据缓冲区
//串口初始化函数
void init()
{
TMOD=0x20; //定时器1工作于方式2
TH1=0xfd;
TL1=0xfd; //波特率为9600
PCON=0;
SCON=0xd0; //串口工作于方式3
TR1=1; //开启定时器
TI=0;
RI=0;
}
//接收数据函数
unsigned char RECE_data(unsigned char *Buff)
{
unsigned char i,temp;
unsigned char lenth;
unsigned char check;

浙公网安备 33010602011771号