485mon.h

来自「工业控制及测量领域较为常用的网络之一RS-485。本例通过485总线实现主从机之」· C头文件 代码 · 共 46 行

H
46
字号

#ifndef	_485MON_H 				// 防止485Mon.h被重复引用

#define	_485MON_H

#include <reg52.h>			    // 引用标准库的头文件
#include <stdio.h>
#include <string.h>

#define uchar unsigned char 
#define uint unsigned int
 
#define ACTIVE  	0x11
#define GETDATA  	0x22
#define READY  		0x33
#define SENDDATA	0x44	

#define RECFRMMAXLEN 16 		// 接收帧的最大长度,超过此值认为帧超长错误
#define STATUSMAXLEN 10			// 设备状态信息最大长度	  

uchar DevNo;					// 设备号
xdata uchar StatusBuf[STATUSMAXLEN];

//为简化起见,假设了10位固定的采集数据
#define DATA0  	0x10
#define DATA1  	0x20
#define DATA2  	0x30
#define DATA3  	0x40
#define DATA4  	0x50
#define DATA5  	0x60
#define DATA6  	0x70
#define DATA7  	0x80
#define DATA8  	0x90
#define DATA9  	0xA0

sbit DE = P1^6;			//驱动器使能,1有效
sbit RE = P1^7;			//接收器使能,0有效

void init();					// 系统初始化
void Get_Stat();				// 简化的数据采集函数
bit Recv_Data(uchar *type);		// 接收数据帧函数
void Send(uchar m);					// 发送单字节数据
void Send_Data(uchar type,uchar len,uchar *buf) 	// 发送数据帧函数	
void Clr_StatusBuf();			//  清除设备状态信息缓冲区函数   

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?