📄 serial.h
字号:
/***********************************************************//* Copyright (c) 2007,安徽继远电网 *//* All rights reserved. *//* *//* 文件名称:serial.h *//* 内容摘要:串口有关的数据类型,函数接口,宏定义等 *//* 当前版本:1.0 *//* 作 者:金明 *//* 完成日期:2007年6月 *//* *//* 修改记录: *//* 修改日期 版本号 修改人 修改内容 *//***********************************************************/#ifndef _SERIAL_H#define _SERIAL_H#include "common.h"#include "localtype.h"/*串口端口号*/#define SERIALONE 0x00#define SERIALTWO 0x01#define SERIALTHR 0x02#define SERIALFOR 0x03#define SERIALFIV 0x04#define SERIALSIX 0x05#define SERIALSEV 0x06#define SERIALEGI 0x07/*定时器设置参数*/#define TIMEINTER 0x01 //定时器时间间隔 单位:分钟#define METERYMINTER 0x01 // 电表YM间隔 单位:分钟#define METERYXINTER 0x15181 // 电表YX间隔 单位:天#define METERYCINTER 0x15181 // 电表YC间隔 单位:秒/*控制域的功能码宏启动站向从动站*/#define REQ_LINKRESTOR 0x0 // 远方链路复位#define REQ_PORRESTOR 0x1 // 用户链路复位#define REQ_USERDATA 0x3 // 用户数据 要确认#define NREQ_USERDATA 0x4 // 用户数据 无应答帧#define REQ_RESPBIT 0x8 // 要求访问位响应#define REQ_LINKSTATUS 0x9 // 请求链路状态#define REQ_CLASS1 0xA // 请求1级数据#define REQ_CLASS2 0xB // 请求2级数据/*控制域的功能码宏从动站向启动站*/#define CON_ARRFIMR 0x0 // 认可:肯定认可#define CON_NEGATIVE 0x1 // 认可:否定认可#define RESP_USERDATA 0x8 // 用户数据#define RESP_NEGATIVE 0x9 // 否定认可:无请求数据#define RESP_LINKSTAT 0xB // 链路状态或要求访问 /* 类型标识的语义-在监视方向上的过程信息* Type identification: UI8[1..8] <0..69> */#define M_SP_TA_2 1#define M_IT_TA_2 2#define M_IT_TB_2 3#define M_IT_TC_2 4#define M_IT_TD_2 5#define M_IT_TE_2 6#define M_IT_TF_2 7#define M_IT_TG_2 8#define M_IT_TH_2 9#define M_IT_TI_2 10#define M_IT_TK_2 11#define M_IT_TL_2 12#define M_IT_TM_2 13/* <14..69> reserve d *//* 类型标识的语义-在监视方向上的系统信息* Type identification: UI8[1..8] <70..79> */#define M_EI_NA_2 70#define M_MP_NA_2 71#define M_TI_TA_2 72/* <73..79> reserved *//* 类型标识的语义-在控制方向上的系统信息* Type identification: UI8[1..8] <100..127> */#define C_RD_NA_2 100 // 读制造 厂和产品规范#define C_SP_NA_2 101 // 读带时标的单点信息的记录#define C_SP_NB_2 102 // 读一个所选定时间范围的带时标的单点信息的记录#define C_TI_NA_2 103 // 读电能累计量数据终端设备的当前系统时间#define C_CI_NA_2 104 // 读最早累计时段的记帐电能累计量#define C_CI_NB_2 105 // 读最早累计时段的和一个选定的地址范围记帐电能累计量#define C_CI_NC_2 106 // 读一个指定的过去累计时段的记帐电能累计量#define C_CI_ND_2 107 // 读一个指定的过去累计时段和一个选定的范围的记帐电能累计量#define C_CI_NE_2 108 // 读周期地复位的最早累计时段的记帐电能累计量#define C_CI_NF_2 109 // 读周期地复位的最早累计时段和一个选定的地址范围记帐电能累计量#define C_CI_NG_2 110 // 读一个指定的过去累计时段的周期地复位的记帐电能累计量#define C_CI_NH_2 111 // 读一个指定的过去累计时段和一个选定的地址范围的周期地复位的记帐电能累计量#define C_CI_NI_2 112 // 读最早累计时段的运行电能累计量#define C_CI_NK_2 113 // 读最早累计时段的和一个选定的地址范围运行电能累计量#define C_CI_NL_2 114 // 读一个指定的过去累计时段的运行电能量#define C_CI_NM_2 115#define C_CI_NN_2 116#define C_CI_NO_2 117#define C_CI_NP_2 118#define C_CI_NQ_2 119#define C_CI_NR_2 120#define C_CI_NS_2 121#define C_CI_NT_2 122#define C_CI_NU_2 123/* <123..127> reserved */#define TIMEOUT 10#define TIMERINT 1#define RS485 1#define DLT645 0#define ALPHA 1//串口处理函数extern int open_serial(struct serial *com);extern int write_to_com(struct serial *com, char * buf, int *len, int mode);extern int read_from_com(int s_fd, char * buf, int len);extern void open_485mode(struct serial *com, BYTE on);extern int set_speed(int fd, short int baudrate)#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -