main.c 734 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #include "gd32f10x.h"
  2. #include "main.h"
  3. #include "delay.h"
  4. #include "fmc.h"
  5. #include "ota_message.h"
  6. #include "boot.h"
  7. #include "w25q32.h"
  8. void task_fwdgt_reload(void);
  9. OTA_STRUCT UpDataA; //A区更新用到的结构体
  10. int main(void)
  11. {
  12. Delay_Init();
  13. // W25Q32_Init(); //弃用w25q32改用fmc
  14. OTA_MESSAGE *ota_data;
  15. task_fwdgt_reload();
  16. if(load_ota_message_config_params()==0)
  17. {
  18. //ota事件产生了,进入Bootloader分支
  19. ota_data=get_config_params();
  20. BootLoader_Brance(ota_data->XmodemByte);
  21. }
  22. //没有OTA事件产生跳转A区
  23. else
  24. {
  25. LOAD_A(GD32_A_SADDR);
  26. }
  27. while(1)
  28. {
  29. }
  30. }
  31. void task_fwdgt_reload(void)
  32. {
  33. /* uncock fwdgt write protect*/
  34. fwdgt_write_enable();
  35. /* feed fwdgt */
  36. fwdgt_counter_reload();
  37. }