调试问题集

本文介绍了STM32F4在使用40M外部晶振时遇到的问题,导致单片机运行异常。同时,指出了HAL库中DMA初始化顺序可能导致外设DMA工作不正常,需要手动调整初始化顺序。此外,还提到了HAL库串口锁功能可能引发的冲突,建议注释相关函数。最后,详细说明了TLV5638 SPI通信的时钟极性和CS信号控制要求。
摘要由CSDN通过智能技术生成

1、STM32F4外部晶振只支持4-25M,如果用40M晶,配置外部晶振,会导致单片机工作不正常,程序卡死在SystemClock_Config初始化时钟函数里,而且如果不断电重新上电,就算程序改为使用内部时钟,也无法配置成功,只有断电后才能修改时钟配置。

2、HAL库的有一些DMA初始化会放在外设初始化后面,导致外设的DMA工作不正常,需要手动将DMA初始化放在最前面。

3、HAL库的串口相关函数有lock和unclok函数,需要手动注释掉,否则可能会导致串口收发冲突,产生bug。

4、TLV5638的SPI时钟极性为high,第一个边沿,且每次写数据都要先产生CS下降沿,5638才知道开始写数了。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

guoguo123a

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值