51的CPU Ucos2的操作系统
问题描述如下: 在TASK10(优先级为15)中我用于大量的数据解析和处理 涉及到大量的数据读出和存储
TASK2(优先级是7)是一个监控性的任务用于遥控等按键扫描 遥控器译码
TASK1(优先级是10)用于处理由TASK2监控到的遥控器按键
还有几个其他的任务
在我反复操作遥控器时,也就是通过task2监控遥控器译码之后交与task1处理,
task1响应对应遥控器按键的功能,读取数据解析数据等,此时TASk10也在接收数据。
反复操作之后发现程序不正常了,此时TASK2,TASK1都不运行了,感觉是之后只有TASK10和
空闲任务运行了,我在程序没有挂起TASK2he TASK1的操作,找了一天没有找到原因,
大家知道原因或者有可以确定原因的办法,或者有类似的问题或者有好的建议都发表一下看法。
你可以给你的每一个Task分配一个IO管教,然后再进入Task时将其拉高/拉低,然后观察这三个Task的时序,看看在什么情况下发生冲突~
然后再想解决办法。
另:用51做遥控器的解码啊?你用那款?定时器够用么?
用的是我们自己的芯片,是51的核但是IC做了很多的改动,你提的方法很好,我明天你的方法去看看到底怎么回事。
看Task的TCB有没有被修改过,这个问题以前也遇到过
以前用过C8051的芯片,不错