硬汉嵌入式论坛

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

[FreeRTOS] 关于FreeRTOS的中断问题

[复制链接]

35

主题

80

回帖

185

积分

初级会员

积分
185
发表于 2018-5-19 14:29:57 | 显示全部楼层 |阅读模式
最近项目升级系采用FreeRTOS系统,发现RS485中断接收的数据有异常,要么多一个数据要么少一个数据;以前用UCOSII的时候并没有出现此问题;
分析:难道是RS485接收数据有问题,或者是没配置好?
验证:将所有的任务关闭,单纯的启动RS485任务,然后用PC端不断的发送数据,看RS485的数据是否完整;经过测试是没有问题点;
分析:难道是其他的任务对其有影响?或者是任务中有进入临界断的时候;正好来中断,从而丢失数据?
此外还发现一个现象:如果从机在间隔100ms的时候,再次发送指令,RS485接收会多一个数据;例如发送数据为;0x55,0x01,0x00,0x01,0xff;但是接收
的时候会出现6个数据;0x55,0x55,0x01,0x00,0x01,0xff;
通过现象猜测:中断再接收到第一个命令的时候0X55,这个时候如果在来第二个命令,是否会打断第一个命令的数据;理论上是延时100ms;难道加了freeRTOS,rs485中断响应变慢了?
本系统中只有一个RS485中断;理论上行不通;
求大神帮忙分析下是哪个地方的问题点?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106978
QQ
发表于 2018-5-19 15:06:32 | 显示全部楼层
仅开启1个任务测试,简单的跑个LED。
回复

使用道具 举报

35

主题

80

回帖

185

积分

初级会员

积分
185
 楼主| 发表于 2018-5-19 15:09:07 | 显示全部楼层
可以确定问题点:进入临界点的时候,如果来中断是不响应的,从而丢数据;如果间隔100ms发送数据,是会多接收数据的
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-13 01:14 , Processed in 0.145208 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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