OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6273|回复: 6

STM32F105串口发送突然不行了

[复制链接]

13

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2013-7-9
在线时间
6 小时
发表于 2015-12-31 12:26:41 | 显示全部楼层 |阅读模式
5金钱

在调试CAN通信,使用串口4进行调试信息的打印,一直打印的很欢乐,但是在某一次修改后(与CAN相关的代码)烧录发现不能打印了,仿真发现程序停在了发送等待可能的原因即验证方法如下:
1、串口可能坏了,换一块板子测试,出现同样的问题,排除硬件损坏的可能性
2、CAN代码影响了UART(虽说有点扯淡),屏蔽所有的CAN代码,只留下与串口打印相关的东西,便衣下载仿真,依然是这个问题排除
3、是不是printf()函数在捣鬼?不使用printf,直接使用如下语句        while((UART4->SR&0X40)==0);  UART4->DR = (u8) ch;,仍然是这个问题,排除
4、我没辙了
调试时的现象
在MDK上查看USART相关的寄存器,程序一开始时TC(transmit complete)值为1,在写入新数据后置0,这是正常的,发现在写入之后DR寄存器 值不变一直是0,怀疑是不是没有正常的写入数据,但是一想,DR寄存器包含两个物理寄存器,一个用于写,一个用于读,所以我们看到的DR应该是  用于读的,故看不到我们写进去到的值,是这样吗?




各位大神,我实在是没有调试的思路了为什么串口突然 就不行了呢?可能是什么原因呢


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

20

主题

468

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1684
金钱
1684
注册时间
2014-2-25
在线时间
230 小时
发表于 2015-12-31 13:24:12 | 显示全部楼层
光写一个串口的程序进去试试看行不行呢
回复

使用道具 举报

13

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2013-7-9
在线时间
6 小时
 楼主| 发表于 2015-12-31 13:32:44 | 显示全部楼层
1201yuge 发表于 2015-12-31 13:24
光写一个串口的程序进去试试看行不行呢

后来基本上只有串口的程序了,还是不行
回复

使用道具 举报

20

主题

468

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1684
金钱
1684
注册时间
2014-2-25
在线时间
230 小时
发表于 2015-12-31 13:36:59 | 显示全部楼层
电子玩霸 发表于 2015-12-31 13:32
后来基本上只有串口的程序了,还是不行

不要基本上,就另外找个纯串口的程序试试
回复

使用道具 举报

2

主题

12

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2015-11-21
在线时间
4 小时
发表于 2015-12-31 15:48:06 | 显示全部楼层
你再看看你的串口4时钟是不是做了修改,他有三个时钟GPIO AFIO UART4,之前我也碰到这个问题。
回复

使用道具 举报

15

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2015-3-12
在线时间
18 小时
发表于 2015-12-31 20:44:40 | 显示全部楼层
本帖最后由 挣点圆子 于 2015-12-31 20:45 编辑

在串口死的前面一段代码。你将串口复位一下,再重新初始化一次,看看能不能过。可能是你的其他代码在初始化的时候把某些和串口共用的东西改掉了,比如时钟
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2019-12-30
在线时间
1 小时
发表于 2021-9-3 14:31:47 | 显示全部楼层
有串口4的代码吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-1 02:22

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表