<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 時分多線程技術(shù)在單片機(jī)中的應(yīng)用

          時分多線程技術(shù)在單片機(jī)中的應(yīng)用

          作者: 時間:2011-08-10 來源:網(wǎng)絡(luò) 收藏

            本文就時分多線程技術(shù)在中的應(yīng)用進(jìn)行了介紹。該方法為構(gòu)建低成本、高效、便于維護(hù)的系統(tǒng)提供了良好的體系框架結(jié)構(gòu)和設(shè)計思想。

            1 時分多線程結(jié)構(gòu)應(yīng)用

            通常,在應(yīng)用的各種控制系統(tǒng)中,都或多或少地存在著諸如現(xiàn)場數(shù)據(jù)采集、控制量輸出、工作狀態(tài)檢測以及數(shù)據(jù)傳輸?shù)雀鞣N同外設(shè)的交互過程;而各類外設(shè)與Mcu的響應(yīng)速度不匹配,是制約系統(tǒng)整體性能的重要因素。面對這種交互瓶頸,運(yùn)用時分多線程架構(gòu)可獲得良好的效果。

            特別是對于系統(tǒng)與外設(shè)頻繁進(jìn)行數(shù)據(jù)交互的場合,能顯著提升系統(tǒng)的實時響應(yīng)能力。這里采用的是以時分輪轉(zhuǎn)調(diào)度算法實現(xiàn)在單片機(jī)系統(tǒng)中的多任務(wù)控制目標(biāo)。

            1.1 時分輪轉(zhuǎn)調(diào)度算法的多線程實現(xiàn)

            時分輪轉(zhuǎn)調(diào)度算法是以多個線程輪流占用cPu的執(zhí)行時間來實現(xiàn)的。在外設(shè)交互頻繁的應(yīng)用場合中,可有效地解決響應(yīng)速度不匹配所造成的CPU等待外設(shè)響應(yīng)的時間消耗問題,從而提高M(jìn)CU運(yùn)算部件的利用率。

            而在多線程的調(diào)度切換過程中,要對上一個線程的運(yùn)行環(huán)境進(jìn)行保護(hù),并為下一個線程做好準(zhǔn)備。就單片機(jī)系統(tǒng)而言,要嚴(yán)格實現(xiàn)真正意義上的實時多線程控制,會受到容量、中斷源、指針等一系列系統(tǒng)資源的條件限制。

            本文是以C8051F005單片機(jī)構(gòu)建的應(yīng)用系統(tǒng)。它是以805l內(nèi)核為基礎(chǔ)的,沒有太多空間用于存放或保護(hù)任務(wù)切換時的現(xiàn)場數(shù)據(jù)(如程序指針、程序狀態(tài)字、累加器等),也難于應(yīng)用搶占式實時任務(wù)切換的實現(xiàn)激勵機(jī)制,同時MCU速率也有限。

            針對單片機(jī)存在的這些資源瓶頸,運(yùn)用時分輪轉(zhuǎn)算法作為多線程控制算法架構(gòu),以非搶占式異步處理方法,在合理分配、運(yùn)用通用工作寄存器組的情況下,通過整合或細(xì)分功能模塊結(jié)構(gòu),將控制程序劃分為各線程任務(wù),以縮短CPU的閑置時間;并將每個線程的執(zhí)行時間控制在時間片內(nèi),以降低上下文切換的復(fù)雜度,從而降低開發(fā)風(fēng)險。

            1.2 多線程的管理策略及應(yīng)用

            (1)時間片長度

            通過對控制功能、時序的合理組合,以時間片長度劃分的程序片段,應(yīng)確保每個線程的執(zhí)行代碼段在“時間片”內(nèi)完成,以此降低線程任務(wù)的控制復(fù)雜度和設(shè)計風(fēng)險。具體實施原則詳見第2節(jié)。

            (2)線程協(xié)調(diào)方式

            通過設(shè)置標(biāo)識量,將各時間片內(nèi)的線程任務(wù)協(xié)調(diào)起來。例如,在鍵盤輸入中的消抖動延時和鍵值冗余讀取、在A/D數(shù)據(jù)采集中的采樣觸發(fā)與數(shù)值讀取,以及SPI的數(shù)據(jù)傳輸?shù)裙δ軌K,都可進(jìn)行任務(wù)線程的作業(yè)步驟細(xì)分。通過設(shè)置線程的階段標(biāo)識量,協(xié)調(diào)前后時間片的線程執(zhí)行步調(diào).


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: 時分多線程技 單片機(jī)

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();