feat: RS485透传改为Modbus RTU Master轮询寄存器41161报警信号
This commit is contained in:
34
Core/Inc/modbus_rtu_master.h
Normal file
34
Core/Inc/modbus_rtu_master.h
Normal file
@ -0,0 +1,34 @@
|
||||
#ifndef __MODBUS_RTU_MASTER_H
|
||||
#define __MODBUS_RTU_MASTER_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include "stm32f1xx_hal.h"
|
||||
|
||||
#define MODBUS_RTU_SLAVE_ADDR 1
|
||||
#define MODBUS_RTU_TARGET_REG 1160
|
||||
#define MODBUS_RTU_REG_QTY 1
|
||||
#define MODBUS_RTU_POLL_INTERVAL 1000
|
||||
#define MODBUS_RTU_RESP_TIMEOUT 500
|
||||
#define MODBUS_RTU_INTER_CHAR_TIMEOUT 10
|
||||
#define MODBUS_RTU_TX_ECHO_MARGIN 10
|
||||
|
||||
#define NORIS_FIRE_ALARM(reg) (((reg) >> 4) & 0x01)
|
||||
#define NORIS_DOOR_ALARM(reg) (((reg) >> 5) & 0x01)
|
||||
#define NORIS_BILGE_ALARM(reg) (((reg) >> 6) & 0x01)
|
||||
#define NORIS_GAS_ALARM(reg) (((reg) >> 7) & 0x01)
|
||||
|
||||
#define MODBUS_RTU_MAX_RX_BUF 64
|
||||
|
||||
void ModbusRTU_Master_Init(void);
|
||||
void ModbusRTU_Master_Task(void);
|
||||
void ModbusRTU_FeedRxByte(uint8_t byte);
|
||||
uint8_t ModbusRTU_GetAlarmState(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user