MW22-02A/APP/Common/comm_resource.h

102 lines
3.1 KiB
C
Raw Normal View History

2025-05-21 01:55:40 +00:00
#ifndef _COMM_RESOURCE_H_
#define _COMM_RESOURCE_H_
#include "common.h"
#include "uart_recv.h"
#define RS485_MAX_PACK_DATA_LEN 50
#define PACK_BUFF_SIZE 50
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>,device->agent
extern OS_EVENT *p_queue_up;
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>,agent->device
extern OS_EVENT *p_queue_down;
/// <20><EFBFBD><E8B1B8>֮<EFBFBD><D6AE>ʹ<EFBFBD><CAB9>
extern BSP_OS_SEM sem_hy_collect_o2;
extern BSP_OS_SEM sem_hy_collect_co;
extern BSP_OS_SEM sem_hy_collect_water;
extern BSP_OS_SEM sem_hy_collect_current;
extern BSP_OS_SEM sem_hy_collect_well;
extern BSP_OS_SEM sem_hy_collect_ch4;
extern BSP_OS_SEM sem_hy_collect_h2s;
extern BSP_OS_SEM sem_hy_collect_temphumi;
/// 485<38><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>
extern BSP_OS_SEM rs485_mutex;
/// 485оƬ<D0BE>շ<EFBFBD><D5B7><EFBFBD><EFBFBD><EFBFBD>--PTC9
#define RD485_SEND (drv_gpio_setbit(PORTC,5))
#define RD485_RECEIVE (drv_gpio_clrbit(PORTC,5))
/*
/// 485Ƭѡ<C6AC><D1A1><EFBFBD>ƺ<EFBFBD>--PTC5
#define CS_RS485_BAT_ENABLE (drv_gpio_clrbit(PORTC,5))
#define CS_RS485_BAT_DISABLE (drv_gpio_setbit(PORTC,5))
#define CS_485_J26_ENABLE (drv_gpio_clrbit(PORTC,8))
#define CS_485_J26_DISABLE (drv_gpio_setbit(PORTC,8))
#define CS_485_J28_ENABLE (drv_gpio_clrbit(PORTC,7))
#define CS_485_J28_DISABLE (drv_gpio_setbit(PORTC,7))
#define CS_485_J27_ENABLE (drv_gpio_clrbit(PORTC,6))
#define CS_485_J27_DISABLE (drv_gpio_setbit(PORTC,6))
#define J26_POWER_ON (drv_gpio_setbit(PORTD,9))
#define J26_POWER_OFF (drv_gpio_clrbit(PORTD,9))*/
#define SENSOR_POWER_ON (drv_gpio_setbit(PORTD,11))
#define SENSOR_POWER_OFF (drv_gpio_clrbit(PORTD,11))
/// <20><><EFBFBD><EFBFBD>
#define UP_QUEUE_CODE_DATA 0
#define UP_QUEUE_CODE_CH4_COMMERROR 0x22
#define UP_QUEUE_CODE_CH4_DATAERROR 0x23
#define UP_QUEUE_CODE_O2_COMMERROR 0x24
#define UP_QUEUE_CODE_O2_DATAERROR 0x25
#define UP_QUEUE_CODE_CO_COMMERROR 0x26
#define UP_QUEUE_CODE_CO_DATAERROR 0x27
#define UP_QUEUE_CODE_A_CURR_COMMERROR 0x28
#define UP_QUEUE_CODE_A_CURR_DATAERROR 0x29
#define UP_QUEUE_CODE_B_CURR_COMMERROR 0x2A
#define UP_QUEUE_CODE_B_CURR_DATAERROR 0x2B
#define UP_QUEUE_CODE_C_CURR_COMMERROR 0x2C
#define UP_QUEUE_CODE_C_CURR_DATAERROR 0x2D
#define UP_QUEUE_CODE_D_CURR_COMMERROR 0x2E
#define UP_QUEUE_CODE_D_CURR_DATAERROR 0x2F
#define UP_QUEUE_CODE_WATER_COMMERROR 0x30
#define UP_QUEUE_CODE_WATER_DATAERROR 0x31
#define UP_QUEUE_CODE_H2S_COMMERROR 0x32
#define UP_QUEUE_CODE_H2S_DATAERROR 0x33
#define UP_QUEUE_CODE_WELL_COMMERROR 0x34
#define UP_QUEUE_CODE_WELL_DATAERROR 0x35
#define UP_QUEUE_CODE_TEMP_COMMERROR 0x36
#define UP_QUEUE_CODE_TEMP_DATAERROR 0x37
#define UP_QUEUE_CODE_HUMI_COMMERROR 0x38
#define UP_QUEUE_CODE_HUMI_DATAERROR 0x39
void init_rs485_uart();
void init_rs485_gpio();
void send_rs485_data(device_handle dev,const void *data, int len);
void send_up_fault_queue_pack(char *type,u_int8_t code,char *fault_message);
void init_comm_queue_module();
#endif