Tuoreniot.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #ifndef __TUORENIOT_H
  2. #define __TUORENIOT_H
  3. #include <stdint.h>
  4. extern char regist_key[17];
  5. extern char * REGIST_SERVER;
  6. extern uint16_t REGIST_PORT;
  7. extern struct TUORENIOT_RegistResponseStruct regist_response;
  8. // 注册数据
  9. extern uint8_t regist_data[512];
  10. extern uint16_t regist_data_length;
  11. struct TUORENIOT_RegistRequestStruct
  12. {
  13. uint8_t version;
  14. uint8_t networkType;
  15. uint8_t networkProtocol;
  16. char productId[20];
  17. char deviceId[20];
  18. char userId[20];
  19. };
  20. struct Wifi_Struct
  21. {
  22. char wifiName[50];
  23. char wifiPassword[30];
  24. };
  25. struct TUORENIOT_RegistResponseStruct
  26. {
  27. uint8_t code;
  28. uint8_t version;
  29. uint8_t platform;
  30. uint8_t networkType;
  31. uint8_t networkProtocol;
  32. char productId[20];
  33. char deviceId[20];
  34. char userId[20];
  35. char deviceSecret[50];
  36. char address[50];
  37. uint16_t port;
  38. uint8_t wifiNumber;
  39. struct Wifi_Struct wifi[10];
  40. };
  41. // 初始化
  42. void TUORENIOT_Init(void);
  43. // 打包注册请求数据
  44. void TUORENIOT_PackRegistRequest(uint8_t * pack_data, uint16_t * pack_data_length, struct TUORENIOT_RegistRequestStruct * registParams);
  45. // 解析注册返回的数据
  46. uint8_t TUORENIOT_AnalysisRegistData(uint8_t * regist_data, uint16_t regist_data_length);
  47. // 判断是否认证
  48. uint8_t TUORENIOT_IsAuthentication(void);
  49. // 打包认证报文
  50. void TUORENIOT_PackAuthMessage(uint8_t * coap_message, uint16_t * coap_message_length);
  51. // 打包数据报文
  52. void TUORENIOT_PackDataMessage(uint8_t * data, uint8_t data_length, uint8_t * coap_message, uint16_t * coap_message_length);
  53. // 接收数据处理
  54. uint8_t TUORENIOT_AnalysisMessage(uint8_t * coap_message, uint16_t coap_message_length);
  55. // 打印注册请求
  56. void TUORENIOT_PrintfRegistRequestStruct(struct TUORENIOT_RegistRequestStruct * regist_params_struct);
  57. // 打印返回的结果
  58. void TUORENIOT_PrintfRegistResponseStruct(void);
  59. // 清空flash中的注册响应
  60. void TUORENIOT_ClearRegistResponseFromFlash(void);
  61. // 从flash中读取注册响应
  62. void TUORENIOT_ReadRegistResponseFromFlash(void);
  63. // 获取code
  64. uint8_t TUORENIOT_GetCodeOfRegistResponse(void);
  65. #endif