bsp_param.c 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. #include "include.h"
  2. #define param_read8(a, b) b = cm_read8(PAGE0(a))
  3. #define param_write8(a, b) cm_write8(PAGE0(a), b)
  4. #define param_read16(a, b) b = cm_read16(PAGE0(a))
  5. #define param_write16(a, b) cm_write16(PAGE0(a), b)
  6. #define param_read32(a, b) b = cm_read32(PAGE0(a))
  7. #define param_write32(a, b) cm_write32(PAGE0(a), b)
  8. #define param_read(a, b, c) cm_read(a, PAGE0(b), c)
  9. #define param_write(a, b, c) cm_write(a, PAGE0(b), c)
  10. #define param_sync_do() cm_sync()
  11. AT(.text.bsp.param)
  12. void bsp_param_init(void)
  13. {
  14. cm_init(MAX_CM_PAGE, CM_START, CM_SIZE);
  15. //printf("CM: %x\n", cm_read8(PAGE0(0)));
  16. //printf("CM: %x\n", cm_read8(PAGE1(0)));
  17. }
  18. AT(.text.bsp.param)
  19. void bsp_param_write(u8 *buf, u32 addr, uint len)
  20. {
  21. param_write(buf, addr, len);
  22. }
  23. AT(.text.bsp.param)
  24. void bsp_param_read(u8 *buf, u32 addr, uint len)
  25. {
  26. param_read(buf, addr, len);
  27. }
  28. AT(.text.bsp.param)
  29. void bsp_param_sync(void)
  30. {
  31. param_sync_do();
  32. }
  33. AT(.text.bsp.param.fota)
  34. void param_fot_addr_write(u8 *param)
  35. {
  36. param_write((u8 *)param, PARAM_FOT_ADDR, PARAM_FOT_ADDR_LEN);
  37. param_sync_do();
  38. }
  39. AT(.text.bsp.param.fota)
  40. void param_fot_addr_read(u8 *param)
  41. {
  42. param_read(param, PARAM_FOT_ADDR, PARAM_FOT_ADDR_LEN);
  43. }
  44. AT(.text.bsp.param.fota)
  45. void param_fot_remote_ver_write(u8 *param)
  46. {
  47. param_write((u8 *)param, PARAM_FOT_REMOTE_VER, PARAM_FOT_REMOTE_VER_LEN);
  48. param_sync_do();
  49. }
  50. AT(.text.bsp.param.fota)
  51. void param_fot_remote_ver_read(u8 *param)
  52. {
  53. param_read(param, PARAM_FOT_REMOTE_VER, PARAM_FOT_REMOTE_VER_LEN);
  54. }
  55. AT(.text.bsp.param.fota)
  56. void param_fot_head_info_write(u8 *param)
  57. {
  58. param_write((u8 *)param, PARAM_FOT_HEAD_INFO, PARAM_FOT_HEAD_INFO_LEN);
  59. param_sync_do();
  60. }
  61. AT(.text.bsp.param.fota)
  62. void param_fot_head_info_read(u8 *param)
  63. {
  64. param_read(param, PARAM_FOT_HEAD_INFO, PARAM_FOT_HEAD_INFO_LEN);
  65. }
  66. AT(.text.bsp.param.fota)
  67. void param_fot_hash_write(u8 *param)
  68. {
  69. param_write((u8 *)param, PARAM_FOT_HASH, PARAM_FOT_HASH_LEN);
  70. }
  71. AT(.text.bsp.param.fota)
  72. void param_fot_hash_read(u8 *param)
  73. {
  74. param_read(param, PARAM_FOT_HASH, PARAM_FOT_HASH_LEN);
  75. }
  76. AT(.text.bsp.param.conn)
  77. void param_wl_bt_mode_write(uint8_t mode)
  78. {
  79. param_write(&mode, PARAM_WL_BT_MODE, PARAM_WL_BT_MODE_LEN);
  80. param_sync_do();
  81. }
  82. AT(.text.bsp.param.conn)
  83. uint8_t param_wl_bt_mode_read(void)
  84. {
  85. uint8_t param;
  86. param_read(&param, PARAM_WL_BT_MODE, PARAM_WL_BT_MODE_LEN);
  87. return param;
  88. }
  89. AT(.text.bsp.ble_central_addr_write)
  90. void param_ble_central_addr_write(uint8_t *addr)
  91. {
  92. param_write(addr, PARAM_BLE_CENTRAL_ADDR, PARAM_BLE_CENTRAL_ADDR_LEN);
  93. param_sync_do();
  94. }
  95. AT(.text.bsp.ble_central_addr_read)
  96. void param_ble_central_addr_read(uint8_t *addr)
  97. {
  98. param_read(addr, PARAM_BLE_CENTRAL_ADDR, PARAM_BLE_CENTRAL_ADDR_LEN);
  99. }