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

        ?

        C語(yǔ)言嵌入式系統(tǒng)軟件設(shè)計(jì)架構(gòu)教學(xué)研究

        2017-12-25 19:22:27張智慧
        計(jì)算機(jī)時(shí)代 2017年12期
        關(guān)鍵詞:嵌入式系統(tǒng)軟件開(kāi)發(fā)

        摘 要: 良好的軟件設(shè)計(jì)架構(gòu)能夠提高軟件系統(tǒng)的開(kāi)發(fā)質(zhì)量和維護(hù)效率。文章從軟件工程角度,將軟件設(shè)計(jì)架構(gòu)模式引入嵌入式應(yīng)用開(kāi)發(fā)課程的教學(xué)實(shí)踐,結(jié)合C語(yǔ)言編程特點(diǎn),完善軟件開(kāi)發(fā)過(guò)程中的項(xiàng)目文件組織、程序框架設(shè)計(jì)、功能模塊劃分以及代碼重用方法等內(nèi)容,為學(xué)生利用C語(yǔ)言進(jìn)行嵌入式系統(tǒng)開(kāi)發(fā)提供參考解決方案。通過(guò)項(xiàng)目驅(qū)動(dòng)式課堂教學(xué)內(nèi)容設(shè)計(jì),使學(xué)生掌握軟件設(shè)計(jì)模式、分層開(kāi)發(fā)邏輯架構(gòu)和模塊化程序設(shè)計(jì)方法,綜合培養(yǎng)學(xué)生分析問(wèn)題、解決問(wèn)題的軟件開(kāi)發(fā)實(shí)踐能力。

        關(guān)鍵詞: 嵌入式系統(tǒng); C語(yǔ)言; 設(shè)計(jì)架構(gòu); 軟件開(kāi)發(fā)

        中圖分類號(hào):G424 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2017)12-76-03

        Research on the teaching of software design model in C language

        programmed embedded system

        Zhang Zhihui

        (Beijing Information Technology College, Beijing 100015, China)

        Abstract: Good software design architecture can improve the development quality and maintenance efficiency of software systems. Considering the software engineering technology and the characteristics of C language programming, the software design architecture model is introduced into the embedded system development course. The project file organization, program design framework, function modules and code reuse method are discussed, trying to provide a reference solution. Through the project driven classroom teaching content design, students can master the software design model, hierarchical development, logical structure and modular programming. It aims to improve students' ability to analyze and solve problems, and to develop their practical ability.

        Key words: embedded system; C language; design model; software development

        0 引言

        嵌入式系統(tǒng)課程的重點(diǎn)在于培養(yǎng)學(xué)生解決實(shí)際問(wèn)題的工程應(yīng)用能力。隨著嵌入式應(yīng)用不斷拓展,系統(tǒng)開(kāi)發(fā)復(fù)雜度日益提高,對(duì)嵌入式系統(tǒng)應(yīng)用開(kāi)發(fā)人才培養(yǎng)提出了更高要求。傳統(tǒng)的嵌入式系統(tǒng)教學(xué)主要是培養(yǎng)學(xué)生對(duì)相關(guān)軟硬件基礎(chǔ)知識(shí)的掌握和運(yùn)用,知識(shí)點(diǎn)掌握比較分散,無(wú)法讓學(xué)生真正形成解決實(shí)際應(yīng)用問(wèn)題的能力。本文將面向?qū)ο蠹夹g(shù)、分層技術(shù)應(yīng)用到嵌入式系統(tǒng)應(yīng)用開(kāi)發(fā)課堂教學(xué)實(shí)踐,引導(dǎo)學(xué)生了解掌握項(xiàng)目文件組織、程序框架設(shè)計(jì)、功能模塊劃分的理念和方法,并結(jié)合C語(yǔ)言編程特點(diǎn)介紹具體的實(shí)現(xiàn)方案,有利于學(xué)生掌握整個(gè)嵌入式系統(tǒng)的分析及設(shè)計(jì)方法,又能提升學(xué)生解決實(shí)際問(wèn)題的綜合能力。

        1 嵌入式系統(tǒng)軟件設(shè)計(jì)的教學(xué)思路

        在嵌入式系統(tǒng)教學(xué)內(nèi)容中貫穿軟件設(shè)計(jì)方法,能夠指導(dǎo)學(xué)生更好地完成需求分析,進(jìn)行系統(tǒng)設(shè)計(jì)和功能模塊劃分,從而具備開(kāi)發(fā)出可正確工作的復(fù)雜軟件的能力,為后續(xù)課程實(shí)訓(xùn)和第一崗位任職能力打下堅(jiān)實(shí)的基礎(chǔ)。

        1.1 強(qiáng)調(diào)軟件模塊劃分的重要性

        嵌入式系統(tǒng)是建立在特定硬件平臺(tái)上的專用計(jì)算機(jī)系統(tǒng),一般由嵌入式微處理器、外圍功能電路和對(duì)外應(yīng)用接口組成,軟件開(kāi)發(fā)主要是驅(qū)動(dòng)硬件設(shè)備完成特定的業(yè)務(wù)邏輯應(yīng)用。隨著嵌入式軟件系統(tǒng)的規(guī)模和復(fù)雜度日益增長(zhǎng),軟件設(shè)計(jì)在嵌入式系統(tǒng)開(kāi)發(fā)中發(fā)揮著越來(lái)越重要的作用,如何更好地將開(kāi)發(fā)需求轉(zhuǎn)變成軟件模塊劃分,進(jìn)而轉(zhuǎn)變成能夠用代碼實(shí)現(xiàn)的程序功能,成為系統(tǒng)設(shè)計(jì)面臨的主要問(wèn)題。

        分層設(shè)計(jì) 分層的目的是為了將復(fù)雜的問(wèn)題進(jìn)行合理區(qū)分、遞進(jìn)簡(jiǎn)化,從而將系統(tǒng)功能抽象成一個(gè)個(gè)具體的模塊結(jié)構(gòu),最終將應(yīng)用需求轉(zhuǎn)變?yōu)榫幊虒?shí)現(xiàn)。在教學(xué)過(guò)程中采用項(xiàng)目化的教學(xué)方法,通過(guò)讓學(xué)生完成項(xiàng)目的分層設(shè)計(jì)來(lái)掌握軟件功能劃分原則和方法,形成對(duì)嵌入式系統(tǒng)開(kāi)發(fā)的整體理解。比如設(shè)計(jì)一個(gè)電子羅盤(pán),可以從概念上劃分為數(shù)據(jù)采集層、處理層、顯示層等,層層遞進(jìn)實(shí)現(xiàn),每層解決不同的問(wèn)題,下層要能夠?yàn)樯蠈討?yīng)用提供支撐。

        模塊優(yōu)化 每層內(nèi)部按照任務(wù)分解、功能優(yōu)化、重用程度進(jìn)行模塊劃分,盡量實(shí)現(xiàn)軟件功能的高內(nèi)聚、低耦合。每個(gè)軟件模塊的功能實(shí)現(xiàn)應(yīng)該方便理解和應(yīng)用,軟件模塊之間的相關(guān)性要盡可能小,這樣設(shè)計(jì)的程序便于協(xié)同開(kāi)發(fā),提高開(kāi)發(fā)質(zhì)量和效率。在教學(xué)過(guò)程中,要注重讓學(xué)生研究討論需求問(wèn)題域與編程實(shí)現(xiàn)域之間的映射關(guān)系,理解軟件功能模塊緊湊性和正交性的重要性,增強(qiáng)對(duì)系統(tǒng)設(shè)計(jì)科學(xué)合理性的理解和認(rèn)識(shí)。比如,顯示器功能的設(shè)計(jì),亮度、飽和度等調(diào)節(jié)功能彼此獨(dú)立,使得功能無(wú)論在實(shí)現(xiàn)上還是在應(yīng)用中都很便捷。

        1.2 明確系統(tǒng)軟件框架設(shè)計(jì)

        一個(gè)好的軟件框架不僅有利于提高軟件開(kāi)發(fā)質(zhì)量和效率,而且還可以提高軟件的可維護(hù)性和代碼重用性。對(duì)于剛接觸嵌入式系統(tǒng)開(kāi)發(fā)的學(xué)生來(lái)說(shuō),如何將C語(yǔ)言的語(yǔ)句、算法等知識(shí)來(lái)解決實(shí)際問(wèn)題的能力還很弱,需要在學(xué)習(xí)其他內(nèi)容之前先有一個(gè)整體的框架概念,帶著問(wèn)題、目標(biāo)去學(xué),才能提高學(xué)生學(xué)習(xí)的積極性、主動(dòng)性。

        四層邏輯架構(gòu)模型 軟件分層邏輯架構(gòu)設(shè)計(jì)的關(guān)鍵是理清層次結(jié)構(gòu)、優(yōu)化功能模塊組織,使得系統(tǒng)設(shè)計(jì)開(kāi)發(fā)高效靈活、軟件功能可按需擴(kuò)展,已有的成熟代碼能夠得到有效重用、迭代發(fā)展。采用面向?qū)ο笤O(shè)計(jì)思想對(duì)現(xiàn)有嵌入式系統(tǒng)開(kāi)發(fā)進(jìn)行去中心化重新設(shè)計(jì),將系統(tǒng)邏輯架構(gòu)區(qū)分為應(yīng)用管理層、算法協(xié)議層、功能拓展層、硬件驅(qū)動(dòng)層等四個(gè)層次,每一層內(nèi)將同類或相似技術(shù)實(shí)現(xiàn)的功能進(jìn)行聚合,以減少業(yè)務(wù)應(yīng)用、模型算法和硬件操作之間的耦合性,使得應(yīng)用程序結(jié)構(gòu)變得更加清晰和靈活。在嵌入式系統(tǒng)課程中引入四層邏輯架構(gòu)模型的內(nèi)容,目的是讓學(xué)生掌握一種比較先進(jìn)的程序架構(gòu)方法,做到“授之以漁”,也會(huì)使課堂教學(xué)與工程應(yīng)用結(jié)合更緊密,增強(qiáng)學(xué)生利用成熟的軟件開(kāi)發(fā)方法分析問(wèn)題、解決問(wèn)題的能力。

        層內(nèi)軟件功能組織 每層的軟件功能設(shè)計(jì),除了要考慮當(dāng)前的應(yīng)用需求,還要著眼后續(xù)的重用和拓展,對(duì)所有功能進(jìn)行合并整合,優(yōu)化功能模塊設(shè)計(jì),盡量實(shí)現(xiàn)硬件無(wú)關(guān)性,使軟件功能模塊能夠支撐多個(gè)應(yīng)用邏輯和不同開(kāi)發(fā)要求。應(yīng)用管理層主要包括界面交互、業(yè)務(wù)邏輯調(diào)度等功能。算法協(xié)議層主要包括模型算法、協(xié)議解析、文件管理、數(shù)據(jù)庫(kù)管理等功能,如位置轉(zhuǎn)換計(jì)算、羅盤(pán)指針?lè)轿挥?jì)算等。功能拓展層主要包括器件的無(wú)關(guān)性,提供各種器件的通用性處理、接口訪問(wèn)等功能,如LCD的線、圓、矩形處理,傳感器數(shù)據(jù)轉(zhuǎn)換等。硬件驅(qū)動(dòng)層主要包括硬件的無(wú)關(guān)性,提供硬件的操作原語(yǔ)功能,如LCD的定位、寫(xiě)點(diǎn)、寫(xiě)字節(jié),傳感器數(shù)據(jù)采集等功能。在教學(xué)過(guò)程中,指導(dǎo)學(xué)生按照四層模型進(jìn)行軟件功能設(shè)計(jì)和開(kāi)發(fā),理解并掌握軟件設(shè)計(jì)框架的概念,正確進(jìn)行編程開(kāi)發(fā)。

        2 項(xiàng)目驅(qū)動(dòng)式課堂教學(xué)內(nèi)容設(shè)計(jì)

        課堂教學(xué)內(nèi)容設(shè)計(jì)關(guān)鍵是把教與學(xué)結(jié)合在一起,通過(guò)實(shí)施一個(gè)完整的項(xiàng)目,由教師提供“設(shè)計(jì)藍(lán)圖”,采用任務(wù)驅(qū)動(dòng)方式,讓學(xué)生主動(dòng)參與、相互協(xié)作,將學(xué)習(xí)到的軟硬件知識(shí)系統(tǒng)地應(yīng)用到嵌入式系統(tǒng)開(kāi)發(fā)實(shí)際應(yīng)用中。

        內(nèi)容安排 在教學(xué)目標(biāo)上,以提高學(xué)生從事實(shí)際嵌入式系統(tǒng)開(kāi)發(fā)能力為核心,突出軟件工程化管理理念,圍繞軟件設(shè)計(jì)模式、系統(tǒng)分層邏輯架構(gòu)和模塊化程序設(shè)計(jì)等內(nèi)容,融入嵌入式系統(tǒng)開(kāi)發(fā)概念介紹,貫穿到整個(gè)教學(xué)內(nèi)容。在教學(xué)計(jì)劃上,根據(jù)學(xué)生軟硬件知識(shí)基礎(chǔ),有針對(duì)性地補(bǔ)充軟件工程相關(guān)知識(shí),增加面向?qū)ο蠹夹g(shù)、分層技術(shù)和軟件重用技術(shù)的理解和掌握,將嵌入式系統(tǒng)開(kāi)發(fā)內(nèi)容與軟件設(shè)計(jì)框架有機(jī)集合,提高課堂授課的靈活性和針對(duì)性。在教學(xué)重點(diǎn)上,圍繞一個(gè)涵蓋數(shù)據(jù)采集、處理、顯示等關(guān)鍵功能的嵌入式系統(tǒng)開(kāi)發(fā),靈活運(yùn)用任務(wù)驅(qū)動(dòng)和項(xiàng)目教學(xué)法,充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)興趣、發(fā)掘其創(chuàng)造潛能,由簡(jiǎn)單到復(fù)雜,逐步實(shí)現(xiàn)框架內(nèi)容的各項(xiàng)功能。

        項(xiàng)目實(shí)施 教師充分利用自身的開(kāi)發(fā)經(jīng)驗(yàn)和知識(shí)優(yōu)勢(shì),幫助學(xué)生理解軟件設(shè)計(jì)框架,建立基本的項(xiàng)目工程文件,按照課程計(jì)劃安排進(jìn)行上機(jī)實(shí)踐、組織項(xiàng)目開(kāi)發(fā)并撰寫(xiě)項(xiàng)目開(kāi)發(fā)報(bào)告。在項(xiàng)目組織管理上,雖然標(biāo)準(zhǔn)的C語(yǔ)言開(kāi)發(fā)工具并不提供軟件框架管理,但根據(jù)本文提供的系統(tǒng)邏輯架構(gòu)設(shè)計(jì),可以按照分層原則組織文件目錄建立自己的工程文件管理原則,提高代碼文件的組織管理和協(xié)同開(kāi)發(fā)能力。主程序文件、全局變量頭文件通常放在根目錄,其他文件按照應(yīng)用管理層、算法協(xié)議層、功能拓展層、硬件驅(qū)動(dòng)層分別存放在AppFunc、ModelFunc、HardExt、HardOpt文件夾,所有文件命名遵循統(tǒng)一的規(guī)范。在功能模塊開(kāi)發(fā)上,指導(dǎo)學(xué)生應(yīng)少用或不用全局變量,盡量通過(guò)函數(shù)參數(shù)來(lái)傳遞數(shù)據(jù),上層功能模塊的開(kāi)發(fā)可以調(diào)用下層功能模塊,下層功能模塊盡量避免交叉調(diào)用或越級(jí)調(diào)用。下面是利用角速度傳感器制作電子羅盤(pán)的項(xiàng)目案例,其中LCD顯示功能在各層的示例代碼如下。

        應(yīng)用管理層,uint Draw_Compass( uint angle,uint pcolor);顯示當(dāng)前angle角度的電子羅盤(pán),pcolor為顯示顏色,分別調(diào)用了算法模型層中羅盤(pán)角度函數(shù)、功能拓展層的畫(huà)線函數(shù)。

        算法模型層,uint Cac_Compass(uint x, uint y, uint z);計(jì)算羅盤(pán)指針?lè)轿?,x、y、z為傳感器獲取的數(shù)值,轉(zhuǎn)換成指針的角度。

        功能拓展層,uint Lcd_Line(uint x1, uint y1, uint x2, uint y2, uint pcolor); //畫(huà)線,調(diào)用畫(huà)點(diǎn)函數(shù)。

        硬件驅(qū)動(dòng)層,uint Lcd_Pixel(uint x, uint y, uint pcolor); //驅(qū)動(dòng)LCD顯示硬件進(jìn)行畫(huà)點(diǎn)。

        課程評(píng)價(jià) 為了增強(qiáng)學(xué)生對(duì)軟件設(shè)計(jì)框架概念的理解和應(yīng)用,將課程評(píng)價(jià)分為學(xué)生討論和教師評(píng)價(jià)。學(xué)生討論按照小組進(jìn)行組織,每個(gè)小組3-5人,小組之間相互檢查項(xiàng)目進(jìn)展、軟件設(shè)計(jì)、框架應(yīng)用和模塊劃分等內(nèi)容,交流開(kāi)發(fā)經(jīng)驗(yàn),有利于提升學(xué)習(xí)的積極性和創(chuàng)造性。教師評(píng)價(jià)根據(jù)學(xué)生項(xiàng)目報(bào)告和程序文檔,分析學(xué)生對(duì)設(shè)計(jì)模式的理解和掌握情況,查看開(kāi)發(fā)過(guò)程中的應(yīng)用情況,根據(jù)每個(gè)學(xué)生的特點(diǎn)給出針對(duì)性的指導(dǎo),提高學(xué)生對(duì)知識(shí)的綜合運(yùn)用能力,考評(píng)成績(jī)按照一定權(quán)重(可按40%)納入課程考核成績(jī)。

        3 結(jié)束語(yǔ)

        本文提出的嵌入式系統(tǒng)軟件設(shè)計(jì)架構(gòu)教學(xué)方法,將軟件工程化思想、程序設(shè)計(jì)模式融入課堂教學(xué)實(shí)踐,以項(xiàng)目任務(wù)驅(qū)動(dòng)提高學(xué)生學(xué)習(xí)的積極性和主動(dòng)性,提高學(xué)生從事實(shí)際應(yīng)用系統(tǒng)開(kāi)發(fā)能力,該方法實(shí)施以來(lái)取得了較好的成效,很多學(xué)生在畢業(yè)實(shí)習(xí)階段就能很快融入企業(yè)開(kāi)發(fā)團(tuán)隊(duì)。

        未來(lái)嵌入式系統(tǒng)應(yīng)用的加速發(fā)展,對(duì)軟件開(kāi)發(fā)的質(zhì)量和效率提出了更高的要求,高效開(kāi)發(fā)和軟件質(zhì)量特性保證,將是嵌入式系統(tǒng)開(kāi)發(fā)人才培養(yǎng)和工程實(shí)踐下一步需要重點(diǎn)研究和解決的問(wèn)題。

        參考文獻(xiàn)(References):

        [1] 張智慧.面向職業(yè)技能培養(yǎng)的軟件開(kāi)發(fā)課程改革探索[J].計(jì)

        算機(jī)時(shí)代,2015.5:54-58

        [2] 張智慧.多層模型在嵌入式軟件開(kāi)發(fā)中的應(yīng)用研究[J].計(jì)算

        機(jī)時(shí)代,2017.4:17-20

        [3] 田澤.嵌入式系統(tǒng)開(kāi)發(fā)與應(yīng)用[M].北京航空航天大學(xué)出版社,

        2005.

        [4] 程欣宇,張麗,王忠德.數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)的三層模型[J].計(jì)算機(jī)教

        育,2014.12:65-67

        [5] 李小遐,劉惠梅.C語(yǔ)言程序設(shè)計(jì)能力教程[M].北京理工大學(xué)

        出版社,2011.

        猜你喜歡
        嵌入式系統(tǒng)軟件開(kāi)發(fā)
        辦公自動(dòng)化系統(tǒng)的設(shè)計(jì)
        信息安全環(huán)境下的計(jì)算機(jī)軟件開(kāi)發(fā)研究
        計(jì)算機(jī)軟件開(kāi)發(fā)中的分層技術(shù)運(yùn)用
        建模技術(shù)在軟件開(kāi)發(fā)中的應(yīng)用
        嵌入式系統(tǒng)在醫(yī)療器械中的應(yīng)用分析
        軟件開(kāi)發(fā)中數(shù)據(jù)庫(kù)設(shè)計(jì)理論的實(shí)踐
        基于物聯(lián)網(wǎng)項(xiàng)目驅(qū)動(dòng)的嵌入式系統(tǒng)教學(xué)改革的研究與實(shí)踐
        嵌入式系統(tǒng)課程“中斷、異常與事件”教學(xué)實(shí)踐及啟示
        面向?qū)嵺`創(chuàng)新人才培養(yǎng)的嵌入式系統(tǒng)教學(xué)研究
        在DiskOnChip上構(gòu)建VxWorks系統(tǒng)開(kāi)發(fā)環(huán)境
        成人全部免费的a毛片在线看| 尤物网址在线观看| 欧美大屁股xxxxhd黑色| 亚州精品无码久久aV字幕| 中文人妻av大区中文不卡| 亚洲无人区一码二码国产内射| 白浆国产精品一区二区| 青娱乐极品视觉盛宴国产视频| 国产亚洲精品久久久久婷婷瑜伽 | 一区二区三区在线观看视频免费| 东京热加勒比视频一区| 日韩人妻中文无码一区二区| 米奇777四色精品人人爽| 欧美在线资源| 国产丝袜高跟美腿一区在线| 久久久亚洲av成人乱码| 一本无码中文字幕在线观| 成人免费无码大片a毛片软件| 久久成人麻豆午夜电影| 亚洲一二三四五区中文字幕| 亚洲一区二区在线观看av| 国产无套乱子伦精彩是白视频| 成人麻豆视频免费观看| 国产熟妇与子伦hd| 久久久无码中文字幕久...| 久久精品国产亚洲婷婷| 亚洲国产精品成人av| 中文字幕免费人成在线网站| 香蕉免费一区二区三区| 亚洲aⅴ无码成人网站国产app| 国产av天堂亚洲国产av麻豆| 国产洗浴会所三级av| 欧美激情乱人伦| 东北妇女肥胖bbwbbwbbw| 精品人妻丰满久久久a| 国产91成人自拍视频| 国产丝袜美腿精品91在线看| 免费拍拍拍网站| 福利视频一二区| 人妻熟女中文字幕av| 久久精品免费一区二区喷潮|