在线时间9 小时
UID334856
ST金币0
蝴蝶豆0
注册时间2008-6-10
初级会员
- 最后登录
- 2018-6-21
|
a0a.1 0b0c
说明:以下为本人在项目开发过程中使用STM32F103RC遇到的各种问题及解决办法,以及芯片使用过程的出现的各种现象象,欢迎验证。
1.UART使用DMA传输的时候,如果UART产生ORE标志,则DMA停止工作,直到ORE位清零。
2.使用74HC165芯片时候,需都用3.3V供电才通讯正确,若74HC165用5V供电,STM32端口用开漏接口则有些读出的数据会出现错误,换了各种设置一直有问题,最后还是都用的3.3V供电,这个希望有高手从理论上给出解释。
3.MDK使用ULINK2仿真的时候,若打开MDK的Peripherals(外设)的UART窗口,则MDK会自动清理RXNE、IDLE、ORE标志位
4.如果使用DMA,当DMA的计数减到0的时候,当UART再次接收到一个数据的时候,即便先清零RXNE,再设置DMA计数值然后打开DMA,则DMA仍会先接收上次存在UART里的数据,计数值减1.
5.UART中查询RXNE标志时,若上次接收数据未读出产生ORE标志,则判断RXNE无效即无法使用RXNE判断是否接收到数据,清除ORE位后再使用查询RXNE法判断是否接收到数据,则能正确
6.MDK中临时变量未初始化而使用,也会触发STM32硬件异常而进入硬件中断程序。
7.当外设时钟打开时候,这个外设的某个功能引脚不使用时,其他外设在此引脚的功能也不能使用,只能做GPIO用,或者默认为优先外设使用。 |
|