99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

3天內(nèi)不再提示

基于嵌入式操作系統(tǒng)μC/OS-II實現(xiàn)軟件顯示任務(wù)的設(shè)計

電子設(shè)計 ? 來源:電子元器件應(yīng)用 ? 作者:王生勝,夏澤中,郝 ? 2021-02-20 10:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:王生勝,夏澤中,郝鐵偉

隨著現(xiàn)代生活中蓄電池需求量的日益增加,蓄電池的生產(chǎn)規(guī)模也逐漸擴大,同時對蓄電池生產(chǎn)中的控制也提出了更高的要求。由于蓄電池的化成過程是影響蓄電池質(zhì)量的一個非常重要的工藝環(huán)節(jié),因此,對蓄電池化成工藝過程的有效控制在很大程度上決定著蓄電池的質(zhì)量。

本文給出了在蓄電池化成工藝過程控制系統(tǒng)設(shè)計中,將嵌入式操作系統(tǒng)μC/OS-II用于系統(tǒng)軟件設(shè)計,并將系統(tǒng)各功能模塊劃分成不同優(yōu)先級的任務(wù)由系統(tǒng)內(nèi)核進行調(diào)度,從而通過人機操作界面顯示系統(tǒng)任務(wù)的具體方法。

1 系統(tǒng)總體設(shè)計

本系統(tǒng)中的控制器主要用于實現(xiàn)實時蓄電池的恒流充放電控制,檢測蓄電池充放電過程中的電壓和電流參數(shù),以及測試蓄電池的負載能力。本系統(tǒng)的總體框圖如圖1所示。

基于嵌入式操作系統(tǒng)μC/OS-II實現(xiàn)軟件顯示任務(wù)的設(shè)計

蓄電池化成控制系統(tǒng)的主要功能可由變流控制器完成。系統(tǒng)運行時,只要通過外擴的鍵盤電路輸人化成控制參數(shù)信息(即所謂的化成工藝文件設(shè)置),微控制器便可按照工藝文件的設(shè)置對蓄電池進行充放電控制。在整個系統(tǒng)運行過程中,控制器通過信號檢測電路檢測運行過程中的電流和電壓參數(shù),并將這些信息實時的顯示在液晶顯示器上。當(dāng)在運行過程中遇到鍵盤操作、系統(tǒng)出現(xiàn)故障或者采集到的參數(shù)越限時,液晶顯示器將自動切換到相關(guān)信息的顯示界面中去,因此,本系統(tǒng)對液晶顯示器的實時顯示處理具有較高的要求。

2 顯示任務(wù)的實現(xiàn)

設(shè)計時,根據(jù)控制器所要實現(xiàn)的功能可將本系統(tǒng)劃分成若干個任務(wù),其中監(jiān)控任務(wù)用于監(jiān)視系統(tǒng)運行時各任務(wù)的運行狀態(tài);鍵盤任務(wù)用于對鍵盤進行掃描與處理;顯示任務(wù)則用于實時顯示系統(tǒng)運行中的各種狀態(tài)信息以及控制信息;通信任務(wù)用于實現(xiàn)控制器之間以及控制器與上位機之間的通訊;采樣與反饋任務(wù)用于實時采集現(xiàn)場數(shù)據(jù)并輸出反饋控制信號。

本系統(tǒng)采用字符型液晶顯示器VPG19264作為實時顯示的窗口。VPG19264是一種圖形點陣液晶顯示器,點陣數(shù)為192(列)×64 (行),可顯示12×4(行)個16×16點陣漢字,也可完成圖形、字符、動畫的顯示。它主要由行驅(qū)動控制器和列驅(qū)動器兩部分組成192(列)×64(行)的全點陣液晶顯示器。此顯示器采用COB的軟封裝方式,可通過導(dǎo)電橡膠和壓框連接LCD。當(dāng)通過顯示器顯示漢字時,應(yīng)首先使能顯示器,然后通過寫命令設(shè)置漢字顯示的地址,最后寫入要顯示的漢字字模。

為了在系統(tǒng)運行過程中能夠?qū)崟r顯示各種狀態(tài)信息和控制信息,可在軟件設(shè)計中引入面向?qū)ο蟮母拍睢1驹O(shè)計對很多與顯示模塊相關(guān)的函數(shù)都進行了特殊處理,因而其使界面顯示更具人性化。

2.1 菜單的操作

