cfg.h 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. #ifndef _CFG_H_
  2. #define _CFG_H_
  3. #include "stdint.h"
  4. #define USE_ONE_APP 1
  5. #if (!USE_ONE_APP)
  6. #define BOOT_LOADER ((uint32_t)(0x08000000)) //boot loadr addr
  7. #define BOOT_LOADER_SIZE (20*1024) //boot loade size
  8. #define META_DATA ((uint32_t)(0x08005000)) //meta data addr
  9. #define META_DATA_SIZE (1*1024) //meta data size
  10. #define PROGRAME_APP1 ((uint32_t)(0x08005400)) //App1 Rom Start addr
  11. #define PROGRAME_APP1_SIZE (50*1024) //App1 programe Max size
  12. #define PROGRAME_APP2 ((uint32_t)(0x08011C00)) //App2 Rom Start addr
  13. #define PROGRAME_APP2_SIZE (50*1024) //App2 programe Max size
  14. #else
  15. #define BOOT_LOADER ((uint32_t)(0x08000000)) //boot loadr addr
  16. #define BOOT_LOADER_SIZE (15*1024) //boot loade size
  17. #define META_DATA ((uint32_t)(0x08003C00)) //meta data addr
  18. #define META_DATA_SIZE (1*1024) //meta data size
  19. #define PROGRAME_APP1 ((uint32_t)(0x08004000)) //App1 Rom Start addr
  20. #define PROGRAME_APP1_SIZE (38*1024) //App1 programe Max size
  21. #endif
  22. #define VERSION "V1.0.0.0"
  23. #define MODBUS_HEAD "GOWONE_UPGRADE"
  24. #define PARTITION (1) //upgrade patition
  25. #define PAGE_SIZE (1024)
  26. #define UPGRADE_FLAG_ADDR (META_DATA )
  27. #define STARTUP_PARTATION (META_DATA + 4 ) //Start area
  28. #define STARTUP_ERROR (META_DATA + 8 ) //The most recent error code
  29. #define STARTUP_NUMBEAR (META_DATA + 12) //the count of fataly error
  30. #define STARTUP_ROM_ADDR (META_DATA + 16)
  31. #define STARTUP_LAST_RUNNING_TIME (META_DATA + 20) //
  32. #define STARTUP_APP_VERSION (META_DATA + 24) //
  33. #define APP1_VERSION (META_DATA + 28)
  34. #define APP1_ROM_ADDR (META_DATA + 32)
  35. #define APP1_PARTATION (META_DATA + 36)
  36. #define APP2_VERSION (META_DATA + 40)
  37. #define APP2_ROM_ADDR (META_DATA + 44)
  38. #define APP2_PARTATION (META_DATA + 48)
  39. #define APP1_MD5 (META_DATA + 52)
  40. #define APP2_MD5 (META_DATA + 84)
  41. #define APP1_SIZE (META_DATA + 116)
  42. #define APP2_SIZE (META_DATA + 120)
  43. #define UNIQU_1 0x1FFFF7AC
  44. #define UNIQU_2 0x1FFFF7B0
  45. #define UNIQU_3 0x1FFFF7B4
  46. typedef struct {
  47. uint32_t operation_flag; // 0
  48. uint32_t partition; // 1
  49. uint32_t errno; // 0
  50. uint32_t error_count; // 0
  51. uint32_t rom_addr; // PROGRAME_APP1 0x08005400
  52. uint32_t recent_running_time; // 0
  53. uint32_t running_app_version; // V1.0.0.0 (1<<24 | 0 << 16 | 0 << 8 | 0)
  54. uint32_t app1_version; // V1.0.0.0 (1<<24 | 0 << 16 | 0 << 8 | 0)
  55. uint32_t app1_rom_addr; // PROGRAME_APP1 0x08005400
  56. uint32_t app1_partition; // 1
  57. uint32_t app2_version; // V1.0.0.0 (1<<24 | 0 << 16 | 0 << 8 | 0)
  58. uint32_t app2_rom_addr; // PROGRAME_APP2 0x0800A400
  59. uint32_t app2_partition; // 2
  60. uint32_t app1_md5[8]; // app1 md5 value
  61. uint32_t app2_md5[8]; // app2 md5 value
  62. uint32_t app1_size;
  63. uint32_t app2_size;
  64. }META_DATA_S;
  65. typedef struct {
  66. uint32_t uniq_ID_64_95;
  67. uint32_t uniq_ID_32_63;
  68. uint32_t uniq_ID_00_31;
  69. int channels;
  70. char ver[8];
  71. char date[20];
  72. }information_t;
  73. #endif