|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
請教UCOS信號量的使用 |
| 作者:kanprin 欄目:嵌入式系統(tǒng) |
我在一個(gè)任務(wù)中等待一個(gè)信號量的進(jìn)來,然后再執(zhí)行別的任務(wù) 如: for (;;) { OSSemPend(ButtonSem,0,&err); …… 后續(xù)任務(wù) …… } 但我把唯一的產(chǎn)生信號量的語句注釋掉了,為什么還會進(jìn)入后面的任務(wù)呢? 這邊設(shè)置等待時(shí)間為0,不是一直等待下去嗎?程序中有用到中斷, 但我中斷中也沒有產(chǎn)生該任務(wù)所等待的信號量 。 |
| 2樓: | >>參與討論 |
| 作者: everbright 于 2005/12/7 16:17:00 發(fā)布:
檢查OS_CFG.H里OS_SEM_EN設(shè)置是否為0,為0時(shí)該函數(shù)是不起作用的 |
|
| 3樓: | >>參與討論 |
| 作者: PandaFeng 于 2005/12/7 18:31:00 發(fā)布:
看看建立 ButtonSem 時(shí)的值是否為0 |
|
| 4樓: | >>參與討論 |
| 作者: qfqf16 于 2005/12/7 18:45:00 發(fā)布:
再多檢查檢查! 可能在建立信號量時(shí)有問題 |
|
| 5樓: | >>參與討論 |
| 作者: kanprin 于 2005/12/8 8:06:00 發(fā)布:
多謝各位的指點(diǎn),現(xiàn)在問題已經(jīng)解決了 主要是OS_CFG.H 文件配置中OS_MAX_EVENT配置的值太小了。我用了好幾個(gè)信號量。 |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |