1、STM32F4外部晶振只支持4-25M,如果用40M晶,配置外部晶振,会导致单片机工作不正常,程序卡死在SystemClock_Config初始化时钟函数里,而且如果不断电重新上电,就算程序改为使用内部时钟,也无法配置成功,只有断电后才能修改时钟配置。
2、HAL库的有一些DMA初始化会放在外设初始化后面,导致外设的DMA工作不正常,需要手动将DMA初始化放在最前面。
3、HAL库的串口相关函数有lock和unclok函数,需要手动注释掉,否则可能会导致串口收发冲突,产生bug。
4、TLV5638的SPI时钟极性为high,第一个边沿,且每次写数据都要先产生CS下降沿,5638才知道开始写数了。