PY32F092xx_DBGMCU.ini 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. // File: PY32F092xx_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.30> DBG_LPTIM2_STOP <i> LPTIM2 stopped when core is halted
  17. // <o.22> DBG_I2C2_SMBUS_TIMEOUT <i> I2C2_SMBUS TIMEOUT frozened when core is halted
  18. // <o.21> DBG_I2C1_SMBUS_TIMEOUT <i> I2C1_SMBUS TIMEOUT frozened when core is halted
  19. // <o.12> DBG_IWDG_STOP <i> Independent watchdog stopped when core is halted
  20. // <o.11> DBG_WWDG_STOP <i> Window watchdog stopped when core is halted
  21. // <o.10> DBG_RTC_STOP <i> RTC stopped when core is halted
  22. // <o.5> DBG_TIM7_STOP <i> TIM7 counter stopped when core is halted
  23. // <o.4> DBG_TIM6_STOP <i> TIM6 counter stopped when core is halted
  24. // <o.1> DBG_TIM3_STOP <i> TIM3 counter stopped when core is halted
  25. // <o.0> DBG_TIM2_STOP <i> TIM2 counter stopped when core is halted
  26. // </h>
  27. DbgMCU_APB_Fz1 = 0x00000000;
  28. // <h> Debug MCU APB freeze2 register (DBG_APB_FZ2)
  29. // <i> Reserved bits must be kept at reset value
  30. // <o.19> DBG_PWM_STOP <i> PWM counter stopped when core is halted
  31. // <o.18> DBG_TIM17_STOP <i> TIM17 counter stopped when core is halted
  32. // <o.17> DBG_TIM16_STOP <i> TIM16 counter stopped when core is halted
  33. // <o.16> DBG_TIM15_STOP <i> TIM15 counter stopped when core is halted
  34. // <o.11> DBG_TIM1_STOP <i> TIM1 counter stopped when core is halted
  35. // </h>
  36. DbgMCU_APB_Fz2 = 0x00000000;
  37. // <<< end of configuration section >>>
  38. /*----------------------------------------------------------------------------
  39. Setup_DBGMCU() configure DBGMCU registers
  40. *----------------------------------------------------------------------------*/
  41. FUNC void Setup_DBGMCU (void) {
  42. _WDWORD(0x40021040, _RDWORD(0x40021040) | 0x00000400); // Set RCC_APBENR2.DBGMCUEN
  43. _WDWORD(0x40015804, DBGMCU_CR); // Set DBGMCU_CR
  44. _WDWORD(0x40015808, DbgMCU_APB_Fz1); // Set DBG_APB_FZ1
  45. _WDWORD(0x4001580C, DbgMCU_APB_Fz2); // Set DBG_APB_FZ2
  46. }
  47. /*----------------------------------------------------------------------------
  48. OnResetExec() Executed after reset via uVision's 'Reset'-button
  49. *----------------------------------------------------------------------------*/
  50. FUNC void OnResetExec (void) {
  51. Setup_DBGMCU();
  52. }
  53. Setup_DBGMCU(); // Debugger Setup