芯片:stm32f303VET6, 使用Cubemax配置spi2、Monster、256DIV,外部晶振8M、SysClock=72M,mco输出SysClock/8。生成keil工程。打开工程在MX_SPI2init()后面添加一句HAL_SPI_ENABLE(&hspi2),执行该语句后mco输出的时钟就由正常的9M(72/8)变为500k。以前还会进NMI中断。此时哪怕再执行一次时钟初始化函数都不会有改变。 如果改为spi1或者内部振荡器HSI都不会出任何问题。更诡异的是因为使用PF9作为CLK所以要用__HAL_RCC_GPIOF_ENABLE()使能GPIOF的时钟,如果这句程序放在MX_SPI2init()之前就会出现该问题(cubemax就是放在之前的),之后就正常。 |
那个好汉来救救我