找回密码
 立即注册
楼主: xiaobendan

请教STC15F2K32和串口屏通讯失败的问题

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:228
  • 最近打卡:2025-12-18 07:35:03
已绑定手机

32

主题

137

回帖

1424

积分

金牌会员

积分
1424
发表于 2025-12-9 11:36:14 | 显示全部楼层
Ayb_*** 发表于 2025-12-9 10:29
每次发送都要等待前一发送完成,建议第一字节发帝直接延时一段时间再发 ...

TI发生了,不就是发完了吗?
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:191
  • 最近打卡:2025-12-18 08:26:01
已绑定手机

19

主题

541

回帖

1919

积分

金牌会员

积分
1919
发表于 2025-12-9 11:38:15 | 显示全部楼层
xiaob*** 发表于 2025-12-9 11:36
TI发生了,不就是发完了吗?

是的,
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:587
  • 最近打卡:2025-12-18 12:29:34

9

主题

562

回帖

3807

积分

论坛元老

积分
3807
发表于 2025-12-9 12:31:16 | 显示全部楼层
xiaob*** 发表于 2025-12-9 11:35
看波形,锁死就会出现这种波形?关键是屏上的操作单片机这边还是有正常的动作的,重发间隔和正常工作时是 ...

我说的锁死意思不是死机,是通讯错误重发引起的特殊现象.
一方收不到响应就一直重发,另一方来不及处理一直发送错误数据,形成死循环,
至于第一次错发的原因,可能受干扰,也可能缓冲区越界,凡是有错误重发机制的通讯系统,都应当考虑如何防止进入这种状态


回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:228
  • 最近打卡:2025-12-18 07:35:03
已绑定手机

32

主题

137

回帖

1424

积分

金牌会员

积分
1424
发表于 2025-12-9 14:03:26 | 显示全部楼层
网*** 发表于 2025-12-9 12:31
我说的锁死意思不是死机,是通讯错误重发引起的特殊现象.
一方收不到响应就一直重发,另一方来不及处理一直 ...

看波形,根本没有数据啊
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:228
  • 最近打卡:2025-12-18 07:35:03
已绑定手机

32

主题

137

回帖

1424

积分

金牌会员

积分
1424
发表于 2025-12-9 14:05:24 | 显示全部楼层
网*** 发表于 2025-12-9 12:31
我说的锁死意思不是死机,是通讯错误重发引起的特殊现象.
一方收不到响应就一直重发,另一方来不及处理一直 ...

你看波形,每个下降沿周期1MS多点,9600波特率,一个字节发完了也不止1毫秒吧。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:587
  • 最近打卡:2025-12-18 12:29:34

9

主题

562

回帖

3807

积分

论坛元老

积分
3807
发表于 2025-12-9 19:48:41 | 显示全部楼层
xiaob*** 发表于 2025-12-9 14:05
你看波形,每个下降沿周期1MS多点,9600波特率,一个字节发完了也不止1毫秒吧。 ...

波形里面,串口屏发来的数据帧远大于1ms了,单片机没收完整的数据帧就发送数据,本身就是个问题点
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:228
  • 最近打卡:2025-12-18 07:35:03
已绑定手机

32

主题

137

回帖

1424

积分

金牌会员

积分
1424
发表于 2025-12-9 22:27:49 来自手机 | 显示全部楼层
网老四 发表于 2025-12-9 19:48
波形里面,串口屏发来的数据帧远大于1ms了,单片机没收完整的数据帧就发送数据,本身就是个问题点 ...

那个不是我发的,屏每次只发1-2个字节,有检验,单片机接收到完整并检验通过的数据才会发送对应的数据,同时做出相应动作例如某个继电器吸合,现在看动作都有相应,说明接收正确并且启动发送,但是脚上却没有信号,只有不断的那个起始信号,我认为这个脚已经失控了,为啥失控了,不知道,之前有过类似的情况,那次检测到的不是这样的,是有正常的发送内容,但是里面夹杂着一些非常窄的低尖峰,示波器要拉很长才能看到,但是通讯也是失败的,那个还能很容易复现,就是强烈的电磁干扰,你可以试试,我用15W,15F,8C的都试过,一样的,这次抓到的就是完全没有数据了,没有干扰,就是正常的通电和自动运行
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:587
  • 最近打卡:2025-12-18 12:29:34

9

主题

562

回帖

3807

积分

论坛元老

积分
3807
发表于 2025-12-10 12:28:58 | 显示全部楼层
xiaob*** 发表于 2025-12-9 22:27
那个不是我发的,屏每次只发1-2个字节,有检验,单片机接收到完整并检验通过的数据才会发送对应的数据, ...

开帖的第一张图不是标注了是串口屏下发的查询波形吗?查询一到两字节长度的话,
单片机也应该是每隔一到两个字节才会返回数据.
但第二张波形里,单片机是连续无间隔的返回0xFF,这很不正常.

电路问题,芯片问题,还是软件代码问题,先不要急着下结论,
建议具体的电路图,实际的波形,和相关代码发过来,一起解决问题才是目的.
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:228
  • 最近打卡:2025-12-18 07:35:03
已绑定手机

32

主题

137

回帖

1424

积分

金牌会员

积分
1424
发表于 2025-12-10 12:40:58 | 显示全部楼层
网*** 发表于 2025-12-10 12:28
开帖的第一张图不是标注了是串口屏下发的查询波形吗?查询一到两字节长度的话,
单片机也应该是每隔一到两个 ...

TTL串口直连,要啥图?
9600波形,单片机发的就是一个起始位,不断的起始位。没有任何数据,不是啥0XFF。
屏是120MS发送一次请求。单片机不主动发,只有收到正确的数据才按要求返回数据,最多情况是60几个字节吧好像。
发生一次后,断电重启,连续通电几天都不会再发生,但是也有两三天后再次发生的。记忆中好像只有一个这种的。其余都是发生一次后就不再出现。
还有哪个强电磁干扰之后的情况,很容易复现的。楼上我说过的,同样的连接,屏发出的内容里面就没有任何异常。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:587
  • 最近打卡:2025-12-18 12:29:34

9

主题

562

回帖

3807

积分

论坛元老

积分
3807
发表于 2025-12-10 17:42:00 | 显示全部楼层
xiaob*** 发表于 2025-12-10 12:40
TTL串口直连,要啥图?
9600波形,单片机发的就是一个起始位,不断的起始位。没有任何数据,不是啥0XFF。 ...

这是我随便找了个USB转TTL的适配器,9600连续发送0xFF的波形.跟您的波形有区别吗?
您对自己的程序很自信,在应对特定强干扰状况时候,程序上做个简单的识别,然后重新初始化下串口也不会很难吧.
既然容易复现问题,并且可以正常处理指令,那么专门做个测试代码,把串口相关的参数和数据显示出来,分析到底是哪里异常改变了.
您要是怀疑是芯片硬件本身抗干扰能力问题,确实有这个可能性.
但别人用了那么多也没反映这个现象,说明您那边情况比较特殊.更值得研究下产生异常的根本原因.




截图202512101719548483.jpg
回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-12-18 14:48 , Processed in 0.150812 second(s), 94 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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