《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于μC/OS-II的顯示控制系統開發
基于μC/OS-II的顯示控制系統開發
摘要: 本文對μC/OS-II操作系統下的中斷按鍵消抖處理及LCD多級菜單顯示方法進行了研究,并提出了一種簡單、可靠性高、維護方便的實現方案。該方法已經應用于某產品的開發設計中,效果較好,運行穩定可靠
Abstract:
Key words :

  引 言

  隨著性能的提高和價格的降低,越來越多的嵌入式應用采用了ARM處理器。在強大功能及豐富外設的支持下,嵌入式實時操作系統憑借較高的開發效率、可維護性和可靠性成為開發設計的理想選擇。

  μC/OS-II是一個完整的、可移植、可裁減的占先式實時多任務內核。它是用ANSI C語言編寫的,包含一小部分匯編語言代碼,可以供不同架構的微處理器使用。μC/OS由美國人Jean J.Labrosse于1992年完成,1998年發展到μC/OS-II,目前的版本為μC/OS-II v2.83。2000年,μC/OS得到美國航空管理局(FAA)的認證,可以用于飛行器中。作為一個典型的嵌入式操作系統,μC/OS-II的應用非常廣泛,如照相機、醫療器械、音響設備、發動機控制、高速公路電話系統、自動提款機等等。

  本文主要討論了μC/OS-II環境下中斷按鍵消抖處理及LCD" title="LCD">LCD多級菜單顯示的實現問題,并通過一款產品的實例設計闡述了中斷按鍵的處理流程以及多級菜單顯示的程序框架。

  1 顯示控制" title="顯示控制">顯示控制系統硬件設計

  本設計采用基于Cortex-M3" title="Cortex-M3">Cortex-M3架構的ARM處理器LM3S1960" title="LM3S1960">LM3S1960和液晶顯示器HS240128A作為顯示控制系統的核心,按鍵采用中斷的方式。顯示控制系統電路原理圖如圖1所示。

顯示控制系統電路原理圖

  LM3S1960是Luminary公司推出的高性價比微處理器。它具有256 KBFlash,64 KB RAM,4個32位定時器,6個運動控制PWM,3個UART,2個I2C,2個SSI以及60個用戶可用I/O。LM3S1960最高運行頻率為50 MHz,其所有GPIO輸入可觸發中斷,支持IRDA的UART,非常適合嵌入式控制系統。

  HS240128A是240×128圖形點陣液晶顯示模塊,采用T6963C作為內置控制器,內置字符發生器和32 KB顯示緩沖區,具有接口簡單、控制指令集功能齊全的特點。

  2 中斷按鍵消抖處理

  在按鍵數目較多的情況下,一般采用掃描查詢的方式。本設計中按鍵全部采用中斷的方式,主要是考慮到按鍵數目不多,且處理器的每一個引腳都具有中斷功能,實現簡單,響應速度快。

  在按鍵的過程中容易產生抖動,沒有按鍵按下有時也可能會有干擾脈沖,如果不加以處理,容易引起誤操作。所以,消除抖動是按鍵處理的必要過程。在一般的處理器中,消抖處理多采用延時判斷的方法,這種方法不適合在操作系統中實現。因為在中斷中加入大的時延,會大大降低系統的實時性和響應速度,所以本設計采用圖2所示的處理方法。

按鍵處理流程

  圖2(a)為按鍵中斷處理程序流程。為了提高中斷的實時性,在中斷處理過程中盡可能進行少的操作。本設計中只進行了保存鍵值和發送按鍵中斷信號量的操作,大大提高了中斷響應的實時性。

  圖2(b)為按鍵處理任務流程。在完成初始化后,任務開始等待中斷發過來需要判斷的原始按鍵值的信號量()SSemPend(C)SKeyRawSem,O,&err)。其中的參數OSKeyRawSem是原始按鍵中斷信號量。如果沒有信號量發過來,那么任務會在這里被掛起。接收到后首先關閉按鍵中斷,進行系統延時OSTimeDlyHMSM(0,0,0,JitterTime),JitterTime是延時時間。在這個延時的過程中,會進行任務的調度,本任務也會被掛起,直到延時結束,重新被加入等待任務列表。在延時結束任務重新獲得CPU后,進行按鍵的再次判斷,判斷是否真的發生了按鍵中斷。如果判斷正確,則需要等待按鍵的松開。在判斷是否松開的過程中,同樣加入了系統延時判斷OSTimeDly-HMSM(0,0,0,CheckTime),CheckTime是每次檢測延時的時間。按鍵松開后,任務發送按鍵信號量給其他任務使用OSSemPost(OSKeySem),其中OSKeySem為經過確認的按鍵中斷。如果判斷錯誤,則清除鍵值。最后,打開按鍵中斷,重新等待新的按鍵中斷。

  3 LCD多級菜單顯示

  對于多級菜單的編寫,控制關系比較復雜,特別是對于不同的界面,人機交互的內容一般都不相同。所以在操作系統實現時,一般把每一級菜單的實現都作為一個任務分別設計。這樣思路清晰,不容易出現問題,而且方便刪減和增加菜單項,也便于程序的維護和更新。主菜單任務循環體內程序如下:

