[STM32F1] 串口接收端需要上拉吗

[复制链接]
2400|39
 楼主| renyaq 发表于 2020-11-5 22:43 | 显示全部楼层 |阅读模式
调试一个STM32F103ZET6做的板子,用了串口3给一个串口屏发送数据,刚开始没加屏幕调试串口功能的时候,发现了一个奇怪的问题。
    过程很麻烦,简单总结就是,我只要使用串口发送端发送了数据,在这个时候,我用示波器的探头碰一下接收端,STM32F就死机了。
llia 发表于 2020-11-5 22:47 | 显示全部楼层
不使用串口?
 楼主| renyaq 发表于 2020-11-5 22:50 | 显示全部楼层
如果不使用串口,碰接收端就不会死机。
stly 发表于 2020-11-5 22:56 | 显示全部楼层

然后呢?你是怎么应对这个的呢        
 楼主| renyaq 发表于 2020-11-5 22:59 | 显示全部楼层
发现了这个现象以后,我想示波器探头碰到接收端,就相当于对接收端进行了下拉。
zwll 发表于 2020-11-5 22:59 | 显示全部楼层
又想马儿跑,又想马儿不吃草,你多买点内存不就够了?同一个型号内存大小不一样的很多
 楼主| renyaq 发表于 2020-11-5 23:03 | 显示全部楼层
为了解决这个问题,我就对接收端进行了上拉,上拉以后,这个问题消失了。
 楼主| renyaq 发表于 2020-11-5 23:09 | 显示全部楼层
    但是,我手头还有别人做的一个东西,也是用的这个芯片,接收端也没有上拉。
morrisk 发表于 2020-11-5 23:13 | 显示全部楼层
    是不是这个芯片的串口接收端必须上拉,这种要求还真是挺奇怪的,有人碰到过类似的吗?
 楼主| renyaq 发表于 2020-11-5 23:16 | 显示全部楼层
补充实验,为了防止是哪里没设置对,我在串口发送数据和不发送数据的时候都做了实验,结果是不管什么时候用探头接触接收端,都会死机
llia 发表于 2020-11-5 23:20 | 显示全部楼层
你就没确认程序死在哪里了
langgq 发表于 2020-11-5 23:24 | 显示全部楼层
这种情况,不要用探头去碰触接收端!在板子上电启动之前,先把示波器探头给连接到接收端脚上!然后上电启动系统!看死不死!
 楼主| renyaq 发表于 2020-11-5 23:30 | 显示全部楼层
一进入发送数据的那个库函数就死了,就是USART_SendData()那个函数,然后看编译器的光标指到了一个位置,这个位置是.s那个文件的,这一行就一个B的字母
 楼主| renyaq 发表于 2020-11-5 23:34 | 显示全部楼层
就是这个位置
文件是stm32f10x.s
 楼主| renyaq 发表于 2020-11-5 23:37 | 显示全部楼层
 楼主| renyaq 发表于 2020-11-5 23:41 | 显示全部楼层
 楼主| renyaq 发表于 2020-11-5 23:44 | 显示全部楼层
按你说的不会死机,很正常。
llljh 发表于 2020-11-5 23:49 | 显示全部楼层
你串口接收中断和发送中断都开启了?
yufe 发表于 2020-11-5 23:52 | 显示全部楼层
加上拉,还不如串个电阻;
再加LC滤波,L用磁珠
 楼主| renyaq 发表于 2020-11-5 23:55 | 显示全部楼层
开了接收中断,没开发送中断。发送的时候,稍微等一会,发送完成了再退出去
您需要登录后才可以回帖 登录 | 注册

本版积分规则

700

主题

10138

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部