亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于嵌入式操作系統(tǒng)的應(yīng)用軟件設(shè)計

        2018-06-07 08:59:26張騰
        科教導刊·電子版 2018年7期

        張騰

        摘 要 本文介紹了多任務(wù)操作系統(tǒng)如何進行嵌入式的應(yīng)用軟件設(shè)計,給出了進行多任務(wù)操作的具體方法,并對該方法如何在與熱敏打印相關(guān)的軟件進行應(yīng)用,進行了介紹,通過多任務(wù)操作,嵌入式軟件提高了應(yīng)用的實時性,增強了軟件的可移植性,提升了軟件的開發(fā)效率,縮短了軟件的開發(fā)周期。

        關(guān)鍵詞 嵌入式操作系統(tǒng) 熱敏打印 RTOS

        中圖分類號:TP316.2 文獻標識碼:A

        1嵌入式操作系統(tǒng)的多任務(wù)操作

        嵌入式操作系統(tǒng) C/OS的應(yīng)用,可以解決熱敏打印的設(shè)計之中,CPU如何進行多任務(wù)處理,解決加熱耗時的問題。完善 C/OS系統(tǒng)可以提升開發(fā)效率,增強軟件的實時性。實時的多任務(wù)操作系統(tǒng)中,很大一部分為嵌入式操作系統(tǒng),該種系統(tǒng)與傳統(tǒng)定義的操作系統(tǒng)有差異。常見的打印機數(shù)據(jù)操作系統(tǒng)都是多任務(wù)的操作系統(tǒng),通過多任務(wù)的方法可以方便軟件的設(shè)計,同時由于嵌入式系統(tǒng)也具備操作軟件的功能,因此在軟件設(shè)計的時候就可以在此基礎(chǔ)之上進行多任務(wù)程序的應(yīng)用。嵌入式操作系統(tǒng)可以對嵌入式系統(tǒng)中的全部硬件和軟件資源進行調(diào)度分配,同時還可以進行并發(fā)工作,在滿足系統(tǒng)特性的基礎(chǔ)上,通過拆裝某些模塊可以提升系統(tǒng)的性能,與常見的操作系統(tǒng)相比較,嵌入式系統(tǒng)具有如下不同點。

        第一,嵌入式操作系統(tǒng)的移植性強,體積小,占用硬件資源少。第二,系統(tǒng)具有實時性的特點,可以進行卸載和裝載。第三,系統(tǒng)可以固化代碼,因而具有很強的穩(wěn)定性。雖然當前已經(jīng)出現(xiàn)了個人開發(fā)的嵌入式操作系統(tǒng),例如JEAN J. LABROSSE開發(fā)的 C/OS,但是當前大多數(shù)嵌入式系統(tǒng)都是商業(yè)內(nèi)核的,常見的有PSOSystem、VxWorks和Nucleu等。本文所選用的嵌入式系統(tǒng)是 C/OS,因為該系統(tǒng)是完全公開的免費內(nèi)核,該系統(tǒng)的設(shè)計人員可以在應(yīng)用該系統(tǒng)的過程中按照自己的需求對該內(nèi)核的內(nèi)容進行擴展或壓縮,實現(xiàn)不同應(yīng)用軟件的功能需求。 C/OS支持多功能的是實時內(nèi)核,可以進行多任務(wù)操作,并且每個任務(wù)都有單獨的棧。該系統(tǒng)的服務(wù)內(nèi)容也比較多,例如內(nèi)存申請和釋放、消息列表、郵箱等,并且支持255層的嵌套中斷。由于該系統(tǒng)功能強大,代碼簡潔,近年來已經(jīng)在嵌入式操作系統(tǒng)當中得到了廣泛應(yīng)用。

        2嵌入式操作系統(tǒng)佮進行軟件設(shè)計

        運用嵌入式操作系統(tǒng)進行系統(tǒng)軟件設(shè)計,根據(jù)具體的操作要求設(shè)置操作步驟,可以提升軟件的實時性,強化軟件的可移植性,減少軟件開發(fā)時間。在進行嵌入式操作系統(tǒng)的設(shè)計的時候,需要明確軟件設(shè)計的一般流程,由于應(yīng)用軟件在硬件之上,因此一致性比較差。在引入了嵌入式操作系統(tǒng)之后,由于應(yīng)用軟件的任務(wù)不能建立在硬件之上,因此應(yīng)用都是建立在嵌入式操作系統(tǒng)之上。嵌入式操作系統(tǒng)在應(yīng)用軟件之中是一個指揮者的角色,同時該系統(tǒng)還負責和硬件進行連通,幫助各系統(tǒng)的運轉(zhuǎn),盡管CPU是按照順序進行嵌入式操作的,但設(shè)計軟件的時候還是需要劃分任務(wù),根據(jù)軟件設(shè)計的需求將操作系統(tǒng)初始化。

        以 C/OS操作系統(tǒng)為基礎(chǔ),在該系統(tǒng)上設(shè)計應(yīng)用軟件首先需要根據(jù)系統(tǒng)的功能對任務(wù)進行劃分,確定具體任務(wù)的個數(shù),明確各任務(wù)的優(yōu)先級別,選擇信號和功能的時候需要注意任務(wù)之間的通訊。同時,需要根據(jù)程序的要求確認各種任務(wù)所需要的堆棧的容量,關(guān)注代碼存儲機和數(shù)據(jù)存儲機的容量,在應(yīng)用該系統(tǒng),選擇該系統(tǒng)的操作模式的時候,還需要選擇儲存模式。最后,在軟件設(shè)計完成之后,需要根據(jù)任務(wù)程序設(shè)計代碼服務(wù)和中斷服務(wù)。下面介紹如何利用該系統(tǒng)設(shè)計熱敏打印機的應(yīng)用軟件。

        3熱敏打印機的應(yīng)用軟件設(shè)計

        3.1熱敏打印機的功能

        熱敏打印機屬于特殊的打印機,由于我國的生產(chǎn)工藝落后,微型打印機生產(chǎn)廠商會選擇國外進口熱敏打印機的打印頭,配上自己設(shè)計的單片機控制板組成熱敏打印機。打印機的軟件結(jié)構(gòu)通常都是多任務(wù)的結(jié)構(gòu),通過各種不同方法可以設(shè)置不同的任務(wù)階段,設(shè)置不同的程序,由于 C/OS系統(tǒng)是一種具備各種管理功能的系統(tǒng),因此在程序設(shè)計的過程中可以直接在系統(tǒng)當中進行挑選簡化。本文所要介紹的熱敏打印機實現(xiàn)應(yīng)用步驟的方法就是 C/OS系統(tǒng)的具體應(yīng)用過程,在該系統(tǒng)中體現(xiàn)了嵌入式操作系統(tǒng)的優(yōu)越性。在熱敏打印機實現(xiàn)功能的操作中,首先從上位機接受信息,對數(shù)據(jù)進行處理,控制打印機的打印頭進行打印。打印機的處理過程中,CPU主要有如下幾個任務(wù)。

        第一,接收上位機傳輸?shù)男畔ⅲ⒋鎯π畔⒅辆彌_區(qū)域。第二,將緩沖的信息進行讀取并處理,如果信息是命令則進行操作,如果信息是字符,則轉(zhuǎn)化為點陣存儲在緩沖區(qū)。第三,將打印緩沖區(qū)的數(shù)據(jù)傳輸?shù)酱蛴☆^,控制打印機走紙,檢查打印機的狀態(tài),預(yù)熱打印機。上述三個任務(wù)只是基本任務(wù),除此之外上一級還需要根據(jù)不同任務(wù),選擇其他功能,例如檢測打印頭是否過熱、打印壓桿是否下壓、檢查打印機是否缺紙。

        3.2熱敏打印的軟件功能

        熱敏打印機軟件所要實現(xiàn)的功能可以粗略的概括為數(shù)據(jù)分析和打印控制,根據(jù)打印機的結(jié)構(gòu)特點和作業(yè)流程,大致切換步驟主要有數(shù)據(jù)切換和信息收集兩個過程。完成打印功能分析之后,需要設(shè)計軟件功能,分別設(shè)計各個任務(wù)的流程。熱敏打印機需要實現(xiàn)數(shù)據(jù)接收、數(shù)據(jù)處理和數(shù)據(jù)打印三個步驟。按照基礎(chǔ)設(shè)計方法,需要將各流程按照順序連接起來,但熱敏打印機卻不適合這樣操作。由于熱敏打印機需要進行加熱,在加熱的過程中,需要等待加熱完成,因此會有時間間隔。普通的字符點行有24個,每個都需要一定時間,這樣就拉長了打印速度。同時熱敏打印機對于實時性的要求過高,如果系統(tǒng)運轉(zhuǎn)緩慢則會導致調(diào)度不合理,導致打印過程出現(xiàn)錯亂。因此簡單的進行程序設(shè)計無法滿足應(yīng)用需求。

        3.3 C/OS系統(tǒng)的設(shè)計方法

        為了提升打印的效率,可以將打印流程拆分成幾個不同的任務(wù),目的是為了適應(yīng)多任務(wù)的環(huán)境,讓處理器在多任務(wù)的情況下進行調(diào)配,該設(shè)計需要設(shè)計師的技巧和經(jīng)驗。程序需要進行不斷切換,運用何種程序需要不斷進行考慮,因此軟件設(shè)計過程較復雜,也會導致長期運行不穩(wěn)定,因此引入 C/OS系統(tǒng)是一種高效的設(shè)計方法。

        3.4通過 C/OS系統(tǒng)設(shè)計打印機軟件

        由于打印機軟件是一種多任務(wù)的軟件,因此需要應(yīng)用多任務(wù)實時運行的方法設(shè)計程序。 C/OS系統(tǒng)提供了各種多任務(wù)管理功能,依靠該系統(tǒng)進行基礎(chǔ)設(shè)計可以滿足多任務(wù)的需要。如果把創(chuàng)建的多任務(wù)大致分為數(shù)據(jù)處理和打印,則根據(jù)打印機軟件的任務(wù)和打印流程,需要在如下任務(wù)之間進行切換。

        第一,從數(shù)據(jù)處理流程進入到打印流程,在該種模式下有兩種任務(wù),首先在打印區(qū)緩沖完一個字符之后,需要啟動打印程序,從數(shù)據(jù)處理流程進入到打印流程,第二,在數(shù)據(jù)處理的加熱過程中,如果響應(yīng)停止,則需要及時終止打印流程,數(shù)據(jù)處理流程和打印流程可進行數(shù)據(jù)緩沖控制。

        第二,切換到數(shù)據(jù)處理流程,該任務(wù)情況分成兩種任務(wù),首先,在打印機進行加熱的過程中,需要啟動定時裝置,利用加熱的空閑時間處理數(shù)據(jù),當加熱時間完成之后,從新進入到打印流程。其次,如果打印的緩沖還沒有滿足一個字符的最低要求,可以不進行打印機的加熱,還是進行數(shù)據(jù)處理,從打印流程進入數(shù)據(jù)處理流程,進行數(shù)據(jù)的接受和處理。打印機處于閑置狀態(tài)的時候,程序需要等待上位機的通知。同時,系統(tǒng)如果需要從上位機取得數(shù)據(jù),則還需要一個中斷流程,便于進行后續(xù)操作。如果外部突發(fā)緊急情況,也需要中斷流程。

        總之,如下三個任務(wù)是必須進行的。任務(wù)一,處理打印產(chǎn)生的緩沖數(shù)據(jù),對上位機傳來的任務(wù)進行解讀。任務(wù)二,將緩沖區(qū)的數(shù)據(jù)傳輸?shù)綗崦舸蛴☆^,并對電機進行控制,方便打印頭隨時處理數(shù)據(jù)。任務(wù)三,如果發(fā)生了異常處理任務(wù),例如打印頭過熱,則需要及時運行中斷任務(wù)。

        在任務(wù)運轉(zhuǎn)的過程中,任務(wù)的優(yōu)先級別是不同的,第三個任務(wù)最優(yōu)先,如果出現(xiàn)了異常情況,則需要將任務(wù)中斷。通常,任務(wù)三一直處于等待狀態(tài)。任務(wù)二比任務(wù)一有難度,如果打印緩沖區(qū)有一個字符,則需要優(yōu)先執(zhí)行任務(wù)二,在執(zhí)行任務(wù)二進行打印機加熱的過程中,需要啟動定時器,中斷任務(wù)二,此時任務(wù)二處于等待狀態(tài)。如果任務(wù)二中斷,則 C/OS系統(tǒng)會調(diào)整任務(wù)一進入運轉(zhuǎn),進行數(shù)據(jù)的處理和接受。如果加熱過程中,服務(wù)器收到信號,表明任務(wù)二可以進行運行,則此時系統(tǒng)運行任務(wù)二。如果任務(wù)二運行,則是因為打印緩沖區(qū)的數(shù)據(jù)不滿一個字符,如果任務(wù)一運行,則是沒有異常發(fā)生,同時任務(wù)二在等待,此時任務(wù)一處理數(shù)據(jù)。

        需要關(guān)注的是,如果任務(wù)二處于運行狀態(tài),則如果任務(wù)二中斷,就意味著任務(wù)二和任務(wù)三同時中斷,中斷任務(wù)二所產(chǎn)生的一系列效果,意味著控制電機中斷,同時控制加熱時間。加熱時間由于是基礎(chǔ)加熱時間,一個一定時間中斷,另一個進行補償。基準加熱時間是加熱的最短時間,大約三微秒,在 C/OS系統(tǒng)進行任務(wù)切換中完成,之后執(zhí)行其他任務(wù)?;鶞始訜嵬瓿芍?,由于打印頭的情況不同,會接著進行補償加熱,補償加熱的時間各有不同,因任務(wù)而異。通常補償加熱之后會進行下一點的加熱,過程和程序都和之前的過程相同。加熱頭的加熱可以設(shè)置成一個單獨的任務(wù),如果任務(wù)二執(zhí)行完畢,則可以切換到其他任務(wù),由于加熱過程比較復雜,需要進行經(jīng)常切換,雖然浪費時間,但是并不加重系統(tǒng)負擔,由于兩個任務(wù)和過程聯(lián)系密切,因此將其加入任務(wù)二較為合理。

        進行完各種程序的中斷編程之后,可以建立打印作業(yè)工程的程序。第一,將出程序相關(guān)的硬件初始化,對 C/OS系統(tǒng)進行重新定義,接著需要對各種程序進行激活,最后啟動多任務(wù)操作。需要關(guān)注的是,由于嵌入式系統(tǒng)控制軟件的要求較高,在工程設(shè)計過程中需要根據(jù)硬件來對軟件進行適當調(diào)整,如果嵌入式操作系統(tǒng)設(shè)計不合理會導致系統(tǒng)出現(xiàn)一定損耗,因此在設(shè)計程序的過程中就應(yīng)當考慮到系統(tǒng)損耗的問題。在程序設(shè)計的過程中,需要利用 C/OS系統(tǒng)對程序?qū)崿F(xiàn)控制,除了中斷堆棧的任務(wù)之外,任何任務(wù)都有自己的堆棧,如果任務(wù)發(fā)生了中斷,則各個堆棧都會保存各自的值。由于參數(shù)的傳遞也會產(chǎn)生布局堆棧,因此在進行設(shè)計的過程中需要根據(jù)任務(wù)情況,在滿足實際需求之后,適當?shù)臄U大堆棧。如果資源比較緊張,則在調(diào)試的過程中,就應(yīng)當嘗試縮小堆棧的容量。同時考慮到熱敏打印機的字庫因素,適合選用大存儲的方法。

        4結(jié)論

        嵌入式操作系統(tǒng)的基礎(chǔ)是計算機技術(shù),通過系統(tǒng)之中應(yīng)用軟件的設(shè)計,可以對系統(tǒng)的功能和體積進行編排。由于 C/OS系統(tǒng)具有可靠、成本低、體積小和功耗低的特點,因此經(jīng)常被熱敏電機所選用。嵌入式操作系統(tǒng) C/OS的引入,可以解決熱敏打印機控制軟件設(shè)計當中,CPU打印頭加熱出現(xiàn)空閑的情況,提升系統(tǒng)的實用性能。由于使用了 C/OS系統(tǒng)之后,可以提供給用戶完善的管理功能,同時可以節(jié)省軟件開發(fā)時間,提升軟件開發(fā)的效果,強化軟件的可用性。同時為了實現(xiàn)軟件的結(jié)構(gòu)化,就需要提升系統(tǒng)的可移植性和可讀性。

        參考文獻

        [1] 屈鵬.基于ARM和Linux的嵌入式智能家居網(wǎng)絡(luò)視頻監(jiān)控[D].天津:天津理工大學,2017.

        [2] 張霖澤.基于嵌入式系統(tǒng)的視頻編解碼與傳輸技術(shù)研究[D].南京:南京理工大學,2017.

        [3] 李東方.面向嵌入式系統(tǒng)的PUF輔助安全研究[D].武漢:華中科技大學,2015.

        欧美激情中文字幕在线一区二区| 无码中文字幕色专区| 精品亚洲麻豆1区2区3区| 亚洲24小时在线免费视频网站| 最新亚洲精品国偷自产在线 | 国产亚洲精品成人无码精品网站| 国产高潮视频在线观看| 论理视频二区三区四区在线观看| 中文字幕av无码一区二区三区电影| 天堂а√在线中文在线新版| 久久精品国产亚洲av麻豆瑜伽| 亚洲视频在线播放免费视频| 国产人妖视频一区二区| 性猛交╳xxx乱大交| 国产一区二区黄色的网站| 日本岛国大片不卡人妻| 日韩AV不卡一区二区三区无码| 国产 麻豆 日韩 欧美 久久| 你懂的视频网站亚洲视频| 精品国产品欧美日产在线 | 日韩人妻中文字幕专区| 手机看片国产日韩| 国产成人精品久久综合| 亚洲无精品一区二区在线观看| 国产精品高潮无码毛片| 国产激情视频一区二区三区| 久久国产精品色av免费看| 亚洲线精品一区二区三区八戒| 国产suv精品一区二区四| 中文字幕精品久久一区二区三区| 国产一级黄色录像| 国产精品无码av天天爽| 韩国av一区二区三区不卡| 日本在线免费一区二区三区| 国产人成无码中文字幕| 国产精品福利自产拍在线观看| 国产av一级二级三级| 国产69精品一区二区三区| 亚洲av无码xxx麻豆艾秋| 性人久久久久| 国产一区二区三区影片|