最近用STM32F407做了个项目,使用的是RTTHREAD官方下载的BSP包,其中碰到很多的问题,摸索了很久,现在讲下我的心得。
选择合适的BSP包
根据自己的板子选择一个合适的BSP包,我这里是根据BSP包里面的芯片设计的板子,所以芯片和BSP包里面是完全一样的。
使用menuconfig配置
这个在官方都有详细的配置过程,比如说我的调试串口是串口4,那么在menuconfig里面打开uart4,同时将调试串口改为串口4。 我使用的有以太网接口,那么打开板子外设 eth 同时可以配置以太网协议栈。如果使用其他的外设,也可以在menuconfig里面配置。配置好后,可以通过命令 mgks --update 下载需要的软件包,scons --target=mdk4生成需要的工程。
工程里面需要改的内容
void SystemClock_Config(void) 这里的时钟配置要更改,我是把配置都注释掉板子就能运行,不注释不难运行,应该是其他地方有配置过时钟了?
这个地方困扰了我很久,开始我以为在menuconfig里面配置好后,很多的硬件初始化都做好了,其实不然。比如说上一步我使用串口4作为调试串口,那么需要在
这里面配置串口4的参数,void HAL_UART_MspInit(UART_HandleTypeDef* huart)主要是硬件的初始化。比如说要使用以太网,那么在HAL_ETH_MspInit 里面改好引脚配置,还要在phy_reset.c里面改好复位引脚。
*后续。。。。