zongqiang.zhang | 0c6a088 | 2019-08-07 14:48:21 +0800 | [diff] [blame] | 1 | #ifndef _SP_UTIL_H_ |
| 2 | #define _SP_UTIL_H_ |
| 3 | |
| 4 | #include "string.h" |
| 5 | #include "stdlib.h" |
| 6 | #include "stdio.h" |
| 7 | #include "sp_config.h" |
| 8 | |
| 9 | #define DELAY_TIME100ms 100 |
| 10 | #define DELAY_TIME200ms 200 |
| 11 | #define DELAY_TIME1s 1000 |
| 12 | #define DELAY_TIME2s 2000 |
| 13 | #define DELAY_TIME3s 3000 |
| 14 | #define DELAY_TIME15s 15000 |
| 15 | #define DELAY_TIME60s 60000 |
| 16 | #define COMM_WAIT_TIME 5000 |
| 17 | |
| 18 | #define STR_COPY_N(x,y,z) do{snprintf(x,z+1,"%s",y);}while(0); |
| 19 | #define MEMCLEAR(x,z) memset(x,0,z) |
| 20 | #define MEMCMP(x,y,z) memcmp(x,y,z) |
| 21 | #define MEMCPY(x,y,z) memcpy(x,y,z) |
| 22 | #define IS_KEY(expect,val) (strncmp(expect,val,strlen(expect)) == 0) |
| 23 | |
| 24 | #define Dec2BCD(x) (((x) / 10) * 16 + (x) % 10) |
| 25 | #define BCD2Dec(x) (((x) / 16) * 10 + (x) % 16) |
| 26 | |
| 27 | void sp_get_bcdtime(uint8 ctime[6]); |
| 28 | void sp_set_bcdtime(uint8 ctime[6]); |
| 29 | uint8 sp_check_time_valid(uint8 ctime[6]); |
| 30 | uint8 sp_crc_sum(uint8 buf[],uint8 len); |
| 31 | uint32 sp_get_ticker(void); |
| 32 | void Delay_ms(uint32 ms); |
| 33 | void sp_valve_on(void); |
| 34 | void sp_valve_off(void); |
| 35 | uint8 sp_valve_state(void); |
| 36 | int16 get_2byte_int(uint8 value_str[2]); |
| 37 | int32 get_3byte_int(uint8 value_str[3]); |
| 38 | int32 get_4byte_int(uint8 value_str[4]); |
| 39 | void set_2byte_int(uint8 value_str[2], int num); |
| 40 | void set_3byte_int(uint8 value_str[3], int num); |
| 41 | void set_4byte_int(uint8 value_str[4], int num); |
| 42 | //»ñµÃµ¥×Ö½ÚÖÐijһλµÄÖµ |
| 43 | int32 Get1Bit(uint8 buf, int n); |
| 44 | int16 get_2byte_int_le(uint8 value_str[2]); |
| 45 | //С×Ö½ÚÐò |
| 46 | int32 get_3byte_int_le(uint8 value_str[3]); |
| 47 | //С×Ö½ÚÐò |
| 48 | int32 get_4byte_int_le(uint8 value_str[4]); |
| 49 | void set_2byte_int_le(uint8 value_str[2], int num); |
| 50 | void set_3byte_int_le(uint8 value_str[3], int num); |
| 51 | /*¼ÆËã´Óstarttime µ½ÏÖÔÚµÄÃëÊý*/ |
| 52 | uint32 diff_time(uint8 starttime[6]); |
| 53 | void mycpy(void* dest, const void* src, uint32 len); |
| 54 | int32 sp_atoi(const char* src); |
| 55 | void sp_bcd2asc(const uint8 bcdbuf[], uint8 bcdlen, uint8* ascstr); |
| 56 | int format_time_covert_secs(uint8 ctime[6]); |
| 57 | void sp_protocol_crc(const uint8* buf, uint16 len, uint8 crc[2]); |
| 58 | void sp_protocol_crc_init(const uint8* buf, uint16 len,uint8 init[2], uint8 crc[2]); |
| 59 | uint8 sp_get_key(void); |
| 60 | uint8 sp_key_init(void); |
| 61 | void sp_key_calibrate(void); |
| 62 | void sp_reset(void); |
| 63 | void sp_bcd_to_str(const uint8* bcd, uint8 bcd_len, char* str); |
| 64 | void sp_str_to_bcd(const char* str, uint8 str_len, uint8* bcd); |
| 65 | void sp_str_to_hex(const char* str,const uint16 len,uint8* hex); |
| 66 | void sp_hex_to_str(const uint8* hex,const uint8 len,char* str); |
| 67 | uint8 sp_check_passwd(sp_pos_t* pos,const char* hint,uint8 passwd[6]); |
| 68 | int8 isFF(uint8 buf[],uint16 len); |
| 69 | |
| 70 | #endif |