请教RTX51 tiny问题
我按照手册重新写了个简单程序如下:<br /><br />#include <rtx51tny.h> <br />#include <reg52.h><br /><br />long counter0; <br />long counter1; <br /> <br />job0 ()_task_ 0 <br /> { <br /> os_create_task(1); //建立任务0 <br /><br /> while (1) { <br /> counter0++; <br /> }<br />}<br /> <br />job1 ()_task_ 1 <br />{<br /> while (1) { <br /> counter1++; <br /> }<br />}<br />编译是通过了 但是仿真时程序老是执行任务0 不能执行任务1 请教各位是什么原因?re
怎么没人理?是不是太简单了?你没有把 rtx51tiny 设置成 round-robin 模式
re
?那怎么设置呢?不是直接#include <rtx51tny.h> 后 在operating 设置rtx51tiny就行了? 这个问题你解决了吗?我现在也遇到了。但是我觉得不是设置round-robin的问题,因为设置为round-robin只需要将"Conf_tny.A51"文件中TIMESHARING不设置为0即可,但是我也试过,好象还是只能在task0中跑,我是把编译得到的.hex文件直接下载到单片机中的,觉得程序序运行得还很乱,如果只有task0一个任务还运行正确,建立了其他任务后,程序运行得相当乱,不是我期望得那种,真不知道是咋回事?? 我建立了一个工程,把楼主的程序拷了进去,编译通过了,仿真全速运行,观察两个计数变量,发现可以执行啊,但是如果把其中一个设为断点,就发现只会在一个任务里边运行了,不知道怎么回事 在counter0++; 后加一句 os_wait(K_TMO,2,0);试试... 不要在一个任务里加断点,那样当然出不去了 设置为round-robin只需要将"Conf_tny.A51"文件中TIMESHARING不设置为0即可; 如果这个设置后,不起作用,就应该是软件要升级了,升级成7.0以上版本,就可以用了
页:
[1]