51
单片机实现的
485
通讯程序
#ifndef
__485_C__
#define
__485_C__
#include
<reg51.h>
#include
<string.h>
#define
unsigned
char
uchar
#define
unsigned
int
uint
/*
通信命令
*/
#define
__ACTIVE_
0x01
//
主机询问从机是否存在
#define
__GETDATA_
0x02
//
主机发送读设备请求
#define
__OK_
0x03
//
从机应答
#define
__STATUS_
0x04
//
从机发送设备状态信æ�?/p>
#define
__MAXSIZE
0x08
//
缓冲区长åº?/p>
#define
__ERRLEN
12
//
任何通信帧长度超è¿?/p>
12
则表示出é”?/p>
uchar
dbuf[__MAXSIZE];
//
该缓冲区用于保存设备状态信æ�?/p>
uchar
dev;
//
该字节用于保存本机设备号
sbit
M_DE
=
P1^0;
//
驱动器使能,
1
有效
sbit
M_RE
=
P1^1;
//
接收器使能,
0
有效