AT.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #ifndef __AT_H
  2. #define __AT_H
  3. #include <stdint.h>
  4. //#define NBFLAG 200
  5. // AT指令状态
  6. enum AT_Status
  7. {
  8. AT_Status_None, // 空闲
  9. AT_Status_Using, // 使用
  10. };
  11. struct AT_Struct
  12. {
  13. enum AT_Status status;
  14. uint8_t result[512];
  15. uint16_t result_length;
  16. };
  17. // 获取AT指令返回的长度
  18. uint16_t AT_result_length(void);
  19. // 获取AT指令返回的内容
  20. uint8_t * AT_result(void);
  21. // 发送AT指令,二进制
  22. void AT_Send_Bytes(uint8_t * CMD, uint16_t length);
  23. // 发送AT指令,字符串
  24. void AT_Send_String(char * CMD);
  25. // 清空AT指令
  26. void AT_Clear(void);
  27. // 清空AT指令返回的结果
  28. void AT_Clear_Result(void);
  29. // 设置AT指令的状态
  30. void AT_Set_Status(enum AT_Status status);
  31. // 获取AT指令的状态
  32. enum AT_Status AT_Get_Status(void);
  33. // AT监听
  34. void AT_Handle(void);
  35. // 日志
  36. void Log_SendArray(uint8_t * arr, uint16_t len);
  37. void Log_SendArray_Debug(uint8_t * arr, uint16_t len);
  38. void Log_Printf(char *format, ...);
  39. void Log_Printf_Debug(char *format, ...);
  40. // 定时器
  41. void my_timer(void);
  42. struct TIMER_Struct
  43. {
  44. uint32_t time;
  45. uint8_t flag;
  46. };
  47. uint32_t time_get(struct TIMER_Struct * timer);
  48. void time_clear(struct TIMER_Struct * timer);
  49. uint32_t AT_wait_time(void);
  50. #endif