| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198 |
- /**
- ******************************************************************************
- * @file main.h
- * @author
- * @version V0.0.1
- * @date 17-July-2017
- * @brief Header for main.c module
- ******************************************************************************
- *
- *
- *
- *
- *
- *
- *
- *
- ******************************************************************************
- */
- #ifndef __MAIN_H_
- #define __MAIN_H_
- /* Includes ------------------------------------------------------------------*/
- #include "stm32f4xx_hal.h"
- #include "string.h"
- #include "bsp.h"
- #include "usart.h"
- #include "utils.h"
- #include "flash.h"
- #if !defined(HAL_I2C_MODULE_EANBLED)
- #include "I2C.h"
- #endif
- #include "wificonfig.h"
- #include "esp8266at.h"
- #include "eerom.h"
- #include "RX8025T.h"
- #include "tcpserver.h"
- #include "tcpclient.h"
- #include "configprotocal.h"
- #include "setting.h"
- #include "instance.h"
- /* Exported macro ------------------------------------------------------------*/
- #define WIFITEST 0
- #define ETHERNETTEST 0
- #define DEBUG_BUF_LEN 1400
- #define TEA_LOOP 16
- #define TEA_DELTA 0x9e3779b9
- #define TEA_DELTA_FIN ((TEA_DELTA * TEA_LOOP) & 0xFFFFFFFF)
- #define TEA_KEY_LEN 16
- /* Exported types ------------------------------------------------------------*/
- typedef struct
- {
- uint32_t encrypt : 1; // 0:None; 1:TEA key=ScenAuto1234!@#$
- uint32_t prfMode : 1; // 0:64M; 1:16M;
- uint32_t pCode : 2; // Preamble Code, ON PRF=64M: {0:9,1:10,2:11,3:12}, ON PRF=16M: {0:3,1:4,2:3,3:4}
- uint32_t reserved1 : 4; // reserved1
- uint32_t channel : 1; // 0:channel2; 1:channel5;
- uint32_t reserved2 : 3; // reserved1
- uint32_t reserved3 : 4; //
- uint32_t temp : 8; //
- uint32_t peroid : 8; //
- }bfSignalConfig;
- typedef struct {
- uint16_t panID; //
- uint16_t address; //
- bfSignalConfig signal; //
- uint32_t fixPower;
- }stStationConfig;
- typedef enum {
- LED_OFF = 0,
- LED_ON,
- LED_TOGGLE,
- }eLedPattern;
- typedef struct _led_status_{
- uint8_t ledBatStatus;
- uint8_t ledBatStatus_old;
- uint8_t ledBatCount;
- uint8_t ledBatLimit;
- uint8_t ledRunStatus;
- uint8_t ledRunStatus_old;
- uint8_t ledRunCount;
- uint8_t ledRunLimit;
- uint8_t ledComStatus;
- uint8_t ledComStatus_old;
- uint8_t ledComCount;
- uint8_t ledComLimit;
- uint8_t ledUwbStatus;
- uint8_t ledUwbStatus_old;
- uint8_t ledUwbCount;
- uint8_t ledUwbLimit;
- }stLedStatus;
- typedef struct _factory_test_status_
- {
- uint8_t testMode;
- uint8_t status;
- uint8_t ledCommand;
- uint8_t ledMask;
- uint8_t keyStatus;
- uint8_t keyStatusOld;
- uint8_t screenFormat;
- uint8_t screenLocation;
- uint8_t screenString[8];
- }stFactoryTestStatus;
- typedef enum _battery_status_{
- BAT_NONE = 0,
- BAT_CHARGING,
- BAT_FULL,
- BAT_NODCIN,
- BAT_UNKNOWN
- }eBatteryStatus;
- typedef struct _power_voltage_
- {
- uint16_t batteryVoltage;
- uint16_t dcInputVoltage;
- uint8_t status;
- uint8_t power;
- uint8_t statusOld;
- uint8_t dcToggleFlag;
- }stPowerVoltage;
- typedef union _anchor_status_{
- uint32_t value;
- struct{
- uint32_t run : 1;
- uint32_t communication : 1;
- uint32_t range : 1;
- uint32_t test : 1;
- uint32_t temp : 4;
- uint32_t reserved1 : 8;
- uint32_t reserved2 : 8;
- uint32_t count:8;
- }status;
- }uAnchorStatus;
- /* Exported constants --------------------------------------------------------*/
- extern stStationConfig dwsConfig;
- extern uint8_t debugBuffer[DEBUG_BUF_LEN];
- extern int debugLen;
- extern stFactoryTestStatus testStatus;
- extern stPowerVoltage powerVoltage;
- extern uAnchorStatus anchorStatus ;
- extern uint8_t TEA_KEY[TEA_KEY_LEN];
- /* Exported functions ------------------------------------------------------- */
- extern void Debug_Uart_IRQ_Handler(void);
- extern void RTC_WakeUpEventCallback(void);
- extern void process_dwRSTn_irq(void);
- extern void process_deca_irq(void);
- extern uint32_t inittestapplication(stStationConfig cfg);
- extern void InformRunLed(int32_t status);
- void ReportResetSignPeriodically();
- void ReportRangePeriodically(uint32_t flag);
- void ReportRangeImmediately(uint32_t flag);
- void ReportRangeResult(int rx);
- int UpdateTagCommand(uint8_t* buf, uint32_t len);
- void ExcuteTimeSettingCommand(void);
- void ClearTimeSettingCommand(void);
- void EncryptTEA(uint8_t* plainText, int startIndex, int bufLen);
- void DecryptTEA(uint8_t* cipherText, int startIndex, int bufLen);
- #endif /* __MAIN_H */
- /******************************** END OF FILE *********************************/
|