硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1095|回复: 1
收起左侧

[FreeRTOS] 在FreeRTOS系统,通过串口进行高速modbus tcp通信导致PCB板卡死

[复制链接]

1

主题

0

回帖

3

积分

新手上路

积分
3
发表于 2022-2-16 14:49:39 | 显示全部楼层 |阅读模式
求助各位大佬,我在自己设计的板子中,使用的是STM32F429ZIT6芯片,通过串口发送和接收modbus RTU数据,经过USR-K7转换成modbus TCP协议数据,实现与上位机通信。在通信过程中,当上位机的读取频率达到100次/秒时,板子在运行20分钟后,会出现卡死的现象,而未进行通信或通信频率在1次/秒的情况下,测试3小时未出现卡死的情况。
卡死的Debug的界面如下所示:
debug.png
在程序中,与通信相关除移植的Freemodbus库文件及串口、定时器的设置函数以外,只有一个FreeRtos的任务函数:
void MB_Poll_Task(void *parameter)
{
        MB_Parameter_Init();
        eMBEnable();
        for(;;)
        {
                eMBPoll();
                vTaskDelay(10);
        }
       
}

想问问各位大佬知道这可能是哪里出了问题。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106856
QQ
发表于 2022-2-17 09:48:13 | 显示全部楼层
直接把FreeRTOS去掉,裸机测试下是否正常。你这个用不用FreeRTOS意义不大。
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-8 07:40 , Processed in 0.239043 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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