STM32 串口发不出来数,或全0的问题
2014-03-03 22:26
399 查看
开始调试STM32串口的时候,怎么尝试,上位机都只收到0。对照例程自己一步一步写下来都不行。最后无奈,把例程直接全部复制粘贴过来,发现好使了。
后来几次用到串口的时候,又调了几次,貌似发现了一些问题。串口的初始化的顺序会造成输出全0的情况。正确初始化顺序如下:
RCC_Configuration();
USART_GPIO_Configuration();
USART_Configuration();
NVIC_Configuration();
或者:
RCC_Configuration();
NVIC_Configuration();
USART_GPIO_Configuration();
USART_Configuration();
对于NVIC的初始化所在的位置,以上两种可使串口正常,其他位置还有待验证。
PS:IAR6.4 无法Go to definition ;f() 不显示函数等问题,解决办法在如下图位置添加$TOOLKIT$\INC\(注意大小写),重新编译即可:
![](http://img.blog.csdn.net/20140303222024406?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2hlbnlleGluZ2tvbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
link方面,下面路径可表示当前工程下的文件,可避免工程拷贝到别的地方,需重新选择 .icf 文件的问题:
后来几次用到串口的时候,又调了几次,貌似发现了一些问题。串口的初始化的顺序会造成输出全0的情况。正确初始化顺序如下:
RCC_Configuration();
USART_GPIO_Configuration();
USART_Configuration();
NVIC_Configuration();
或者:
RCC_Configuration();
NVIC_Configuration();
USART_GPIO_Configuration();
USART_Configuration();
对于NVIC的初始化所在的位置,以上两种可使串口正常,其他位置还有待验证。
PS:IAR6.4 无法Go to definition ;f() 不显示函数等问题,解决办法在如下图位置添加$TOOLKIT$\INC\(注意大小写),重新编译即可:
link方面,下面路径可表示当前工程下的文件,可避免工程拷贝到别的地方,需重新选择 .icf 文件的问题:
相关文章推荐
- c/c++ char->string
- exists和in的执行效率的区别
- .exe文件运行不了
- 问题与事务跟踪系统jira中的版本管理
- springmvc
- 控制符号的可见性
- [LeetCodeSearch Insert Position
- function方法体中动态递归调用
- AsyncHttpClient 中的重定向和 setEnableRedirects 方法异常解决
- 【跟我学Spring3】【第四节】 DI 之 DI的配置使用 ——跟我学spring3
- 线性代数的疑惑
- C#:ListView控件如何实现点击列表头进行排序?
- 实习记录9
- 在无序序列中找出最长的连续序列 Longest Consecutive Sequence
- three.js 初探
- 9.选择排序——堆排序
- DHCP服务器的搭建
- C# 调用Dll 文件
- ubuntu Java环境配置
- 汤姆大叔的博客