程序

  程序說明如下:

 ?、僭谌蝿臻_始時判斷系統模式SystemMode是否為主菜單模式SysMode_MainMenu。如果不是,那么就需要把主菜單顯示任務掛起,直到從其他任務返回。

 ?、诘却存I信號量OSKeySem,根據用戶的按鍵執行相應的操作,RfreshTime是菜單的刷新時間。信號量等待函數在RfreshTime時間內等待,如果等待時間到了按鍵還沒有操作,那么它繼續執行下面的程序,err變量會返回錯誤的數值。

 

 ?、廴绻谥械膃rr返回沒有錯誤,說明在刷新時間內發生了按鍵中斷,那么進入按鍵的操作處理程序。

  ④根據鍵值變量KeyNumber進行相應的操作,例如確定按鍵的處理、返回按鍵的處理等。

  ⑤假如是確定鍵KEY_OK按下,那么首先把系統子菜單的編號SubMenuNumber賦給SystemMode變量,并進行相應的初始化操作。

 ?、蘩缡荴XXX子菜單,那么在初始化完成后發送信號量OSSemPost(OSDisXXXXSem)。其中,OSDisXXXXSem是子菜單XXXX的顯示信號量。

 ?、吣康氖钦{用主菜單顯示函數。之所以再次進行判斷,是因為在⑥中發送信號量要進行系統調度。如果子系統任務優先級比主菜單高,主菜單就會被掛起而去執行子菜單,在子菜單執行間隙會重新調度回來進行主菜單顯示,那么就造成顯示錯誤。

  子菜單顯示的任務流程和主菜單類似。在按返回鍵時發送啟動主菜單的信號量OSSemPost(OSDisMain-MenuSem),系統就會重新返回到主菜單。

  結 語

  本文對μC/OS-II操作系統下的中斷按鍵消抖處理及LCD多級菜單顯示方法進行了研究,并提出了一種簡單、可靠性高、維護方便的實現方案。該方法已經應用于某產品的開發設計中,效果較好,運行穩定可靠。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          香蕉av福利精品导航| 亚洲精品孕妇| 伊人精品久久久久7777| 欧美色道久久88综合亚洲精品| 亚洲国产一区在线| 久久狠狠久久综合桃花| 国产一区二区在线免费观看| 国产精品视频不卡| 在线观看欧美视频| 国产午夜久久久久| 欧美日韩国产成人| 午夜在线电影亚洲一区| 亚洲高清在线观看| 久久久国产亚洲精品| 久久国产精品亚洲va麻豆| 日韩视频在线播放| 国产精品青草久久| 欧美精品www在线观看| 亚洲第一成人在线| 国产视频一区二区三区在线观看| 亚洲成色最大综合在线| 免费欧美在线视频| 麻豆9191精品国产| 久久久久国产成人精品亚洲午夜| 99在线精品免费视频九九视| 亚洲国产精品成人一区二区| 久久久夜精品| 欧美日韩国产三区| 亚洲视频欧美在线| 亚洲人成在线观看一区二区| 亚洲成色精品| 欧美日韩在线一区二区三区| 久久久夜色精品亚洲| 午夜伦理片一区| 国产精品区一区二区三区| 国产在线精品一区二区中文| 欧美福利视频一区| 亚洲日本一区二区三区| 欧美日韩一区自拍| 欧美色视频日本高清在线观看| 国产精品露脸自拍| 欧美大片va欧美在线播放| 亚洲欧美一区二区视频| 日韩视频专区| 日韩一级裸体免费视频| 欧美精品久久天天躁| 国产九区一区在线| 欧美大片专区| 久久精品视频免费| 欧美日韩亚洲精品内裤| 久久久久久久欧美精品| 久久频这里精品99香蕉| 久久精品视频导航| 这里只有视频精品| 伊人成人网在线看| 亚洲永久字幕| 免费短视频成人日韩| 亚洲国产欧美一区二区三区丁香婷| 亚洲精品国偷自产在线99热| 久久香蕉国产线看观看网| 亚洲在线黄色| 欧美一区二区网站| 亚洲日本在线观看| 国产精品尤物| 99伊人成综合| 欧美大片在线影院| 欧美女人交a| 农村妇女精品| 欧美视频第二页| 亚洲一区在线观看免费观看电影高清| 亚洲国产成人精品久久久国产成人一区| 美女脱光内衣内裤视频久久影院| 欧美1区免费| 免费一区视频| 国内精品美女在线观看| 欧美中文字幕| 欧美一级淫片aaaaaaa视频| 欧美一区二区三区免费视| 亚洲一区二区三区精品在线观看| 国产亚洲第一区| 欧美精品福利| 国产精品亚洲аv天堂网| 性娇小13――14欧美| 欧美一区三区三区高中清蜜桃| 午夜日本精品| 亚洲欧美日韩成人高清在线一区| 亚洲自拍偷拍色片视频| 欧美网站大全在线观看| 久久中文久久字幕| 国产一区二区精品久久| 国产精品试看| 欧美一级片在线播放| 欧美一级片在线播放| 亚洲一区二区三区视频| 亚洲黄色小视频| 香蕉视频成人在线观看| 亚洲永久精品大片| 欧美岛国在线观看| 久久久久久91香蕉国产| 一区二区高清| 欧美成人精品不卡视频在线观看| 在线观看一区二区视频| 一区二区三区四区精品| 亚洲欧美在线磁力| 久久蜜臀精品av| 久久全球大尺度高清视频| 欧美天堂亚洲电影院在线观看| 一本一本久久a久久精品综合麻豆| 国产乱肥老妇国产一区二| 狠狠色综合一区二区| 亚洲综合国产激情另类一区| 国产精品一区二区久久久久| 国产精品扒开腿做爽爽爽视频| 亚洲国产精品国自产拍av秋霞| 亚洲欧美国产精品专区久久| 国产在线一区二区三区四区| 国产一在线精品一区在线观看| 韩国一区二区三区在线观看| 欧美一区综合| 国产精品毛片a∨一区二区三区|国| 久久久久久香蕉网| 激情成人中文字幕| 久久久蜜桃一区二区人| 性久久久久久久| 正在播放欧美视频| 欧美日韩三级视频| 老司机久久99久久精品播放免费| 国产一区二区无遮挡| 免费在线播放第一区高清av| 亚洲国产综合在线| 欧美一区二区三区免费观看视频| 在线日韩视频| 一区二区av| 久久精视频免费在线久久完整在线看| 尤物九九久久国产精品的特点| 国产精品一区在线观看你懂的| 国产精品第三页| 午夜精品久久久99热福利| 国产日韩一区欧美| 国产毛片久久| 国产乱码精品一区二区三区忘忧草| 136国产福利精品导航网址| 久久久久亚洲综合| 亚洲精品视频在线看| 一区二区日韩免费看| 欧美日韩亚洲综合一区| 久久久久久国产精品mv| 亚洲激情图片小说视频| 麻豆精品精品国产自在97香蕉| 欧美激情国产日韩| 影音先锋成人资源站| 久久精品国产第一区二区三区最新章节| 欧美日韩精品免费观看| 蜜桃av综合| 中文高清一区| 国产日韩欧美不卡在线| 夜夜嗨av一区二区三区网页| 欧美成人激情视频免费观看| 欧美日韩在线视频观看| 国产精品一区二区在线观看| 在线亚洲成人| 亚洲福利国产精品| 欧美亚州一区二区三区| 国产精品久久午夜夜伦鲁鲁| 久久永久免费| 亚洲桃色在线一区| 欧美日韩色婷婷| 日韩视频免费大全中文字幕| 午夜精品福利一区二区蜜股av| 日韩一二三在线视频播| 国产日韩亚洲欧美| 欧美日韩ab| 欧美高清视频一区二区三区在线观看| 韩国久久久久| 国产女精品视频网站免费| 欧美中文在线视频| 亚洲国产高清在线观看视频| 国产精品毛片在线看| 亚洲人成在线观看| 国产一区 二区 三区一级| 久久亚洲二区| 久久久777| 国产精品久久久久999| 国产真实久久| 欧美日韩精品久久| 欧美日韩精品二区| 久久精品一二三区| 亚洲成人自拍视频| 亚洲高清在线视频| 欧美一区二区三区四区高清| 夜夜嗨av一区二区三区网页| 欧美日韩中文字幕| 欧美日韩亚洲视频| 一区二区三区在线看| 欧美成人精品激情在线观看| 国语精品一区| 亚洲综合精品| 欧美日韩国产一区二区| 一本到12不卡视频在线dvd| 日韩西西人体444www| 久久精品亚洲精品| 午夜视频在线观看一区二区| 在线视频免费在线观看一区二区| 亚洲国产日韩在线一区模特| 欧美大片在线观看一区| 国产精品看片资源| 国产精品99久久久久久久vr| 欧美日韩一区二区免费在线观看| 久久精品视频在线观看| 国产精品一区久久久| 欧美日韩a区| 亚洲第一级黄色片| 欧美亚洲在线| 午夜精品久久久久久久| 欧美日韩国产一区二区三区地区| 国产午夜精品久久久久久免费视| 亚洲国产精品一区| 久久九九热re6这里有精品| 99视频一区| 欧美福利小视频| 欧美日韩喷水| 亚洲激情一区二区三区| 欧美精品一区二区高清在线观看| 欧美视频中文在线看| 久久亚洲捆绑美女| 欧美丰满少妇xxxbbb| 欧美成人免费网站| 国产亚洲一二三区| 亚洲美女免费精品视频在线观看| 国产一区在线免费观看| 欧美色综合天天久久综合精品| 亚洲午夜激情网站| 欧美精彩视频一区二区三区| 黄色精品一二区| 欧美日韩高清在线| 亚洲无限av看| 亚洲视频久久| 欧美午夜片在线观看| 欧美日韩高清不卡| 欧美日韩在线亚洲一区蜜芽| 欧美人牲a欧美精品| 亚洲欧洲偷拍精品| 欧美电影在线免费观看网站| 欧美高清你懂得| 99re成人精品视频| 亚洲欧美日本国产专区一区| 免费成人av在线| 麻豆国产精品一区二区三区| 国产欧美日韩一区二区三区| 欧美激情亚洲另类| 亚洲承认在线| 国产手机视频一区二区| 91久久国产自产拍夜夜嗨| 韩国视频理论视频久久| 久久天堂国产精品| 你懂的成人av| 一本久道久久综合狠狠爱| 六月婷婷一区| 欧美视频在线观看 亚洲欧| 亚洲色图在线视频| 在线观看欧美激情| 国产在线精品一区二区夜色| 性欧美办公室18xxxxhd| 国产精品久久久久久久久久妞妞| 亚洲美女色禁图| 野花国产精品入口| 欧美不卡一卡二卡免费版| 国产婷婷色一区二区三区在线| 久久夜色撩人精品| 久久久久久久波多野高潮日日| 91久久精品一区二区三区| 国产日韩欧美一区二区三区在线观看| 亚洲第一区色| 午夜视频在线观看一区| 国产精品一区二区视频| 久久久五月婷婷| 亚洲视屏一区| 99视频精品| 国模精品一区二区三区| 一区二区三区四区国产精品| 欧美视频中文字幕| 国产精品户外野外| 性做久久久久久| 久久婷婷国产麻豆91天堂| 99这里只有久久精品视频| 亚洲自拍偷拍色片视频| 在线精品视频一区二区三四| 亚欧成人在线| 欧美不卡激情三级在线观看| 国产一区在线免费观看| 欧美精品一区二区三区一线天视频| 欧美黄色大片网站| 欧美三级日本三级少妇99| 国产精品免费观看在线| 久久精品国产久精国产一老狼| 一区二区免费在线播放| 亚洲深夜福利在线| 日韩视频永久免费观看| 国产一区二区在线免费观看| 久久久国产一区二区三区| 狠狠色伊人亚洲综合成人| 亚洲人成人一区二区在线观看| 欧美一区二粉嫩精品国产一线天| 男人天堂欧美日韩| 亚洲欧洲日本国产| 国产精品麻豆成人av电影艾秋| 国产精品久久久久久久久久尿| 影音先锋一区| 国产亚洲一区二区在线观看| 欧美日韩大片一区二区三区| 欧美激情中文字幕一区二区| 久久亚洲综合色一区二区三区| 亚洲国产精品一区在线观看不卡| 亚洲综合色视频| 欧美成人激情视频| 伊人久久亚洲美女图片| 黄色一区二区在线观看| 国外成人在线| 亚洲一二三四区| 日韩视频免费| 久久亚洲精品中文字幕冲田杏梨| 狠狠色综合色综合网络| 一区二区精品国产| 免费在线观看精品| 亚洲一二三级电影| 欧美激情二区三区| 欧美va亚洲va国产综合| 国产亚洲欧美日韩一区二区|