sys_api.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #ifndef SYS_API_H_
  2. #define SYS_API_H_
  3. #include <stdbool.h>
  4. #include <stdint.h>
  5. #define SN_DEFAULT "0000001"
  6. #define MB_PASSWORD (uint16_t)1234
  7. // Cтруктура системных настроек
  8. typedef struct
  9. {
  10. uint32_t sn; // Серийный номер (+ есть в modbus)
  11. uint32_t prod_date; // Дата производства (+ есть в modbus)
  12. uint16_t test_state; // Статус тестирования
  13. uint32_t control_word; // Контрольное слово
  14. uint32_t crc; // CRC
  15. } sys_settings_t;
  16. bool SYS_BackupInfo(char *mac, char *serial);
  17. bool SYS_RestoreInfo(sys_settings_t *settings);
  18. //
  19. uint32_t SYS_GetCRC(sys_settings_t *settings);
  20. // Загрузка структуры системных настроек из flash
  21. bool sys_settings_load(sys_settings_t *settings);
  22. // Запись структуры настроек во flash
  23. bool sys_save(sys_settings_t *settings);
  24. //
  25. void sys_print(sys_settings_t *settings);
  26. // Очистить сектор системных настроек
  27. void sys_clear(void);
  28. #endif /* SYS_API_H_ */