• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      51單片機多任務機制的實現策略研究

      2016-09-07 07:11:12西藏民族大學信息工程學院陜西咸陽712082
      山東工業(yè)技術 2016年14期
      關鍵詞:多任務外設中斷

      李 鵬(西藏民族大學信息工程學院,陜西 咸陽 712082)

      51單片機多任務機制的實現策略研究

      李 鵬
      (西藏民族大學信息工程學院,陜西 咸陽 712082)

      本文針對51單片機實現多任務處理這一問題,首先對該系列單片機多任務機制實現的原理和存在的主要問題進行了研究,然后提出了兩種實現多任務機制的策略,最后對兩種策略的優(yōu)缺點進行了對比,對該型單片機的多任務機制研究有一定的借鑒意義。

      51單片機;多任務機制;實現策略

      1 多任務機制的實現原理和存在問題

      多任務機制就是在同一時間內能夠執(zhí)行多個任務的機制,在多個處理器的系統(tǒng)內,這樣的機制不難實現,但在只有一個處理器的控制系統(tǒng)內,就勢必要求多個任務在時間域內進行快速的切換,所以這種情況下的多任務并不是真正意義上的同一時間內處理多個任務,而是通過快速切換任務造成的錯覺。多任務系統(tǒng)任務的切換策略可分為協同式和搶占式。協同式多任務系統(tǒng),是指每個任務程序都可以釋放對CPU的控制權,也即可將對CPU的使用權切換給其它程序,通常分為顯式和隱式。在搶占式多任務系統(tǒng)是指各程序不能自主的釋放CPU的控制權,而是由操作系統(tǒng)統(tǒng)一行使CPU的控制權,操作系統(tǒng)能夠從任何正在運行的程序上取走控制權,并將控制權賦予另一個程序[1]。

      51單片機只有一個執(zhí)行單元,這就意味著所有的程序只能按照執(zhí)行單元的流程順序執(zhí)行,除中斷外,其它的程序必須逐一完成,所以中斷是進行多任務機制設計的關鍵切入點,只有通過中斷的方式才能實現多任務的切換,應該重點考慮解決以下幾個問題:一是并行任務的數量問題。51單片機的8個工作寄存器的地址可映射到0-3區(qū)的工作區(qū)內,單片機可設置狀態(tài)寄存器的數值進行工作區(qū)域的切換,所以多任務處理時的并行任務數量最大值不能超過4,這樣可以保證任務切換的時效性。二是任務切換的時間片分配方式。在多任務處理時對時間的分配方式是需要重點考慮的問題??蓪r間的長度進行固定和量化,需要運行的各個任務含有不同時間長度的時間片段,每運行一個任務的時間片段,其狀態(tài)寄存器中的時間片數相應的減少1,直至所有的時間片數減少為0,在時間片內任務不切換,在時間片段之間按照任務的優(yōu)先級進行排序完成,全部任務完成后重新賦值。三是不同任務性質對應的處理方式。針對不同的任務對時效性和重要性的要求,對時間敏感的任務或者等級較高的中斷賦予較高的優(yōu)先級,反之賦予較低的優(yōu)先級。

      2 51單片機多任務機制的實現策略

      本文重點對兩種51單片機的多任務實現策略進行研究,并對兩種策略的優(yōu)劣進行對比分析,具體如下:

      (1)通過定時器分配時間片實現多任務。51單片機內有兩個定時器,用來進行單片機的基準授時,通過將兩個定時器輪流開啟和關閉,可以實現更長時間的定時,按照兩個定時器的位數均為16位來計算,在不增加外部計數器的情況下,可以實現1μs-4.29s的定時[2],去除中斷和初始化占用的時間,實際可供使用的時間要比理論值稍小。但對于51單片機的多任務設置來說時間已經足夠。將單片機的輸入輸出端口連接任務設備,通過將每個任務分配一定的時間片段,在該時間片內占用使用權,對外設進行控制,多個任務通過這樣的方式實現輪換執(zhí)行。程序的主流程圖如圖1所示。

      (2)通過外部中斷掃描端口實現多任務。在實際的應用中,如果單片機的輸入輸出端口連接較多的外部設備,比如傳感器等,這時需要根據傳感器的狀態(tài)來進行任務的切換,中斷響應是比較合適的切換信號[3]。51系列的單片機只有兩個中斷端口,在實際的使用中經常面臨不夠用的情況,所以需要增加外部的擴展接口,常用的中斷擴展芯片有很多,比較有代表性的型號是8259A,該型芯片的可編程性和擴展性都很強,可將多個外部中斷連接至單片機的中斷請求引腳,這種擴展中斷的方法帶來的問題是成本較高,設計比較復雜,相應的故障率可能提高。在實際應用中可以考慮另外一種方法,將單片機的空閑IO端口進行改造利用,作為傳感器的中斷請求引腳使用,單片機通過對端口的掃描,確定哪一個相應的外設請求中斷,從而進行任務的切換。當沒有中斷請求時,控制系統(tǒng)按正常順序執(zhí)行。

      圖1 通過定時器分配時間片段實現多任務輪換的程序流程

      在通過掃描中斷狀態(tài)進行多任務切換時,需要解決兩個問題:一是當單片機閑置的I/O端口不能滿足中斷需求時,怎樣進行處理。這時可以對外設的中斷需求進行編碼,采用不同的編碼規(guī)則,對中斷信號進行編碼后,每一個碼值對應一個中斷信號,將不同的編碼值輸入同一個端口就能解決這一問題。二是外部中斷的優(yōu)先級如何評判。這個問題在實際的應用中,可以通過對單片機的數據存儲區(qū)進行賦值,不同的值表示不同的外部設備中斷的優(yōu)先級,中斷發(fā)生后通過對比中斷值和存儲區(qū)的預設值,就可以判斷中斷的優(yōu)先級,因為單片機連接的外部設備比較固定,外部設備的中斷優(yōu)先級比較穩(wěn)定,所以可以使用這種優(yōu)先級表法進行優(yōu)先級的判定。

      (3)二種策略特點的比較。上文所述的第一種策略是對每個任務分配固定的時間片段,各任務在控制系統(tǒng)的執(zhí)行單元的統(tǒng)一調度下執(zhí)行任務,每個任務在給定的時間片段內完全占有CPU的使用權,其它程序不能中斷該任務的執(zhí)行,這種策略的優(yōu)點是程序的執(zhí)行可靠性高、系統(tǒng)穩(wěn)定,但缺點是系統(tǒng)的效率不高,可能造成CPU的大量閑置,比較適合處理既定任務和批處理任務,不適合中斷較多的情況。第二種策略是擴展性比較好、系統(tǒng)可以方便的與外設進行交互,同時時效性比較高。這種策略可以應用在對時效性要求高、外設中斷較多、情況比較復雜的控制系統(tǒng)中,其缺點是造價較高,設計復雜,系統(tǒng)的穩(wěn)定性和可靠性不如第一種策略。

      3 結束語

      單片機的多任務機制實現的途徑有很多,既可以從單片機固有的功能進行拓展來實現,也可以通過增加外設來實現,本文介紹的兩種實現方法各有其優(yōu)缺點,希望對單片機的多任務機制研究有一定的參考價值。

      [1]吳金戌,沈慶陽,郭庭吉.8051單片機實踐與應用[M].北京:清華大學出版社,2002:58.

      [2]王輝堂,顏自勇,陳文薌.一種基于C51的多任務機制及應用[J].電子設計應用,2006(06):45-48.

      10.16640/j.cnki.37-1222/t.2016.14.224

      猜你喜歡
      多任務外設中斷
      基于中心化自動加權多任務學習的早期輕度認知障礙診斷
      跟蹤導練(二)(5)
      千里移防,衛(wèi)勤保障不中斷
      解放軍健康(2017年5期)2017-08-01 06:27:44
      基于判別性局部聯合稀疏模型的多任務跟蹤
      自動化學報(2016年3期)2016-08-23 12:02:56
      基于多任務異步處理的電力系統(tǒng)序網絡拓撲分析
      電測與儀表(2016年5期)2016-04-22 01:13:46
      未知環(huán)境下基于粒子群優(yōu)化的多任務聯盟生成
      計算機工程(2014年6期)2014-02-28 01:26:17
      Microchip推出具備雙ADC外設的全新器件,擴展其低成本8位PIC?單片機產品線
      AT89C51與中斷有關的寄存器功能表解
      FPGA內嵌PowerPC的中斷響應分析
      微處理機(2012年4期)2012-06-13 11:32:24
      貼身呵護 必不可少的PSP外設
      本溪| 高唐县| 奈曼旗| 益阳市| 旌德县| 鹰潭市| 团风县| 双流县| 马山县| 兴业县| 聂荣县| 固原市| 安顺市| 雷山县| 天峨县| 德格县| 岳池县| 钟祥市| 璧山县| 沾化县| 惠州市| 长葛市| 赣榆县| 河西区| 泸西县| 炎陵县| 镶黄旗| 西安市| 昌乐县| 曲沃县| 永宁县| 平潭县| 宜川县| 富阳市| 汉中市| 富川| 平泉县| 华亭县| 汤原县| 微山县| 巍山|