|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
我的rtx tiny 為什么跑不起來 |
| 作者:lessonwill 欄目:嵌入式系統(tǒng) |
我跑幾個例子程序都沒有跑起來,原因是:一直沒發(fā)現(xiàn)任務(wù)切換,操作系統(tǒng)似乎沒有起作用,為什么? 配置文件是用的系統(tǒng)默認(rèn)的。 /******************************************************************************/ /* */ /* RTX_EX1.C: The first RTX-51 Program */ /* */ /******************************************************************************/ #include <rtx51tny.h> /* RTX-51 tiny functions & defines */ #include <reg51.h> LONG counter0; /* counter for task 0 */ LONG counter1; /* counter for task 1 */ LONG counter2; /* counter for task 2 */ /******************************************************************************/ /* Task 0 'job0': RTX-51 tiny starts execution with task 0 */ /******************************************************************************/ job0 () _task_ 0 { os_create_task (1); /* start task 1 */ os_create_task (2); /* start task 2 */ while (1) { /* endless loop */ counter0++; /* increment counter 0 */ } } /******************************************************************************/ /* Task 1 'job1': RTX-51 tiny starts this task with os_create_task (1) */ /******************************************************************************/ job1 () _task_ 1 { while (1) { /* endless loop */ counter1++; /* increment counter 1 */ } } /******************************************************************************/ /* Task 2 'job2': RTX-51 tiny starts this task with os_create_task (2) */ /******************************************************************************/ job2 () _task_ 2 { while (1) { /* endless loop */ counter2++; /* increment counter 2 */ } } |
| 2樓: | >>參與討論 |
| 作者: pubstar 于 2006/8/5 16:08:00 發(fā)布:
KEIL給的例子代碼全是可以正常運行的呀, |
|
| 3樓: | >>參與討論 |
| 作者: zgl7903 于 2006/8/8 9:27:00 發(fā)布:
個人見解 摟住的任務(wù)里都沒有留出給其他任務(wù)工作的時間,在每個任務(wù)的while循環(huán)里添加 os_wait(K_TMO,10,0); 為其它任務(wù)留出時間片 |
|
| 4樓: | >>參與討論 |
| 作者: zgl7903 于 2006/8/8 9:32:00 發(fā)布:
個人見解2 或者是使用os_switch_task (); // run other tasks |
|
| 5樓: | >>參與討論 |
| 作者: yxhyxh 于 2006/8/14 12:58:00 發(fā)布:
應(yīng)該可以運行的,你在PROJECT->OPTION中的設(shè)置可能不對吧 PROJECT->OPTION->TARGET->OPERATION:RTX51 TINY |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |