日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

OS中,某個任務(wù)占用系統(tǒng)資源太大,請求解決思路。

作者:kanprin 欄目:嵌入式系統(tǒng)
OS中,某個任務(wù)占用系統(tǒng)資源太大,請求解決思路。
情況描述:

用mega64作主機,串口0與從機MEGA8通信,串口1與PC通信。傳輸網(wǎng)絡(luò)為半雙工的485網(wǎng)絡(luò)。1主,多從機制。從機主要負責監(jiān)測各種事件的發(fā)生情況。mega64以輪循的形式查詢各MEGA8的情況,而同時要響應(yīng)PC的查詢。

問題:

為了保證實時性,mega64輪詢MEGA8的時間間隔就要很小,導致該輪詢?nèi)蝿?wù)占用系統(tǒng)資源太多,不能很好的響應(yīng)PC的查詢。


嘗試:
  
增加mega64查詢MEGA8的時間間隔,但降低了實時性,不可取。
從機MEGA8有事件發(fā)生時主動向主機mega64發(fā)數(shù)據(jù),這就需要組建多主機的485網(wǎng)絡(luò),但一直沒嘗試成功。



求救: 不知道大家是否有比較好的解決問題的思路? 或有多主機485網(wǎng)絡(luò)組建經(jīng)驗的兄弟給點資料參考。


補充說明:

mega64和PC通信以及和從機MEGA8通信都是基于中斷完成的。在中斷中產(chǎn)生相應(yīng)的信號量來驅(qū)動某的任務(wù)的完成。

如task1為與PC通信的任務(wù),task2為與從機通信的任務(wù)。在任務(wù)1中等待sem1,得到信號量后再做相應(yīng)的操作,沒有等待信號量超時的概念。 而在與從機通信的任務(wù)2中,由于采用輪循查詢的機制,當某個從機沒響應(yīng)時,應(yīng)暫先跳過,查詢別的從機。所以引進了等待超時的感念,比如10ms從機還沒響應(yīng),則查詢下一從機。所以任務(wù)2就很可能占用了比較大的系統(tǒng)資源,(關(guān)鍵是任務(wù)2查詢從機時,從機響應(yīng)查詢,而引起的串口0中斷占用教多)。

謝謝大家的關(guān)注。 

2樓: >>參與討論
LPCfAnS
頂....485在學...
 
3樓: >>參與討論
何以解憂
出個餿主意:AVR+MCP2510(SPI接口)+82C250,玩canbus算了
老周說了,canbus的可靠性比RS485高一個檔次;
現(xiàn)成的多主+屏蔽過濾的機制,保證mcu忙的過來

4樓: >>參與討論
kanprin
呵呵, 謝謝何以解憂的“餿主意”。
如果485確實一直都搞不定的話,到時再考慮換總線方式了。
最好是在原來的基礎(chǔ)上有所改進而達到目的比較理想了。
要不又要改電路。呵呵。

5樓: >>參與討論
rockos
呵呵,任務(wù)占用資源大不是什么壞事吧

你在輪循時,是不是對每個MEGA8都有等待呀?這樣如果每個MEGA8都不響應(yīng),那你豈不是輪循一周需要N * Tmax這么長時間!

這樣的話就不是任務(wù)占用資源的問題了,而直接影響到系統(tǒng)的實時性了,這種問題需要從輪循方案上修改。

6樓: >>參與討論
kanprin
很想請教rockos一個問題。
不知道你說的在輪詢方案上修改,確實是個方向性的建議。
不過是否可以具體些 ?
如何無需等待,而能判斷出從機有沒有事件發(fā)生呢?


7樓: >>參與討論
松鼠的大樹
考慮令牌環(huán)機制
既然對從機的查詢是固定的輪詢,建議不要通過主機查詢了,將從機構(gòu)成令牌環(huán)網(wǎng)絡(luò),主機對總線進行監(jiān)聽,同時跟PC進行通訊。

如果主機有特殊命令要發(fā)給從機的,將主機聯(lián)接在令牌環(huán)中。

8樓: >>參與討論
xillinx
應(yīng)答方式查詢
你設(shè)計的程序結(jié)構(gòu)有問題,如果從站太多,你不能采用查詢問答的方式,
你需要采用查詢應(yīng)答方式,即被查詢從站如果沒有數(shù)據(jù)立即應(yīng)答NAK,否則應(yīng)答數(shù)據(jù),還需要定時查詢從站是否存在,如果這個從站有故障或者不存在,在下一段時間那就不需要對它查詢,所以你的最大等待時間就是發(fā)送NAK的時間。這樣可以提高你的效率。

9樓: >>參與討論
kanprin
呵呵, 樓上兩位朋友的建議都很不錯。
to 松鼠的大樹: 你的建議可能效率會高很多,但我對令牌環(huán)網(wǎng)絡(luò)不怎么了解,如果真用這個的話,到時還望多多指教。
to xillinx:  我現(xiàn)在查詢的方式差不多也是你指的那種,不過為了確保數(shù)據(jù)的可靠性,應(yīng)答有3~4個字節(jié),你說是不是沒必要呢?1個字節(jié)怕很不可靠的。

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
求助
求ARM數(shù)據(jù)采集程序
出售9成新coldfire的 mcf5307嵌入式開發(fā)板
嵌入式顯示芯片的現(xiàn)狀分析
請教一個嵌入式系統(tǒng)編程的概念問題
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 www.hbjingang.com 浙ICP證030469號