打印
[STM32F1]

关于STM32F103 USART1的奇怪问题,请大家来帮帮忙

[复制链接]
3427|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liyshen|  楼主 | 2015-5-19 00:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 liyshen 于 2015-5-19 00:27 编辑

我最近刚开始玩STM32,现在遇到一个奇怪的问题暂时无法解决;请大家帮帮忙!工程代码在附件中

具体问题是这样的,刚上电时电脑的串口助手无法收到STM32F103的USART1发来的数据;但同样的代码STM32F103的USART2却可以!
另外我还做了一个实验,同一份代码原本是串口助手无法收到STM32F103的USART1发来的数据的;但只要此时通过串口助手向单片机的USART1发送过数据后,之后就可以在串口助手收到STM32F103的USART1发送的打印数据。所以感觉是初始状态时STM32F103的USART1的初始化有问题。



搜索
复制

stm32_demo.rar

269.55 KB

沙发
liyshen|  楼主 | 2015-5-19 00:29 | 只看该作者

使用特权

评论回复
板凳
airwill| | 2015-5-19 06:58 | 只看该作者
刚上电时电脑的串口助手无法收到STM32F103的USART1发来的数据;但同样的代码STM32F103的USART2却可以!

这里特别要注意一下, USART1, 2 的时钟频率是不同的. 检查一下波特率

使用特权

评论回复
地板
mmuuss586| | 2015-5-19 08:18 | 只看该作者
先不要接电脑串口;
板子的发送和接收短路下,自发自收是否正常,并测试数据是否正确;
顺便用示波器看下,波特率是否正确;

使用特权

评论回复
5
liyshen|  楼主 | 2015-5-19 21:53 | 只看该作者
airwill 发表于 2015-5-19 06:58
刚上电时电脑的串口助手无法收到STM32F103的USART1发来的数据;但同样的代码STM32F103的USART2却可以!

这 ...

由于只要从串口助手发过一次数据给单片机后,只要不断电单片机USART1打印的信息都可以在串口助手中收到;那就应该可以确定不是时钟信号的问题了吧?

使用特权

评论回复
6
liyshen|  楼主 | 2015-5-20 11:42 | 只看该作者
没有大侠来帮忙吗?

使用特权

评论回复
7
kiya0407| | 2015-6-16 11:27 | 只看该作者
楼主,我的问题和你差不多,我用的stm32f103rb 同样的代码在一个工程里USART1可以发送数据到串口助手,另外一个工程里同样的代码USART1却发不出去.你的问题解决了吗?怎么解决的

使用特权

评论回复
8
XIONGWEI2010| | 2015-6-16 14:13 | 只看该作者
本帖最后由 XIONGWEI2010 于 2015-6-16 14:18 编辑

stm32_demo.part01.rar (976.56 KB)

stm32_demo.part02.rar (976.56 KB)

stm32_demo.part03.rar (976.56 KB)

stm32_demo.part04.rar (976.56 KB)

stm32_demo.part05.rar (378.01 KB)

试一下

使用特权

评论回复
9
zhangrui2004| | 2015-6-16 14:42 | 只看该作者
你使用的是不是STM32F103的 nucleo?
在这块板子上芯片的UART1和STLINK是连起来的,你把程序写进去把板子上的电阻SB13 14拿掉试试

使用特权

评论回复
10
lo_529| | 2015-6-16 15:11 | 只看该作者
mmuuss586 发表于 2015-5-19 08:18
先不要接电脑串口;
板子的发送和接收短路下,自发自收是否正常,并测试数据是否正确;
顺便用示波器看下, ...

简单实用的好办法。

使用特权

评论回复
11
mmuuss586| | 2015-6-16 18:37 | 只看该作者
lo_529 发表于 2015-6-16 15:11
简单实用的好办法。

恩;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

22

帖子

0

粉丝