由于對顯示器的操作大多都是通過對菜單進行的,因此,菜單的合理規(guī)劃是本操作顯示器的重點。在對菜單進行設(shè)計時,筆者采用了面向?qū)ο蟮乃季S,并將菜單編號、菜單顯示內(nèi)容、顯示位置以及對功能鍵的響應(yīng)作了封裝,其封裝格式如下:

因為對菜單的操作是模仿手機中的確認和取消鍵來處理的,因此,在封裝時,本設(shè)計采用兩個函數(shù)指針分別指向?qū)?yīng)該菜單按下確認鍵和取消鍵功能的函數(shù)。在定義菜單時,采用結(jié)構(gòu)體數(shù)組的方式給所有菜單賦予不同編號并保存在一個結(jié)構(gòu)體數(shù)組中,然后通過對結(jié)構(gòu)體數(shù)組的初始化來設(shè)s置所有菜單的初始化信息。這樣,在實際操作時,通過一個通用的函數(shù)模塊即可調(diào)用對應(yīng)菜單的處理函數(shù)。下面的函數(shù)即代表了在對應(yīng)菜單上按下確認鍵時程序的運行狀態(tài):

變量CurrentFocusMenu用于指明當(dāng)前處于焦點狀態(tài)的菜單項。

采用這種方式進行封裝柯使菜單處理變得非常容易。這樣方式在實際使用時。如果需要增加或減少菜單,只需在結(jié)構(gòu)體數(shù)組中增加和刪除菜單的初始化信息而幾乎不需要增加其它代碼;同時在進行界面切換時,也可以根據(jù)結(jié)構(gòu)體中菜單的顯示內(nèi)容和坐標(biāo)來調(diào)用統(tǒng)一的顯示函數(shù)并進行處理,因而其菜單結(jié)構(gòu)更加清晰。另外,采用面向?qū)ο蟮姆绞教幚聿藛?,其程序也被大大簡化,因而具有很好的擴展性。

2.2 提示消息的處理

系統(tǒng)中經(jīng)常會遇到需要工作人員確定的消息,比如在系統(tǒng)參數(shù)設(shè)置時,當(dāng)工作人員輸入數(shù)據(jù)之后和保存之前,應(yīng)在LCD上顯示出工作人員剛剛輸入的數(shù)據(jù),并給出一個提示消息以確認所輸入的信息是否正確,這樣可避免保存無效的數(shù)據(jù),提高系統(tǒng)的可靠性。

本系統(tǒng)中模仿了面向?qū)ο笾袕棾鱿⒖虻木帉懛绞?,即仿照手機中彈出消息框的編程模型,來將面向?qū)ο蟮乃季S運用在程序設(shè)計中,這樣設(shè)計出來的消息框非常具有人性化,而且操作也很方便。圖2為系統(tǒng)中的兩種消息框的顯示模型。

圖2中的左部只包含了一個簡單的確認按鈕,它無需工作人員做出是與否的決定,可用于一些簡單的提示消息;而右半部分則包含了兩個按鈕,當(dāng)消息框顯示消息時,它需要工作人員按下鍵盤上的確認鍵以確認消息或者按下取消鍵否認消息,該模型常用于鍵盤輸入完成后,在保存時提示工作人員的消息,以確認工作人員輸入的內(nèi)容正確與否。針對系統(tǒng)中所使用的LCD,圖2所示的消息框上的坐標(biāo)設(shè)置界面中的標(biāo)注分別還給出了提示消息、按鈕以及框線的坐標(biāo)位置。圖3所示是模擬消息框運行的程序流程圖。

程序中應(yīng)首先判斷消息框的類型是顯示確認按鈕還是同時顯示兩個按鈕,然后按照圖2所示的坐標(biāo)顯示提示消息并繪制消息框的輪廓。因為消息框?qū)倌B(tài)對話框,必須按下確認或者取消鍵方能繼續(xù)運行,所以程序緊接著將等待郵箱傳遞鍵值消息,如果工作人員按下確認鍵或者取消鍵,程序則返回鍵值消息給調(diào)用函數(shù),以便調(diào)用函數(shù)能依據(jù)不同的按鍵分別處理,直到消息提示框運行結(jié)束。

將面向?qū)ο蟮乃季S方式運用在LCD顯示設(shè)計中,可極大地提高程序編寫的簡潔性和系統(tǒng)運行的可靠性,其非常符合人們?nèi)粘I钪薪?jīng)常接觸到的界面,而且非常美觀和親近。

