shuichan_new/STM32F103_App1/HardWare/RELAY/ext_relay.h

27 lines
917 B
C
Raw Normal View History

#ifndef EXT_RELAY_H
#define EXT_RELAY_H
#include "main.h"
#include <stdint.h>
/* 485 <20><>չ<EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD>(4 ·<><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>), Modbus RTU <20>ӻ<EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>سӹ<D8B3><D3B9><EFBFBD> USART2 <20><><EFBFBD><EFBFBD>
* Э<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Docs/RS485<EFBFBD><EFBFBD>չ<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>.md */
#define EXT_RELAY_ADDR 0x10 /* <20>ӻ<EFBFBD><D3BB><EFBFBD>ַ(<28><><EFBFBD>س<EFBFBD><D8B3><EFBFBD> 0x01) */
#define EXT_RELAY_CH 4
/* app_task 10ms <20><><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>: <20><><EFBFBD><EFBFBD><EEB7A2><><D3A6>У<EFBFBD><D0A3>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ */
void ext_relay_process(void);
/* 485 ֡<>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>(feed_scale ͳһ<CDB3><D2BB>֡<EFBFBD><D6A1><EFBFBD><EFBFBD>վ<EFBFBD>ŷַ<C5B7>) */
void ext_relay_on_frame(const uint8_t *buf, uint16_t len);
/* <20>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ch=1~4, on=1 <20><><EFBFBD><EFBFBD> 0 <20>Ͽ<EFBFBD>;
* cmd_id Ϊƽָ̨<EFBFBD><EFBFBD> id(<EFBFBD><EFBFBD><EFBFBD>ɺ<EFBFBD>Ӧ<EFBFBD><EFBFBD>), NULL=<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>) */
void ext_relay_cmd(uint8_t ch, uint8_t on, const char *cmd_id);
uint8_t ext_relay_online(void); /* <20><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>й<EFBFBD><D0B9>ɹ<EFBFBD>Ӧ<EFBFBD><D3A6>) */
uint8_t ext_relay_state_mask(void); /* bit0~3 = <20>̵<EFBFBD><CCB5><EFBFBD>1~4 <20><><EFBFBD><EFBFBD>״̬(1=<3D><><EFBFBD><EFBFBD>) */
uint8_t ext_relay_fault_mask(void); /* bit0~3 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>־ */
#endif /* EXT_RELAY_H */