電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>單片機(jī)>消息驅(qū)動的單片機(jī)程序設(shè)計

消息驅(qū)動的單片機(jī)程序設(shè)計

2018-02-02 | rar | 0.46 MB | 次下載 | 1積分

資料介紹

  在單片機(jī)軟件開發(fā)過程中,編制的程序要合理使用各種中斷機(jī)制。當(dāng)中斷要處理的事務(wù)較復(fù)雜時,就會導(dǎo)致中斷服務(wù)程序執(zhí)行時間過長。這時如果另有中斷發(fā)生,如MCS-51這種只有二級中斷優(yōu)先級的單片機(jī),就有可能出現(xiàn)丟失中斷的現(xiàn)象。本文所介紹的智能控制器系統(tǒng),其任務(wù)復(fù)雜:有中斷、定時任務(wù)、循環(huán)執(zhí)行任務(wù)等,并且人機(jī)交互操作還常常會動態(tài)地改變程序的運(yùn)行模式,尤其是液晶的顯示輸出需要占用大量CPU時間,而又不允許丟失重要的數(shù)據(jù)。因此,需要綜合采用消息機(jī)制及狀態(tài)轉(zhuǎn)移法來統(tǒng)一地處理好CPU的任務(wù)安排。

  在Windows面向?qū)ο?a target='_blank' class='arckwlink_none'>編程方法中,消息是各個對象之間進(jìn)行通信的手段。程序通過消息來請求對象進(jìn)行動作,對象間的聯(lián)系或相互作用也是通過消息來完成的。消息中包含了消息發(fā)送者的要求,消息接收者在收到消息后,根據(jù)需要來處理消息。系統(tǒng)將會維護(hù)一個或多個消息隊列,所有產(chǎn)生的消息都會被放入或是插入隊列中。系統(tǒng)會在隊列中取出每一條消息,根據(jù)消息的接收句柄將該消息發(fā)送給擁有該窗口的程序的消息循環(huán)。每個運(yùn)行的程序都有自己的消息循環(huán),在循環(huán)中得到屬于自己的消息并根據(jù)接收窗口的句柄調(diào)用相應(yīng)的窗口過程,而在沒有消息時消息循環(huán)就將控制權(quán)交給糸統(tǒng),所以Windows可以同時執(zhí)行多個任務(wù)。

  與Windows多任務(wù)操作系統(tǒng)相比,單片機(jī)是一個單任務(wù)的系統(tǒng),資源十分有限,不易同時運(yùn)行多個程序。因此,單片機(jī)系統(tǒng)不可能像Windows那樣建立龐大的消息循環(huán)機(jī)制,將消息分發(fā)給各個程序并行處理。在基于消息的單片機(jī)編程中,消息機(jī)制可以采取一種簡化的方式來定義:當(dāng)某個事件(例如中斷)發(fā)生時,事件處理程序(如中斷服務(wù)程序)設(shè)置相應(yīng)的標(biāo)志,不同的標(biāo)志即代表不同的消息;主程序在消息循環(huán)中不斷地判斷這些標(biāo)志,以決定啟動哪一個處理函數(shù)(相當(dāng)于將消息發(fā)送給特定的消息處理函數(shù))。這就可能并且允許采用異步方式處理各種中斷及定時任務(wù)。因此將中斷產(chǎn)生的標(biāo)志作為消息,而數(shù)據(jù)處理則放在消息循環(huán)中進(jìn)行,就可以在單片機(jī)編程中引入消息的概念。本文以智能溫室控制器主程序的設(shè)計為例來說明使用消息驅(qū)動的程序設(shè)計方法。

消息驅(qū)動的單片機(jī)程序設(shè)計

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 651單片機(jī)窗簾控制器仿真程序
  12. 1.93 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)大棚環(huán)境控制器仿真程序
  14. 1.10 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)