我是使用DMA,PWM来控制ws2812的,程序实在论坛里找来的不过已经被我改成寄存器控制室的了,
现在ws2812显示的颜 {MOD}不准,问题出函数
- void delay_init()
- {
- SysTick->CTRL&=~(1<<2);
- fac_us=SystemCoreClock/8;
- fac_ms=(u16)fac_us*1000;
- }
复制代码这样时程序没问题,但只要将
SystemCoreClock 改成 72000000 就会出错可是 SystemCoreClock 在system_stm32f10x.c 中SystemCoreClock 不就是被定义成 72000000 了吗- <blockquote><blockquote><font color="#ff0000">#define SYSCLK_FREQ_72MHz 72000000</font>
复制代码
我这样改与之前有什么不同吗?
拜托各位大神帮我看看了~~~~
这是在 system_stm32f10x.c 中,关于 SystemCoreClock 的定义
#define SYSCLK_FREQ_72MHz 72000000
#endif
- #ifdef SYSCLK_FREQ_HSE
- uint32_t SystemCoreClock = SYSCLK_FREQ_HSE; /*!< System Clock Frequency (Core Clock) */
- #elif defined SYSCLK_FREQ_24MHz
- uint32_t SystemCoreClock = SYSCLK_FREQ_24MHz; /*!< System Clock Frequency (Core Clock) */
- #elif defined SYSCLK_FREQ_36MHz
- uint32_t SystemCoreClock = SYSCLK_FREQ_36MHz; /*!< System Clock Frequency (Core Clock) */
- #elif defined SYSCLK_FREQ_48MHz
- uint32_t SystemCoreClock = SYSCLK_FREQ_48MHz; /*!< System Clock Frequency (Core Clock) */
- #elif defined SYSCLK_FREQ_56MHz
- uint32_t SystemCoreClock = SYSCLK_FREQ_56MHz; /*!< System Clock Frequency (Core Clock) */
- #elif defined SYSCLK_FREQ_72MHz
- uint32_t SystemCoreClock = SYSCLK_FREQ_72MHz; /*!< System Clock Frequency (Core Clock) */
- #else /*!< HSI Selected as System Clock source */
- uint32_t SystemCoreClock = HSI_VALUE; /*!< System Clock Frequency (Core Clock) */
- #endif
复制代码一周热门 更多>