嵌入式軟件開(kāi)發(fā)
1、嵌入式平臺(tái)選型
嵌入式設(shè)計(jì)分三個(gè)階段:分析、設(shè)計(jì)和實(shí)現(xiàn)。
分析階段:是確定要解決的問(wèn)題及需要完成的目標(biāo),也稱(chēng)需求階段;
設(shè)計(jì)階段:主要是解決如何在給定的約束條件下完成用戶的需求;
實(shí)現(xiàn)階段:主要是解決如何在所選擇的硬件和軟件的基礎(chǔ)上進(jìn)行整個(gè)軟硬件系統(tǒng)的協(xié)調(diào)和實(shí)現(xiàn)。
硬件的選擇包括:處理器、硬件部件
軟件的選擇包括:操作系統(tǒng)、編程語(yǔ)言、軟件開(kāi)發(fā)工具、硬件調(diào)試工具和軟件組件。
2、軟件設(shè)計(jì)
、、軟件設(shè)計(jì)任務(wù):準(zhǔn)備一個(gè)工作計(jì)劃;確定軟件的結(jié)構(gòu);設(shè)計(jì)評(píng)審;維護(hù)工作計(jì)劃;與硬件部門(mén)密切合作、相互協(xié)調(diào);控制工作的結(jié)果、把工作記錄存檔。
、啤⒛K結(jié)構(gòu)設(shè)計(jì)
模塊結(jié)構(gòu)設(shè)計(jì)的任務(wù):將系統(tǒng)劃分為模塊,確定軟件的結(jié)構(gòu),模塊的功能和模塊間的接口,以及全局?jǐn)?shù)據(jù)結(jié)構(gòu)設(shè)。
模塊:是組成系統(tǒng)的基本單位,它的特點(diǎn)是可以組合、分解和更換。
模塊的四要素:輸入和輸出;處理功能;內(nèi)部數(shù)據(jù);程序代碼。
模塊結(jié)構(gòu)設(shè)計(jì)應(yīng)遵守的原則:所劃分的模塊其內(nèi)部凝聚性要強(qiáng),模塊之間的聯(lián)系要少,即要有很強(qiáng)的獨(dú)立性;模塊之間的連接只能存在上下級(jí)之間的調(diào)用關(guān)系,不能有同級(jí)之間的橫向關(guān)系;整個(gè)結(jié)構(gòu)呈樹(shù)狀結(jié)構(gòu),不允許網(wǎng)狀結(jié)構(gòu)或交叉調(diào)用關(guān)系;所有模塊必須嚴(yán)格地分類(lèi)編碼并建立歸檔文件。
、、結(jié)構(gòu)化設(shè)計(jì)的方法
結(jié)構(gòu)化設(shè)計(jì)的方法是一種面向數(shù)據(jù)流的設(shè)計(jì)方法,基本思想是將系統(tǒng)設(shè)計(jì)成由相對(duì)獨(dú)立、功能單一的模塊組成的結(jié)構(gòu)。
信息流的類(lèi)型:變換流和事務(wù)流。
結(jié)構(gòu)化設(shè)計(jì)方法的步驟:復(fù)查并精化數(shù)據(jù)流圖;確定DFD的信息流類(lèi)型(變換型或事務(wù)型);根據(jù)流類(lèi)型分別實(shí)施變換分析或事務(wù)分析;根據(jù)系統(tǒng)設(shè)計(jì)的原則,對(duì)程序結(jié)構(gòu)圖進(jìn)行優(yōu)化。
3、嵌入式程序設(shè)計(jì)
、、bootloader的設(shè)計(jì)
步驟;stage1和stage2兩大部
Stage1步驟:硬件設(shè)備初始化;為加載bootloader的stage1準(zhǔn)備內(nèi)存空間;復(fù)制bootloader的stage1到內(nèi)存;設(shè)置好堆棧;跳轉(zhuǎn)到stage1的C入口點(diǎn)。
Stage2步驟:初始化本階段要使用的硬件設(shè)備;檢測(cè)系統(tǒng)內(nèi)存映射;將內(nèi)核映像和根文件系統(tǒng)映像到flash上讀入到內(nèi)存中;為內(nèi)核設(shè)置啟動(dòng)參數(shù),并調(diào)用內(nèi)核。
⑵、設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)
⑶、網(wǎng)絡(luò)應(yīng)用程序設(shè)計(jì)
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |