PY32F031xx_DBGMCU.ini 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. // File: PY32F031xx_DBGMCU.ini
  2. // Version: 1.0.0
  3. /* variable to hold register values */
  4. define unsigned long DbgMCU_CR;
  5. define unsigned long DbgMCU_APB_Fz1;
  6. define unsigned long DbgMCU_APB_Fz2;
  7. // <<< Use Configuration Wizard in Context Menu >>>
  8. // <h> Debug MCU configuration register (DBGMCU_CR)
  9. // <o.1> DBG_STOP <i> Debug stop mode
  10. // <o.0> DBG_SLEEP <i> Debug sleep mode
  11. // </h>
  12. DbgMCU_CR = 0x00000003;
  13. // <h> Debug MCU APB freeze1 register (DBG_APB_FZ1)
  14. // <i> Reserved bits must be kept at reset value
  15. // <o.31> DBG_LPTIM1_STOP <i> LPTIM1 stopped when core is halted
  16. // <o.12> DBG_IWDG_STOP <i> Independent watchdog stopped when core is halted
  17. // <o.11> DBG_WWDG_STOP <i> Window watchdog stopped when core is halted
  18. // <o.10> DBG_RTC_STOP <i> RTC stopped when core is halted
  19. // <o.0> DBG_TIM2_STOP <i> TIM2 counter stopped when core is halted
  20. // </h>
  21. DbgMCU_APB_Fz1 = 0x00000000;
  22. // <h> Debug MCU APB freeze2 register (DBG_APB_FZ2)
  23. // <i> Reserved bits must be kept at reset value
  24. // <o.18> DBG_TIM17_STOP <i> TIM17 counter stopped when core is halted
  25. // <o.17> DBG_TIM16_STOP <i> TIM16 counter stopped when core is halted
  26. // <o.15> DBG_TIM14_STOP <i> TIM14 counter stopped when core is halted
  27. // <o.11> DBG_TIM1_STOP <i> TIM1 counter stopped when core is halted
  28. // </h>
  29. DbgMCU_APB_Fz2 = 0x00000000;
  30. // <<< end of configuration section >>>
  31. /*----------------------------------------------------------------------------
  32. Setup_DBGMCU() configure DBGMCU registers
  33. *----------------------------------------------------------------------------*/
  34. FUNC void Setup_DBGMCU (void) {
  35. _WDWORD(0x40021018, _RDWORD(0x40021018) | 0x00400000); // Set RCC_APBENR1.DBGMCUEN
  36. _WDWORD(0x40015804, DBGMCU_CR); // Set DBGMCU_CR
  37. _WDWORD(0x40015808, DbgMCU_APB_Fz1); // Set DBG_APB_FZ1
  38. _WDWORD(0x4001580C, DbgMCU_APB_Fz2); // Set DBG_APB_FZ2
  39. }
  40. /*----------------------------------------------------------------------------
  41. OnResetExec() Executed after reset via uVision's 'Reset'-button
  42. *----------------------------------------------------------------------------*/
  43. FUNC void OnResetExec (void) {
  44. Setup_DBGMCU();
  45. }
  46. Setup_DBGMCU(); // Debugger Setup