2.3 顯示任務(wù)的設(shè)計

系統(tǒng)中的LCD不僅要實時顯示采集到的現(xiàn)場數(shù)據(jù),而且在系統(tǒng)發(fā)現(xiàn)所采集的數(shù)據(jù)越限時,也能及時地顯示出具體的故障信息,同時當(dāng)工作人員通過鍵盤對系統(tǒng)參數(shù)進行設(shè)置時,LCD還能及時地切換顯示畫面并轉(zhuǎn)向顯示系統(tǒng)設(shè)置界面。因此。應(yīng)設(shè)計一個顯示任務(wù)來處理LCD的屏幕切換過程,其流程圖如圖4所示。

顯示任務(wù)執(zhí)行時,首先等待鍵盤或其它任務(wù)發(fā)送過來的郵箱消息,并將郵箱等待超時時間設(shè)置為系統(tǒng)顯示采集數(shù)據(jù)的時間。當(dāng)任務(wù)沒有收到郵箱消息而超時時,任務(wù)將轉(zhuǎn)去執(zhí)行顯示數(shù)據(jù)功能;否則,當(dāng)收到郵箱消息時,任務(wù)將會根據(jù)郵箱的內(nèi)容判斷是否有鍵按下以更改系統(tǒng)設(shè)置。如是,則清屏LCD,并轉(zhuǎn)去執(zhí)行顯示鍵盤操作功能。如果收到的郵箱不是用來更改系統(tǒng)設(shè)置的消息,則將判斷郵箱是否要求顯示器顯示其它信息,如是,則清屏并轉(zhuǎn)去顯示其它信息(如系統(tǒng)故障信息等)。否則結(jié)束一次運行,并繼續(xù)等待郵箱消息,重復(fù)上述過程。其所對應(yīng)的程序偽代碼如下:

通過上述方法設(shè)置顯示任務(wù),能夠很好地實現(xiàn)LCD在顯示數(shù)據(jù)、系統(tǒng)信息設(shè)置及其它故障信息之間的屏幕切換等功能,而且,該方法具有很好的通用性。

3 結(jié)束語

