AT24C128Opt.h 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. #ifndef _AT24C128OPT_H_
  2. #define _AT24C128OPT_H_
  3. #include "../../User/includes.h"
  4. #include "../../User/stm32f10x_it.h"
  5. #include "AT24C128.h"
  6. #include "../globalDef.h"
  7. #define GATEWAY_DEVICE_TYPE 0x0301
  8. #define GATEWAY_APP_TYPE 0x03
  9. #define GATEWAY_APP_VERSION 0x009
  10. #define GATEWAY_UPDATE_FLAG 0x55
  11. #define FRAM_FIRST_PWERUP 0x55AA
  12. #define FRAM_TOTAL_SIZE (256*64)
  13. /*分配ATC128的空间使用*/
  14. /* 共有16K, 每页64个字节 共有256页 */
  15. #define FRAM_ALLOC_START (0)
  16. /*第一页 基本信息 占用1页*/
  17. #define FRAM_FIRST_POWER_ON (FRAM_ALLOC_START) // 是否是第一次上电 2个字节
  18. #define FRAM_VERSION (FRAM_FIRST_POWER_ON+sizeof(uint16_t)) // EEPROM 版本 1个字节
  19. #define FRAM_GATWAY_RESETNUM (FRAM_VERSION+sizeof(uint8_t)) // 复位次数 4个字节
  20. #define FRAM_UPDATE_FLAG (FRAM_GATWAY_RESETNUM+sizeof(uint32_t)) // 升级标志 1个字节
  21. #define FRAM_UPDATE_STATUS (FRAM_UPDATE_FLAG+sizeof(uint8_t)) // 升级状态 1个字节
  22. #define FRAM_UPDATE_1_REVER (FRAM_UPDATE_STATUS+sizeof(uint8_t)) // 预留4个字节
  23. #define FRAM_GATWAY_HARDWARE_MSG (FRAM_UPDATE_1_REVER+sizeof(uint32_t)) // 网关硬件信息 GateHareWareMsg
  24. #define FRAM_GATWAY_VER_MSG (FRAM_GATWAY_HARDWARE_MSG+sizeof(GateHareWareMsg)) // 网关的软件版本信息
  25. #define FRAM_NEXT_1_PRE (FRAM_GATWAY_VER_MSG+sizeof(GateVersionMsg) // 下一个的地址
  26. /*第二页 LORA 的信息*/
  27. #define FRAM_SECOND_PAGE_ADDR (1*64)
  28. /*第三页 网关要存储的MQTT的信息 */
  29. #define FRAM_THIRD_PAGE_ADDR (2*64)
  30. #define FRAM_MQTT_MSG (FRAM_THIRD_PAGE_ADDR+0) //大小为 MqttIdPort的大小
  31. #define FRAM_NEXT_3_PRE (FRAM_MQTT_MSG + sizeof(MqttIdPort)) // 下一个要写入的地址
  32. /*第四页 液位仪要存储的信息 */
  33. #define FRAM_FOUR_PAGE_ADDR (3*64)
  34. #define FRAM_CONFIG_MSG (FRAM_FOUR_PAGE_ADDR+0) // 网关的有关采集器的配置信息 GateConfigMsg
  35. #define FRAM_OILINIT_MSG (FRAM_CONFIG_MSG+sizeof(GateConfigMsg)) // 液位仪的信息
  36. extern void fram_init(void);
  37. extern void fram_write_eeprom_powerUpFlag(void);
  38. extern uint16_t fram_read_eeprom_powerUpFlag(void);
  39. extern void fram_write_eeprom_version(void);
  40. extern uint8_t fram_read_eeprom_version(void);
  41. extern void fram_write_update_flag(void);
  42. extern void fram_init_config_msg(void);
  43. extern void fram_write_config_msg(uint16_t flag);
  44. extern uint8_t fram_read_config_msg(void);
  45. extern void fram_init_gateway_msg(void);
  46. extern void fram_init_collect_msg(void);
  47. extern void fram_write_collect_msg(void);
  48. extern void fram_read_collect_msg(void);
  49. extern void fram_init_gateway_resetnum(void);
  50. extern void fram_wirte_gateway_resetnum(void);
  51. extern void fram_read_gateway_resetnum(void);
  52. extern void fram_init_gateway_version(void);
  53. extern void fram_read_gateway_version(void);
  54. extern void fram_write_gateway_version(void);
  55. extern void fram_read_gateway_hardware_msg(void);
  56. extern void fram_write_gateway_hardware_msg(void);
  57. extern void fram_init_mqtt_msg(void);
  58. extern void fram_write_mqtt_msg(void);
  59. extern void fram_read_mqtt_msg(void);
  60. extern void fram_init_oil_msg(void);
  61. extern void fram_write_oil_msg(void);
  62. extern void fram_read_oil_msg(void);
  63. #endif