liliang9554 发表于 2022-6-9 20:43

STM8串口工作一段时间后出现通讯异常的问题

公司有款产品用STM8L052R8T6串口(uart3 PF0 PF1)和STM8L051F3(UART1 PA2 PA3)通讯。芯片通过40cm长的导线连接在一起,导线可以拔插。连接线上串联有100R电阻,不加电阻会导致芯片串口甚至整个芯片烧坏。STM8L051F3控制一个电机,堵转时电流可能会有6A。
    大部时间两个单片机处理休眠状态,关闭串口,RX脚配置为外部中断下降沿触发,TX配置为推挽输出高。芯片唤醒的时候把中断功能关闭再使能串口。发送数据前先发送几个0x00唤醒对方再发有用数据。通讯速率很低。两个芯片都用了RC16M主频。

    产品在终端客户手上使用一段时间后可能会出现通讯不上的问题。出现问题后过一段时间可能会自行恢复。通过对STM8L052R8T6做热复位, 问题犹在,STM8L051F3有每分钟软件复位机制。系统重新后就正常了,经过一段时间后可能还会出现问题。有个客户反馈产品完全异常之前有出现10次操作有3次成功的状态。产品带回公司测试几个月也未能复现通讯异常状态。

    除了串口不能通讯外其它功能都可以正常操作。STM8L052R8的另外一个串口也还可以正常操作。STM8L051还可以执行按键检测和电机控制。

heweibig 发表于 2022-6-9 20:47

可能是串口硬件问题

yszong 发表于 2022-6-9 20:50


还有什么现象?能再详细描述下吗?

liliang9554 发表于 2022-6-9 20:52

用了IAR for stm8 的开发环境。因为空间不足,把代码优化等级调到最高。

tian111 发表于 2022-6-9 20:56

以前用STVD出现过因为优化等级太高导致结果出错,后换成IAR.

zhanghqi 发表于 2022-6-9 20:58

没听过stm串口很弱,好用的很。

zwll 发表于 2022-6-9 21:04

客户处有大功率的电器运行,硬件干扰,代码写的不够健壮,没看门狗

liliang9554 发表于 2022-6-9 21:06

我也是一直在用ST的芯片,32F,8S,8L的都在用。串口也是一直在用。从来没有遇到过这样的问题。关于STM串口弱的问题,写在这里也是想求证一下。可以确定的时这个产品是家用的,不会有大功率电器干扰,静电测试15K没有问题。软件方面和另外一个串口的相似,反复验证过代码上。

huangchui 发表于 2022-6-9 21:09

软件问题,硬件问题一般重启后仍然有问题的。可能是通信过程中出现数据错了,导致一直丢帧

dengdc 发表于 2022-6-9 21:11

如果你有富裕的管脚,建议你使用独立的管脚用于唤醒,如果**用这种方法,唤醒时要考虑单字节发送,然后串口停止发送超过一个字节(10bits)的时间

wuhany 发表于 2022-6-9 21:14

嗯,因为受限于连线的粗细关系,所以用串口做了复用。在系统唤醒之后串口就是专用的了,发送唤醒字节后还加了10mS延时,远大于11bits的时间。

liliang9554 发表于 2022-6-9 21:16

看现象应是电机大负载突变干扰,建议 电源加大抗干扰措施。主要看客户负载突变时,监视主控板电源变化纹波即可

zhanghqi 发表于 2022-6-9 21:19

在MCU的LDO输入端加好二极管和大电容。用示波器看过MCU的VCC,即使是在电机电流大到5A时,VCC的波动几乎是没有的。电机驱动芯片的逻辑电源和MCU共用。驱动芯片的地加了0.1R的采样电阻用于给单片机判断电机堵转。

juventus9554 发表于 2022-6-9 21:22

改成用0xFF唤醒试试,唤醒时间太长可能导致起始位错位。

liliang9554 发表于 2022-6-9 21:25

嗯,我在发送唤醒字节之后加了10ms延时,应该是足以避开错位的问题。

zhanghqi 发表于 2022-6-9 21:27

这个通讯频率很低,还涉及低功耗唤醒, 在客户那能复现,实验室无法复现,热复位还有问题,感觉应该还是客户那环境干扰严重。

pengf 发表于 2022-6-9 21:30

建议软件包 通讯字节 尾 加 CRC 校验,CRC不通过的,丢掉重发

huangchui 发表于 2022-6-9 21:32

主电源是3.3 v吗还是5 v, 要不改成 RS 485 对 RS 485 这样通讯温定性就很强悍了,实质上大距离,都是用485 来提高通讯可靠性。

liliang9554 发表于 2022-6-9 21:40

谢谢!主电源3.3V 要低功耗,没有几uA的485方案吧?而且通讯要求全双功。

liliang9554 发表于 2022-6-9 21:43

预料中的结果,多谢大家啦
页: [1]
查看完整版本: STM8串口工作一段时间后出现通讯异常的问题