本文介紹了在蓄電池化成控制系統(tǒng)設(shè)計中將嵌入式實時操作系統(tǒng)μC/OS-II用于系統(tǒng)軟件設(shè)計,并在此基礎(chǔ)上采用面向?qū)ο蟮乃季S方式來處理LCD顯示屏幕的具體方法。該方法可有效的處理LCD顯示任務(wù),提高系統(tǒng)運行的可靠性和穩(wěn)定性,同時也可美化系統(tǒng)的操作界面。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5150

    文章

    19665

    瀏覽量

    317451
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    7147

    瀏覽量

    125571
  • 電池
    +關(guān)注

    關(guān)注

    84

    文章

    11078

    瀏覽量

    134981
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    基于μC/OS-II嵌入式的固話來電防火墻電路模塊設(shè)計

    系統(tǒng)基于μC/OS-II嵌入式實時操作系統(tǒng)和CallerID(來電顯示)技術(shù),由鈴流檢測、來電解
    發(fā)表于 10-16 10:47 ?5298次閱讀
    基于μ<b class='flag-5'>C</b>/<b class='flag-5'>OS-II</b><b class='flag-5'>嵌入式</b>的固話來電防火墻電路模塊設(shè)計

    嵌入式實時操作系統(tǒng)μC/OS-II在S12單片機上的移植

    ,它的內(nèi)核可以做到很小,很適合在單片機系統(tǒng)上移植。移植了μC/OS-II嵌入式系統(tǒng)可以使各個任務(wù)
    發(fā)表于 03-08 13:44

    【圖書分享】嵌入式實時操作系統(tǒng)μC/OS-II經(jīng)典實例

    嵌入式實時操作系統(tǒng)μC/OS-II經(jīng)典實例:基于STM32處理器》作  者:劉波文 等編著 內(nèi)容簡介 本書緊緊圍繞μC/
    發(fā)表于 03-13 10:26

    什么是嵌入式操作系統(tǒng)μC/OS-II

    任務(wù)較多的應(yīng)用,就會暴露出實時性差、系統(tǒng)可靠性低、穩(wěn)定性差等缺點。什么是嵌入式操作系統(tǒng)μC/OS-II
    發(fā)表于 08-07 06:25

    μCOS-II操作系統(tǒng)在各類處理器怎么移植?

    μCOS-II操作系統(tǒng)是一種搶占任務(wù)、單內(nèi)存空間、微小內(nèi)核的嵌入式
    發(fā)表于 10-14 07:31

    嵌入式實時操作系統(tǒng)μC/OS-II原理及應(yīng)用

    嵌入式實時操作系統(tǒng)μC/OS-II原理及應(yīng)用 學(xué)習(xí)筆記及課后習(xí)題(節(jié)選)
    發(fā)表于 12-16 06:54

    基于μC/OS-II嵌入式音頻系統(tǒng)設(shè)計

    基于μC/OS-II嵌入式音頻系統(tǒng)設(shè)計 Design of Embedded Audio Frequency System Based on μ
    發(fā)表于 03-16 11:10 ?19次下載

    嵌入式實時操作系統(tǒng)μC/OS-II與eCos的比較

    敘述嵌入式系統(tǒng)嵌入式操作系統(tǒng)的概念,簡述嵌入式實時系統(tǒng)的發(fā)展階段。重點介紹μ
    發(fā)表于 04-15 09:36 ?12次下載

    嵌入式實時操作系統(tǒng)μC OS-II與eCos的比較

    敘述嵌入式系統(tǒng)嵌入式操作系統(tǒng)的概念,簡述嵌入式實時系統(tǒng)的發(fā)展階段。重點介紹μ
    發(fā)表于 05-16 14:38 ?20次下載

    基于嵌入式系統(tǒng)μC/OS-II的雙CAN通信構(gòu)件

    在將嵌入式實時操作系統(tǒng)μC/OS-II成功移植到MB90F543單片機的基礎(chǔ)上,論文介紹了將雙CAN通信程序模塊作為一個構(gòu)件嵌入到μ
    發(fā)表于 08-12 17:28 ?27次下載

    基于ARM的嵌入式操作系統(tǒng)μC/OS-II的移植

        介紹了μC/OS-II RTOS 的內(nèi)核結(jié)構(gòu)和任務(wù)管理,闡述了ARM 嵌入式芯片的體系結(jié)構(gòu),給出了基于ARM 的
    發(fā)表于 09-04 09:49 ?28次下載

    μC/OS-II操作系統(tǒng)在各種處理器上的移植

    μC/OS-II操作系統(tǒng)在各種處理器上的移植  μCOS-II操作系統(tǒng)是一種搶占
    發(fā)表于 01-07 11:11 ?772次閱讀
    μ<b class='flag-5'>C</b>/<b class='flag-5'>OS-II</b><b class='flag-5'>操作系統(tǒng)</b>在各種處理器上的移植

    嵌入式實時操作系統(tǒng)uC/OS-II內(nèi)核_英版

    嵌入式實時操作系統(tǒng)uC/OS-II內(nèi)核_英版資料。
    發(fā)表于 10-29 16:58 ?0次下載

    基于嵌入式工控模塊和μC/OS-II實現(xiàn)車載狀態(tài)監(jiān)控系統(tǒng)的設(shè)計

    介紹了一種大型搗固車工作狀態(tài)監(jiān)控系統(tǒng)的設(shè)計方案,重點介紹車載主監(jiān)控模塊的硬件設(shè)計及相關(guān)的軟件實現(xiàn)。該系統(tǒng)應(yīng)用新型的M22A系列嵌入式工控模塊
    的頭像 發(fā)表于 04-05 16:52 ?2396次閱讀
    基于<b class='flag-5'>嵌入式</b>工控模塊和μ<b class='flag-5'>C</b>/<b class='flag-5'>OS-II</b><b class='flag-5'>實現(xiàn)</b>車載狀態(tài)監(jiān)控<b class='flag-5'>系統(tǒng)</b>的設(shè)計

    基于實時嵌入式操作系統(tǒng)mC/OS-II實現(xiàn)GPRS終端系統(tǒng)的設(shè)計

    實時嵌入式操作系統(tǒng)mC/OS-II面向中小型嵌入式應(yīng)用,包含全部功能模塊的內(nèi)核大約為10KB,RAM的應(yīng)用量主要與系統(tǒng)中的
    的頭像 發(fā)表于 05-28 09:59 ?2678次閱讀
    基于實時<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系統(tǒng)</b>mC/<b class='flag-5'>OS-II</b><b class='flag-5'>實現(xiàn)</b>GPRS終端<b class='flag-5'>系統(tǒng)</b>的設(shè)計