| 
 
| stm32F767 使用DWT 来设计延时函数  ,程序如下  初始化  ,但是 我只有在使用jlink调试器的时候  才起作用。 关机 ,拿掉jlink 重新启动的话 ,dwt不计数 了 。就是说 才调试情况下 ,这dwt才工作 。我怀疑过M4 内核可能和M7不一样  ,查了 头文件,还有  ARMV7-M Architecture Reference Manual。 看寄存器的地址什么的都是一样的。
 但是就是不行  这个在429上面运行就没啥问题。。。。。。  有谁用过的吗?指教一下  谢谢
 (使用的是 Eric的 429 上面的程序原型 )
 
 
 #define  DWT_CYCCNT  *((volatile unsigned int *)0xE0001004)
 #define  DWT_CR      *((volatile unsigned int *)0xE0001000)
 #define  DEM_CR      *((volatile unsigned int *)0xE000EDFC)
 #define  DBGMCU_CR   *((volatile unsigned int *)0xE0042004)
 #define  ITM_LAR     *((volatile unsigned int *)0xE0000FB0)
 #define  DEM_CR_TRCENA               (1 << 24)
 #define  DWT_CR_CYCCNTENA            (1 <<  0)
 
 
 void bsp_DWT_Init(void)
 {
 //ITM_LAR         = 0xC5ACCE55;
 DEM_CR         |= (unsigned int)DEM_CR_TRCENA;   /* Enable Cortex-M4's DWT CYCCNT reg.  */
 //ITM_LAR         = 0xC5ACCE55;
 DWT_CYCCNT      = (unsigned int)0u;
 DWT_CR         |= (unsigned int)DWT_CR_CYCCNTENA;
 }
 | 
 |