#ifndef _MAIN_H #define _MAIN_H #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define init_module(mod, len, opts) syscall(__NR_init_module, mod, len, opts) char buf; int wdt_val; #define FEED_WATCHDOG buf = '1'; write(fdw,&buf,1) //喂狗 #define CLOSE_WDT buf = 'V'; write(fdw,&buf,1);close(fdw) //关闭看门狗 #define REBOOTTIME 3 //看门狗超时时间默认为14秒,可设为1秒,3秒和14秒 #define SET_WDT_TIMEOUT wdt_val = REBOOTTIME; ioctl(fdw,WDIOC_SETTIMEOUT,&wdt_val) //设置看门狗超时时间 #include "command.h" #include "queue.h" #include "uart_can.h" #include "mqtt_utils.h" #include "http_utils.h" #include "md5.h" #include "main.h" #include "ping.h" #include "Hmacsha1.h" #include "mqtt/Base64.h" typedef struct { uint32_t name; uint16_t battery; uint32_t time; }__attribute__((packed)) jt_only_tag_t; void myrand(char *randnum,int len); void removeValueFromMystr(char *oristr,char *val); void addValueToMystr(char *oristr,char *val); int sizeofMystr(char *oristr); void getCabinetNameFromMystr(char *oristr,char *laststr); void checkDevice(void); void sendDataFromCellNames(char *cellNames,char *cmd); void resetCellFromCellNames(char *cellNames); void repairCellFromCellNames(char *cellNames); void powerOnAllUsb(void); void shutDownAllLed(void); void openAllDoors(void); long getCurrentTime(void); void getTimeStr(char *buffer,int len); void getFirstValueFromMystr(char *oristr,char *val); void removeStrFromMystr(char *oristr,char *removestr); void reportEventToWeb(void); void reportDbFromCellNames(char *cellNames); void reportReturndevEventFromCellNames(char *cellNames); void reportBorrowdevEventFromCellNames(char *cellNames); void reportLosedevEventFromCellNames(char *cellNames); void reportManagerEvent(char *eventType,char *opType,char *result); void cleanOptypeInDbFromCellNames(char *cellNames); void cleanOptypeInDbByCellName(char *cellName); void handleQrcode(char *str); //int buffer_to_file(const char *pathname, const char *data, unsigned int size,const char *mod); char *file_to_buffer(const char *pathname, unsigned int *size); void modifyMystr(char *oristr,char *laststr); int getInnerValueFromStr(char *oristr, char *laststr); void playAudio(char *num); int split(const char* str, int strLen, const char* splitChar, int index, char* result, int maxLen); void getDevInfo(char *devcode); bool hgz_judge_sn_exist_devin(char *devsn); bool hgz_judge_sn_exist_devout(char *devsn,char *cellname); bool hgz_judge_cell_can_borrow(char *cellname); void getDevRegisterStatus(char *devsn); void hgz_get_returninfo_by_cellname(char *cellname,int *userid,char *batchid,char *username,char *devsn); void getDevInfo(char *parm); void *actHandleQrcode(void *parm); void updateStationInfo(char *msg_id); #endif