資料介紹
我們?cè)谌腴T階段,一般面對(duì)的設(shè)計(jì)都是單一的簡(jiǎn)單的任務(wù),流程圖可以如圖1所示,通常會(huì)用踏步循環(huán)延時(shí)來(lái)滿足任務(wù)需要。
面對(duì)多任務(wù),稍微復(fù)雜的程序設(shè)計(jì),沿用圖1的思想,我們會(huì)做出如圖2所示的程序,在大循環(huán)體中不斷增加任務(wù),通常還要用延時(shí)來(lái)滿足特定任務(wù)節(jié)拍,這種程序設(shè)計(jì)思想它有明顯的不足,主要是各個(gè)任務(wù)之間相互影響,增加新的任何之后,以前很好的運(yùn)行的任務(wù)有可能不正常,例如數(shù)碼管動(dòng)態(tài)掃描,本來(lái)顯示效果很好的驅(qū)動(dòng)函數(shù),在增加新的任務(wù)后出現(xiàn)閃爍,顯示效果變差了。
很明顯,初學(xué)者在設(shè)計(jì)程序時(shí),需要從程序構(gòu)架思想上下功夫,在做了大量基本模塊練習(xí)之后,需要總結(jié)提煉自己的程序設(shè)計(jì)思路(程序架構(gòu)思想)。
首先我們來(lái)理解“任務(wù)”,所謂任務(wù),就是需要CPU周期“關(guān)照”的事件,絕大多數(shù)任務(wù)不需要CPU一直“關(guān)照”,例如啟動(dòng)ADC的啟動(dòng)讀取。甚至有些任務(wù)“害怕”CPU一直“關(guān)照”例如LCD的刷新,因?yàn)長(zhǎng)CD是顯示給人看的,并不需要高速刷新,即便是顯示的
內(nèi)容在高速變化,也不需要高速刷新,道理是一樣的。這樣看來(lái),讓CPU做簡(jiǎn)單任務(wù)一定很浪費(fèi),事實(shí)也是如此,絕大多數(shù)簡(jiǎn)單任務(wù),CPU都是在“空轉(zhuǎn)”(循環(huán)踏步延時(shí))。對(duì)任務(wù)總結(jié)還可以知道,很多任務(wù)需要CPU不斷“關(guān)照”,其實(shí)這種“不斷”也是有極限的,比如數(shù)碼管動(dòng)態(tài)掃描,能夠做到40Hz就可以了,又如鍵盤掃描,能夠做到20Hz(經(jīng)驗(yàn)值),基本上也就不會(huì)丟有效按鍵鍵值了,再如LCD刷新,我覺(jué)得做到10Hz就可以了,等等??磥?lái),絕大多數(shù)任務(wù)都是工作在低速頻度。而我們的CPU一旦運(yùn)行起來(lái),速度又很快,CPU本身就是靠很快的速度執(zhí)行很簡(jiǎn)單的指令來(lái)勝任復(fù)雜的任務(wù)(邏輯)的。如果有辦法把“快”的CPU分成多個(gè)慢的CPU,然后給不同的任務(wù)分配不同速度的CPU,這種設(shè)想是不是很好呢!確實(shí)很好,下面就看如何將“快”的CPU劃分成多個(gè)“慢”的CPU。
根據(jù)這種想法,我們需要合理分配CPU資源來(lái)“關(guān)照”不同的任務(wù),最好能夠根據(jù)任務(wù)本身合理占用CPU資源,首先看如圖3所示的流程圖,各個(gè)任務(wù)流程獨(dú)立,各任務(wù)通過(guò)全局變量來(lái)交互信息,在流程中有一個(gè)重要的模塊“任務(wù)切換”,就是任務(wù)切換模塊實(shí)現(xiàn)CPU合理分配,這個(gè)任務(wù)切換模塊是怎么實(shí)現(xiàn)的呢?
- LabVIEW的程序實(shí)例詳細(xì)資料說(shuō)明 145次下載
- URAT VHDL的程序與仿真詳細(xì)資料說(shuō)明 11次下載
- C51下的RTX-51實(shí)時(shí)多任務(wù)操作系統(tǒng)的種類和詳細(xì)資料概述 50次下載
- USB串口驅(qū)動(dòng)程序主機(jī)的詳細(xì)資料說(shuō)明 4次下載
- 程序的轉(zhuǎn)移類指令詳細(xì)資料說(shuō)明
- Arduino程序結(jié)構(gòu)及基本函數(shù)的詳細(xì)資料說(shuō)明
- 使用MATLAB程序計(jì)算車位位置的詳細(xì)資料說(shuō)明 3次下載
- LED顯示的電路圖和程序及詳細(xì)資料說(shuō)明 13次下載
- 雷達(dá)管制程序與方法的詳細(xì)資料說(shuō)明 26次下載
- Visual FoxPro程序設(shè)計(jì)教程之結(jié)構(gòu)化程序設(shè)計(jì)的詳細(xì)資料說(shuō)明 8次下載
- Java程序設(shè)計(jì)教程之異常處理的詳細(xì)資料說(shuō)明 13次下載
- C++的實(shí)驗(yàn)教程之循環(huán)結(jié)構(gòu)程序設(shè)計(jì)的詳細(xì)資料說(shuō)明 4次下載
- C語(yǔ)言程序設(shè)計(jì)教程之?dāng)?shù)組的詳細(xì)資料說(shuō)明 7次下載
- JAVA程序設(shè)計(jì)教程之?dāng)?shù)組的詳細(xì)資料說(shuō)明 0次下載
- 復(fù)雜的多任務(wù)程序設(shè)計(jì)方法 181次下載
- 如何利用FreeRTOS的多任務(wù)機(jī)制優(yōu)化程序呢? 715次閱讀
- RA FreeRTOS任務(wù)創(chuàng)建 733次閱讀
- 基于多任務(wù)預(yù)訓(xùn)練模塊化提示 712次閱讀
- 固態(tài)鋰離子電池的詳細(xì)資料解析 8913次閱讀
- RS232接口串口取電電路的詳細(xì)資料介紹 9050次閱讀
- 單片機(jī)多任務(wù)處理方案 9654次閱讀
- 如何進(jìn)行PLC控制程序的設(shè)計(jì)詳細(xì)資料PPT說(shuō)明 6010次閱讀
- 庫(kù)卡機(jī)器人模擬量輸入輸出編程的詳細(xì)資料概述 7040次閱讀
- PPT教程之伺服電機(jī)及其驅(qū)動(dòng)技術(shù)的詳細(xì)資料講解 8034次閱讀
- 遷移學(xué)習(xí)、多任務(wù)學(xué)習(xí)領(lǐng)域的進(jìn)展 3994次閱讀
- PLC常用基本環(huán)節(jié)梯形圖和詳細(xì)文字說(shuō)明詳細(xì)資料概述 1w次閱讀
- 變壓器保護(hù)的基本要求,保護(hù)配置和運(yùn)行規(guī)定的詳細(xì)資料概述 9679次閱讀
- ABB機(jī)器人怎樣多任務(wù)?ABB機(jī)器人多任務(wù)使用方法步驟詳解 3.2w次閱讀
- NLP多任務(wù)學(xué)習(xí)案例分享:一種層次增長(zhǎng)的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu) 4417次閱讀
- 基于高檔數(shù)控系統(tǒng)的實(shí)時(shí)多任務(wù)實(shí)現(xiàn) 1359次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多