久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

第四章基于嵌入式網(wǎng)絡(luò)教學(xué)平臺(tái)的系統(tǒng)設(shè)計(jì)

時(shí)間:2019-05-12 21:02:14下載本文作者:會(huì)員上傳
簡(jiǎn)介:寫寫幫文庫(kù)小編為你整理了多篇相關(guān)的《第四章基于嵌入式網(wǎng)絡(luò)教學(xué)平臺(tái)的系統(tǒng)設(shè)計(jì)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫(kù)還可以找到更多《第四章基于嵌入式網(wǎng)絡(luò)教學(xué)平臺(tái)的系統(tǒng)設(shè)計(jì)》。

第一篇:第四章基于嵌入式網(wǎng)絡(luò)教學(xué)平臺(tái)的系統(tǒng)設(shè)計(jì)

第四章基于嵌入式網(wǎng)絡(luò)教學(xué)平臺(tái)的系統(tǒng)設(shè)計(jì)

4.1平臺(tái)設(shè)計(jì)的需求分析

面向課堂教學(xué)的網(wǎng)絡(luò)輔助平臺(tái)應(yīng)以資源建設(shè)為核心,結(jié)合傳統(tǒng)教學(xué)過(guò)程中的關(guān)鍵環(huán)節(jié),充分發(fā)揮教師、學(xué)生的交互作用,為學(xué)生、教師、教務(wù)管理提供一個(gè)開(kāi)放式的教、學(xué)、管三合一的綜合環(huán)境;全面實(shí)現(xiàn)校園內(nèi)的教學(xué)資源共享和跨平臺(tái)的信息資源訪問(wèn),成為一個(gè)完整統(tǒng)一、技術(shù)先進(jìn)、高效穩(wěn)定、安全可靠的基于Internet/Intranet的網(wǎng)絡(luò)輔助教學(xué)平臺(tái)。網(wǎng)絡(luò)輔助教學(xué)平臺(tái)的目的是借助Intemet的網(wǎng)絡(luò)環(huán)境,建立一套功能齊全、使用方便、效率高的網(wǎng)上輔助學(xué)習(xí)環(huán)境。在該環(huán)境下,學(xué)生可以學(xué)習(xí)、練習(xí)、答疑和測(cè)試,教師可以開(kāi)展網(wǎng)絡(luò)教學(xué)活動(dòng),管理網(wǎng)絡(luò)課堂,提供和分享優(yōu)質(zhì)的教學(xué)資源。管理員能在線進(jìn)行用戶、資源、角色和系統(tǒng)管理。平臺(tái)應(yīng)能很好地配合課堂教學(xué),成為課堂教學(xué)的延伸和提高。

結(jié)合軟件工程中的模塊化程序設(shè)計(jì)思想,整個(gè)系統(tǒng)主要由4個(gè)子系統(tǒng)組成:網(wǎng)絡(luò)輔助教學(xué)支持、網(wǎng)絡(luò)輔助教學(xué)資源庫(kù)管理、教學(xué)管理和系統(tǒng)管理四個(gè)子系統(tǒng)的網(wǎng)絡(luò)輔助教學(xué)系統(tǒng)。(l)教學(xué)支持子系統(tǒng)為學(xué)生提供學(xué)生學(xué)習(xí)的主要參考資料,素材分學(xué)科管理。網(wǎng)上學(xué)習(xí)系統(tǒng)提供了網(wǎng)上學(xué)習(xí)環(huán)境。在該環(huán)境下,有教師上課的電子講稿、CAI課件、教學(xué)大綱、教學(xué)日歷、參考資料及習(xí)題等,同時(shí)還可以進(jìn)行網(wǎng)上測(cè)試和作業(yè)。(2)教學(xué)教務(wù)資源管理子系統(tǒng)為教師和學(xué)生提供大量可供檢索的網(wǎng)絡(luò)課程和教學(xué)素材資源,對(duì)教師提供上傳下載教學(xué)資源的接口。(3)學(xué)教務(wù)管理子系統(tǒng)可以對(duì)用戶、教學(xué)資源進(jìn)行在線管理,并可授權(quán)教務(wù)管理人員對(duì)網(wǎng)絡(luò)課堂的教學(xué)情況進(jìn)行巡視和觀摩。(4)系統(tǒng)管理子系統(tǒng)可以在線對(duì)面板、角色、系統(tǒng)模塊、系統(tǒng)用戶進(jìn)行管理,并可以對(duì)功能模塊進(jìn)行定義。

4.2平臺(tái)架構(gòu)設(shè)計(jì)

4.2.1平臺(tái)基本架構(gòu)

通過(guò)對(duì)網(wǎng)絡(luò)環(huán)境下教學(xué)特點(diǎn)的研究,建立網(wǎng)絡(luò)輔助教學(xué)平臺(tái)的總體架構(gòu),根據(jù)圖4-1所建立的模型,網(wǎng)絡(luò)輔助教學(xué)平臺(tái)由以下模塊組成:網(wǎng)絡(luò)輔助教學(xué)支持、網(wǎng)絡(luò)輔助教學(xué)資源庫(kù)管理、教學(xué)教務(wù)管理和系統(tǒng)管理四個(gè)模塊組成。

圖4一1網(wǎng)絡(luò)輔助教學(xué)平臺(tái)結(jié)構(gòu)圖

4.2.2平臺(tái)功能模塊設(shè)計(jì)

平臺(tái)包括網(wǎng)絡(luò)輔助教學(xué)支持、網(wǎng)絡(luò)輔助教學(xué)資源庫(kù)管理、教學(xué)教務(wù)管理和系統(tǒng)管理四個(gè)子系統(tǒng),下面分別介紹各子系統(tǒng)的結(jié)構(gòu)和功能。

(l)網(wǎng)絡(luò)輔助教學(xué)支持系統(tǒng)(見(jiàn)圖4-2)

網(wǎng)絡(luò)輔助教學(xué)支持系統(tǒng)中的角色主要為教師和學(xué)生。用戶登陸平臺(tái)后,教師可以在線管理本課程的課件、布置(修改)作業(yè)、上傳課件相關(guān)資料等。學(xué)生可以瀏覽相應(yīng)的課程內(nèi)容、在線完成作業(yè)、向教師提出問(wèn)題等。該系統(tǒng)主要包括課程教學(xué)、師生交流兩個(gè)子系統(tǒng)。

圖4一2網(wǎng)絡(luò)輔助教學(xué)支持系統(tǒng)結(jié)構(gòu)圖

上圖中引擎層中各模塊的處理流程如下: I.單點(diǎn)登錄

網(wǎng)絡(luò)教學(xué)平臺(tái)有很多子系統(tǒng),通過(guò)跨域單點(diǎn)登錄,實(shí)現(xiàn)在平臺(tái)內(nèi)任一處登錄,當(dāng)導(dǎo)航到其他子系統(tǒng)時(shí)不需要再一次登錄??缬騿吸c(diǎn)登錄認(rèn)證流程如下:

當(dāng)用戶在網(wǎng)絡(luò)教學(xué)平臺(tái)中任一子系統(tǒng)登錄時(shí),跨域單點(diǎn)登錄系統(tǒng)會(huì)將用戶經(jīng)對(duì)稱加密的認(rèn)證信息(通常是用戶名與密碼)送到驗(yàn)證中心進(jìn)行身份驗(yàn)證,驗(yàn)證中心會(huì)檢查用戶的COOKIE(面向驗(yàn)證服務(wù)器),如沒(méi)有已登錄信息,則會(huì)解密送過(guò)來(lái)認(rèn)證信息進(jìn)行身份驗(yàn)證,如果驗(yàn)證通過(guò),則返回驗(yàn)證通過(guò)信息到請(qǐng)求認(rèn)證的子系統(tǒng),同時(shí)設(shè)置用戶COOKIE(面向驗(yàn)證服務(wù)器)。否則返回驗(yàn)證錯(cuò)誤信息到請(qǐng)求認(rèn)證的子系統(tǒng)。II.功能引擎

本系統(tǒng)的功能、子系統(tǒng),外部子系統(tǒng)或功能(如:博客、BBS、在線社區(qū)等)在功能引擎中注冊(cè),并進(jìn)行推送。從而把它們嵌入到網(wǎng)絡(luò)教學(xué)平臺(tái)中。本系統(tǒng)的其他子系統(tǒng)如需要使用這些功能,管理員可進(jìn)入后臺(tái)管理界面進(jìn)行功能定制。III.界面引擎

網(wǎng)絡(luò)教學(xué)平臺(tái)核心功能是資源的整合與展示,資源的展示界面是各種教學(xué)模式的載體。因此網(wǎng)絡(luò)教學(xué)平臺(tái)中資源通過(guò)界面引擎以不同的形式如博客、網(wǎng)絡(luò)課堂、電子教室等形式展現(xiàn)出來(lái)。界面(模板)引擎處理流程如下:

當(dāng)某一子系統(tǒng)啟動(dòng)時(shí),界面(模板)引擎把讀取的頁(yè)面模板文件轉(zhuǎn)換成文本流文件,然后在該流文件中查找各種標(biāo)簽,并負(fù)責(zé)調(diào)用對(duì)應(yīng)的標(biāo)簽函數(shù),用標(biāo)簽函數(shù)處理的結(jié)果替換文本流中相應(yīng)的標(biāo)簽。當(dāng)處理完所有的標(biāo)簽時(shí),刪除文本流中所有的空行,最后輸出。IV.資源集成引擎

當(dāng)用戶管理自己上傳的資源時(shí),可以選擇是否向資源中心推送(默認(rèn)推送),資源集成引擎負(fù)責(zé)索引這些資源的地址到資源庫(kù)中。

當(dāng)用戶要在頁(yè)面中使用資源時(shí),資源集成引擎會(huì)把用戶的本地資源和資源庫(kù)中的共享資源呈現(xiàn)在用戶面前供用戶使用,從而實(shí)現(xiàn)學(xué)校與學(xué)校、學(xué)校與企業(yè)、教師與教師、教師與學(xué)生、學(xué)生與學(xué)生之間的資源共享。(4)在系統(tǒng)設(shè)施階段對(duì)系統(tǒng)編碼、測(cè)試,形成可執(zhí)行的系統(tǒng)。

① 課程教學(xué)平臺(tái)

? 課件瀏覽子系統(tǒng):

集中管理己經(jīng)開(kāi)發(fā)成型的課件資源。學(xué)生根據(jù)所選的課程提供相應(yīng)的課件地址進(jìn)行瀏覽,教師則根據(jù)所上課程提供相應(yīng)的課件地址進(jìn)行瀏覽。

? 課程公告子系統(tǒng)

關(guān)于某門課程的即時(shí)消息。教師可發(fā)布、修改、刪除課程公告。? 輔導(dǎo)答疑子系統(tǒng)

學(xué)生提出問(wèn)題,由教師解答后發(fā)布給學(xué)生瀏覽。

? 教輔資料子系統(tǒng)

教師上傳的與該課程有關(guān)的教學(xué)輔助文件。供學(xué)生下載學(xué)習(xí)。? 案例集錦子系統(tǒng)

教師提供的與該課程有關(guān)的經(jīng)典案例供學(xué)生學(xué)習(xí)。? 問(wèn)題集錦子系統(tǒng) 教師提供的與該課程有關(guān)的常見(jiàn)問(wèn)題及解答供學(xué)生學(xué)習(xí)。

? VOD點(diǎn)播子系統(tǒng)

為學(xué)生和教師提供學(xué)校精品課程、學(xué)術(shù)講座等教學(xué)視頻資源。? 作業(yè)評(píng)閱子系統(tǒng)

教師布置、批改、分析課程作業(yè),瀏覽作業(yè)的總體情況。學(xué)生在線修改和提交作業(yè),并可以瀏覽教師評(píng)語(yǔ),了解知識(shí)點(diǎn)掌握情況。

? 自主考試子系統(tǒng)

教師可通過(guò)系統(tǒng)錄入考試試題和答案,學(xué)生可自主選擇課程的相應(yīng)章節(jié)進(jìn)行測(cè)試。? 考勤記錄子系統(tǒng)

用戶登陸網(wǎng)絡(luò)輔助教學(xué)平臺(tái)后,系統(tǒng)將對(duì)用戶的操作進(jìn)行自動(dòng)跟蹤,并隨時(shí)可提供詳細(xì)的考勤記錄和日志報(bào)告。② 師生交流平臺(tái)

? 課堂討論

用戶可針對(duì)某一課程的相關(guān)問(wèn)題進(jìn)行討論,發(fā)表意見(jiàn)。

? 學(xué)術(shù)論壇

平臺(tái)為教師與學(xué)生提供強(qiáng)大的在線交流工具:學(xué)術(shù)論壇,在這里可以按學(xué)科、按資源進(jìn)行相應(yīng)的討論區(qū),搜索和發(fā)布相關(guān)主題。學(xué)生與教師可在某門課程的論壇上進(jìn)行交流。論壇較之聊天室的好處在于可以將討論的內(nèi)容保留,供其他人瀏覽。(2)網(wǎng)絡(luò)輔助教學(xué)資源庫(kù)

網(wǎng)絡(luò)輔助教學(xué)資源庫(kù)(見(jiàn)圖4-3)包括共享軟件資源庫(kù)和教學(xué)素材資源庫(kù)。共享軟件資源庫(kù)面向所有用戶,為用戶提供豐富的共享軟件資源。教學(xué)素材資源庫(kù)主要面向教師,主要為滿足教師開(kāi)發(fā)網(wǎng)絡(luò)課件的教學(xué)需求提供豐富的、多元化的多媒體素材資源。其主要由資源入庫(kù)系統(tǒng)、資源類型管理系統(tǒng)、資源修改系統(tǒng)、檢索系統(tǒng)四部分組成。

圖4-3網(wǎng)絡(luò)輔助教學(xué)資源庫(kù)結(jié)構(gòu)圖

① 源類型管理子系統(tǒng)

面向系統(tǒng)維護(hù)人員,管理員可以按學(xué)科、類型建立資源目錄,同時(shí)也具有對(duì)資源目錄增加、刪除、修改等操作權(quán)限。

② 資源入庫(kù)子系統(tǒng)

面向教師和系統(tǒng)維護(hù)人員,可以向資源庫(kù)增加各種類型的教學(xué)資源。由于系統(tǒng)采用關(guān)鍵字等多種組合檢索方式,所以入庫(kù)時(shí)必須將各類文件的全貌等非文字信息轉(zhuǎn)換成可讀形式的信息,對(duì)其特征直接采用自然語(yǔ)言進(jìn)行多層次、多角度地加以準(zhǔn)確描述。文字描述信息資源的特征的準(zhǔn)確與否,關(guān)系到檢索的查準(zhǔn)率和查全率問(wèn)題。

③ 源修改子系統(tǒng)

面向教師和系統(tǒng)維護(hù)人員,資源的作者和管理員可以對(duì)資源的屬性,包括描述、類型、作者、大小、學(xué)科等相關(guān)信息進(jìn)行修改,也可刪除某一資源記錄。④ 源檢索子系統(tǒng)

對(duì)共享軟件資源庫(kù)的檢索面向所有用戶,教學(xué)素材資源庫(kù)主要面向教師,檢索采用基于表現(xiàn)形式的全文檢索,具有按專業(yè)、課程、關(guān)鍵字及資源類型的多種組合檢索方式。(3)網(wǎng)絡(luò)輔助教學(xué)管理系統(tǒng)

網(wǎng)絡(luò)輔助教學(xué)管理系統(tǒng)主要提供教學(xué)相關(guān)的管理功能,包括用戶管理、課程管理、課堂觀摩、系統(tǒng)新聞管理、歡迎詞管理、校內(nèi)資源鏈接管理、免費(fèi)資源管理等部分。① 戶管理

用戶管理的面向?qū)ο鬄榻虅?wù)管理員與系統(tǒng)管理員。用戶管理是對(duì)系統(tǒng)用戶信息和權(quán)限的管理,包括對(duì)用戶進(jìn)行分角色管理及用戶角色權(quán)限的分配管理。其中包括用戶管理、用戶權(quán)限管理、用戶角色管理、用戶角色權(quán)限管理和用戶口令維護(hù)等功能模塊。用戶管理內(nèi)容包括查看用戶基本信息及選課情況,停(啟)用某一賬戶,重置用戶密碼。用戶注冊(cè)模塊結(jié)構(gòu)如圖4一4所示:

圖4-4用戶注冊(cè)模塊結(jié)構(gòu)圖

② 程資源管理

對(duì)課程資源的管理包括添加修改新課程、設(shè)置課程是否收費(fèi)、查看該課程學(xué)生的繳費(fèi)情況等。

③ 堂觀摩子系統(tǒng)

教務(wù)管理人員在登陸后,可在課堂觀摩子系統(tǒng)中查閱某課程傳統(tǒng)課堂的教學(xué)安排。④ 系統(tǒng)新聞管理

添加、刪除、修改系統(tǒng)新聞。⑤ 迎詞管理 修改歡迎詞界面。⑥ 共資源鏈接管理

添加、刪除、修改平臺(tái)界面資源鏈接。(4)系統(tǒng)管理

系統(tǒng)管理面向系統(tǒng)管理員,主要功能有定制系統(tǒng)界面、定制用戶權(quán)限、管理各功能模塊等功能。為系統(tǒng)管理及升級(jí)提供強(qiáng)大的功能。系統(tǒng)提供了可插接在線教育企業(yè)的全部控件的基礎(chǔ)數(shù)據(jù)接口。這些系統(tǒng)管理工具提供了以下功能: ① 統(tǒng)模塊定義:定義系統(tǒng)的功能子模塊;② 級(jí)管理員管理:下級(jí)管理員信息的增刪改;③ 統(tǒng)角色及權(quán)限管理:可對(duì)定義系統(tǒng)角色及角色權(quán)限;

4.3平臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)

4.3.1數(shù)據(jù)庫(kù)設(shè)計(jì)原則 輔助教學(xué)平臺(tái),所涉及到一個(gè)重要的問(wèn)題是怎樣才能有效管理各種有效信息和資源,數(shù)據(jù)庫(kù)在其中起著非常重要的作用。

數(shù)據(jù)庫(kù)的設(shè)計(jì)有以下一些原則:用全局E-R圖技術(shù)設(shè)計(jì)數(shù)據(jù)庫(kù)(實(shí)體關(guān)系圖)組織所有的原始數(shù)據(jù),實(shí)現(xiàn)了全局?jǐn)?shù)據(jù)集成;劃分?jǐn)?shù)據(jù)庫(kù)設(shè)計(jì)階段將一切問(wèn)題在概念設(shè)計(jì)階段徹底解決,這些問(wèn)題通常包括唯一性、非空性、缺省值、域值、主鍵、外鍵等。

數(shù)據(jù)庫(kù)的設(shè)計(jì)主要包括以下方面的內(nèi)容,數(shù)據(jù)庫(kù)命名設(shè)計(jì):數(shù)據(jù)庫(kù)服務(wù)器的命名,數(shù)據(jù)庫(kù)的命名,數(shù)據(jù)庫(kù)對(duì)象的命名;數(shù)據(jù)庫(kù)一致性、完整性和安全性設(shè)計(jì)。

SQL Server數(shù)據(jù)庫(kù)系統(tǒng)具有完備的大型數(shù)據(jù)庫(kù)一致性、完整性和安全性控制措施,必須加以充分運(yùn)用,以保證系統(tǒng)的穩(wěn)定性。

要注意主鍵與字段的唯一性,對(duì)每個(gè)數(shù)據(jù)庫(kù)表定義主鍵(自動(dòng)索引并具備唯一性控制),通過(guò)指定表的主鍵,保證每一行的唯一性從而實(shí)現(xiàn)實(shí)體完整性。引用完整性基于定義主表與輔表之間的主鍵與外鍵的關(guān)系,保證各輔表外鍵對(duì)主表主鍵從屬關(guān)系的一致性。

索引和查詢策略在查詢中對(duì)于具有大數(shù)據(jù)集合的字段,必須設(shè)置索引或復(fù)合索引,保證查詢的速度性能對(duì)于絕大部分常用查詢能夠保持在性能要求以內(nèi)。

數(shù)據(jù)庫(kù)的安全性可以按Windows2000方式設(shè)置用戶訪問(wèn)數(shù)據(jù)庫(kù)的賬號(hào)和口令,然后根據(jù)數(shù)據(jù)庫(kù)應(yīng)用權(quán)限的劃分設(shè)計(jì)各數(shù)據(jù)庫(kù)及其對(duì)象對(duì)各用戶的許可。

4.3.2數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)

由于RDBMS是以二維表為基本管理單元的,所以E一R模型最終是由二維表及表間關(guān)系來(lái)描述的。換言之,E一R模型向數(shù)據(jù)庫(kù)概念模型的映射就是向數(shù)據(jù)表的變換過(guò)程。

由于在E-R模型中,己將實(shí)體間的關(guān)系,按照數(shù)據(jù)庫(kù)范式和約束進(jìn)行了合理的分解。在此可利用Visio工具,直接有E一R模型得到數(shù)據(jù)庫(kù)表。生成數(shù)據(jù)庫(kù)表如下: Users用戶信息表,表中儲(chǔ)存系統(tǒng)中全部用戶的相關(guān)信息,主鍵為用戶IDUsedD,另外還有用戶名,密碼,email地址等字段。

UserRoles用戶角色映射表,表中存儲(chǔ)用戶類型,主要用于定義用戶與角色之間的映射關(guān)系,主要字段:UserID,RoleID,Type。

Roles角色定義表,存儲(chǔ)系統(tǒng)所有角色的信息,主鍵為RoleID,還包括SystemID,RoleName,RoleDiscr等字段。

Coursewares課件信息表,存儲(chǔ)課件的相關(guān)信息,主鍵為Courseld,還有CourseWar,Issue,Descripti,AuthorlD等字段。

EResources資源總表,存儲(chǔ)資源的相關(guān)描述信息,主鍵為ResourceID,還有字段為:資源名稱,資源存放地址,資源類型等字段。

另外還有Classes課堂信息表,ClassRCCatalogs課堂資源分類信息表,ClassRCSharelevelS課堂資源共享級(jí)別表,ClassRC課堂資源表,CoursePlan課程大綱表,Diseussion公共討論模塊表,ERAssoeiateCourseS資源課程關(guān)聯(lián)信息表,EResoureeCatalogs資源分類信息表,EResoureeltems資源條目表,HtmlText公共文檔模塊表,Links公共鏈接模塊表,News公共新聞表,MsduleDefinitions模塊定義表,Modulesettings模塊設(shè)置標(biāo),Modules模塊總表,Systems系統(tǒng)定義表,Tabs系統(tǒng)標(biāo)簽表,UserlogDetails用戶系統(tǒng)日志明細(xì)表,Userlogstatities用戶系統(tǒng)日志統(tǒng)計(jì)表,useriogs用戶系統(tǒng)日志表等幾十個(gè)表。

數(shù)據(jù)設(shè)計(jì)完成以后,再由powerdesign自動(dòng)生成針對(duì)不同數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),可以真正實(shí)現(xiàn)與物理數(shù)據(jù)庫(kù)無(wú)關(guān)。

4.3.3主要數(shù)據(jù)庫(kù)的物理設(shè)計(jì)(1)模塊定義數(shù)據(jù)表的物理設(shè)計(jì)

(2)用戶數(shù)據(jù)表的物理設(shè)計(jì)(3)資源分類信息表的物理設(shè)計(jì)

(4)角色定義表的物理設(shè)計(jì)

(5)資源總表

(6)課程公告表

4.3.4數(shù)據(jù)庫(kù)關(guān)系圖

網(wǎng)絡(luò)輔助教學(xué)平臺(tái)的數(shù)據(jù)庫(kù)關(guān)系圖:如圖4-5:

圖4-5數(shù)據(jù)庫(kù)關(guān)系圖

第六章基于WEB的網(wǎng)絡(luò)輔助教學(xué)平臺(tái)的測(cè)試與應(yīng)用

6.1功能測(cè)試

6.1.1測(cè)試目的

測(cè)試是為了使系統(tǒng)的能最終滿足用戶的需求,目的在于發(fā)現(xiàn)錯(cuò)誤。一個(gè)好的測(cè)試用例在于發(fā)現(xiàn)從前未發(fā)現(xiàn)的錯(cuò)誤;一個(gè)成功的測(cè)試是能發(fā)現(xiàn)從前未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。6.1.2測(cè)試原則

(l)盡早地、不斷地進(jìn)行軟件測(cè)試。(2)測(cè)試用由測(cè)試輸入數(shù)據(jù)和與之對(duì)應(yīng)的預(yù)期輸出結(jié)果兩部分組成。(3)測(cè)試不能由開(kāi)發(fā)者單獨(dú)進(jìn)行。

(4)設(shè)計(jì)測(cè)試用例,包括合理的輸入條件和不合理的輸入條件。(5)充分注意測(cè)試中的群集現(xiàn)象。

(6)在對(duì)程序進(jìn)行修改后,進(jìn)行回歸測(cè)試。6.1.3測(cè)試內(nèi)容

(l)測(cè)試內(nèi)容包括對(duì)“需求分析”、“功能模塊設(shè)計(jì)”和“數(shù)據(jù)庫(kù)設(shè)計(jì)”等文檔的審查,由此三文檔所產(chǎn)生的其他測(cè)試工作也在本次測(cè)試活動(dòng)范圍之內(nèi)。(2)鑒于網(wǎng)站穩(wěn)定性很重要,所以本次測(cè)試活動(dòng)包括: ? 配置測(cè)試

? 界面布局測(cè)試 ? 性能測(cè)試:對(duì)以下模塊進(jìn)行功能測(cè)試:教師、學(xué)生及管理員用戶登錄;教學(xué)支持模塊功能:教師(學(xué)生)是否可以進(jìn)入與傳統(tǒng)課堂對(duì)應(yīng)的網(wǎng)絡(luò)課堂在線進(jìn)行教學(xué)活動(dòng),教師能否發(fā)布公告、課件、作業(yè)、教案的上傳與下載等,學(xué)生能否查看課堂教學(xué)資源,網(wǎng)上在線測(cè)試功能,網(wǎng)上作業(yè)系統(tǒng)功能,BBS的相關(guān)功能的實(shí)現(xiàn);教學(xué)資源的管理及? ? ? 檢索功能;教務(wù)管理功能;管理員對(duì)用戶、資源、平臺(tái)設(shè)置的管理功能等。安全性測(cè)試 接口文件測(cè)試

病毒測(cè)試

其中性能測(cè)試是重點(diǎn)內(nèi)容。

6.1.4測(cè)試步驟(l)測(cè)試資源: 測(cè)試人員:2人(一名學(xué)生,一名教師);系統(tǒng)平臺(tái):WinZOOO或WinXP及以上;其他軟件:WOrd等;硬件:計(jì)算機(jī)2臺(tái)(工作站1臺(tái)、服務(wù)器1臺(tái)):網(wǎng)絡(luò):互聯(lián)網(wǎng);其它資源:暫無(wú)(2)測(cè)試方法 ①單元測(cè)試

這是在編寫完源程序,通過(guò)人工測(cè)試和計(jì)算機(jī)測(cè)試來(lái)完成的。本研究因沒(méi)有組成開(kāi)發(fā)小組,因此由筆者自己來(lái)完成。

②集成測(cè)試

集成測(cè)試是隨軟件裝配的同時(shí)進(jìn)行的測(cè)試。根據(jù)組裝模塊方式的不同,分自頂向下結(jié)合和自底向上結(jié)合模塊兩種測(cè)試方法,本研究采用的是自頂向下結(jié)合的方法進(jìn)行集成測(cè)試,在單人非專用的機(jī)器上測(cè)試。

④ 統(tǒng)測(cè)試

在網(wǎng)站上充分運(yùn)行了本系統(tǒng),驗(yàn)證系統(tǒng)各部分是否都能正常工作,并完成所賦予的務(wù)。為了驗(yàn)證系統(tǒng)的安全、強(qiáng)度和性能,可以進(jìn)行對(duì)系統(tǒng)的進(jìn)行合法和非法的訪問(wèn)和破壞性試驗(yàn)。

(3)測(cè)試結(jié)果

經(jīng)過(guò)嚴(yán)格的測(cè)試,最終確定本系統(tǒng)的各模塊的功能基本都能實(shí)現(xiàn)。測(cè)試提出以 下兩點(diǎn)問(wèn)題:答疑模塊功能還需要進(jìn)一步完善,系統(tǒng)相關(guān)模塊的統(tǒng)計(jì)功能需加強(qiáng)。

6.2應(yīng)用狀況

6.2.1總體應(yīng)用狀況

本平臺(tái)于2004年12月完成開(kāi)發(fā)工作,于2005年3月完成功能測(cè)試工作,從2005年4月正式面向?qū)W校教師和全日制本科學(xué)生開(kāi)放使用,據(jù)統(tǒng)計(jì)使用網(wǎng)絡(luò)輔助教學(xué)平臺(tái)進(jìn)行輔助教學(xué)的課程達(dá)到100門左右,使用的學(xué)生近千人,入庫(kù)的各類教學(xué)資源達(dá)700G(具體資源建設(shè)情況見(jiàn)表6-l),平臺(tái)運(yùn)行情況穩(wěn)定,沒(méi)有出現(xiàn)大的故障。

表6-1資源建設(shè)情況表

6.2.2教學(xué)試點(diǎn)改革情況

2005年底學(xué)校啟動(dòng)了公共理論課程教學(xué)改革試點(diǎn)工作,在《鄧小平理論與“三個(gè)代表”重要思想概論》和《法律基礎(chǔ)》兩門公共理論課程中全面利用網(wǎng)絡(luò)輔助教學(xué)平臺(tái)開(kāi)展教學(xué)工作,公共理論課部的3名教師和200多名學(xué)生參加本次試點(diǎn)工作,學(xué)生在選課時(shí)可以根據(jù)個(gè)人意愿選擇課堂教學(xué)或網(wǎng)上教學(xué)中的一種模式進(jìn)行學(xué)習(xí),選擇網(wǎng)上教學(xué)的學(xué)生可以不參加課堂學(xué)習(xí),但必須通過(guò)網(wǎng)絡(luò)輔助教學(xué)平臺(tái)進(jìn)行公共理論課程的學(xué)習(xí),教師通過(guò)平臺(tái)進(jìn)行相關(guān)教學(xué)組織和管理工作,包括提供同步教學(xué)錄像、網(wǎng)絡(luò)課程和相關(guān)教輔資料、發(fā)布課程信息、答疑輔導(dǎo)、組織課程討論、發(fā)布平時(shí)作業(yè)等相關(guān)教學(xué)資源,學(xué)生不進(jìn)課堂就可以獲取課堂教學(xué)的全部教學(xué)信息和資源,同時(shí)學(xué)校將根據(jù)學(xué)生網(wǎng)上學(xué)習(xí)時(shí)間、網(wǎng)上交流情況、作業(yè)情況等幾方面確定學(xué)生平時(shí)成績(jī),課程學(xué)習(xí)結(jié)束后試點(diǎn)學(xué)生要參加學(xué)校統(tǒng)一組織的考試,經(jīng)過(guò)測(cè)試,我們發(fā)現(xiàn)通過(guò)網(wǎng)上輔助教學(xué)的學(xué)生成績(jī)稍優(yōu)于課堂教學(xué),這說(shuō)明網(wǎng)絡(luò)輔助教學(xué)模式是受教師和學(xué)生認(rèn)可的,網(wǎng)絡(luò)輔助教學(xué)平臺(tái)在整個(gè)試點(diǎn)教學(xué)過(guò)程基本保持了比較穩(wěn)定的狀態(tài),性能經(jīng)受住了考驗(yàn)。湖北電視臺(tái)和楚天都市報(bào)等相關(guān)媒體還對(duì)我校此項(xiàng)網(wǎng)絡(luò)輔助教學(xué)改革工作進(jìn)行了專題報(bào)道。

6.2.3教學(xué)應(yīng)用反饋情況

2006年3月一5月,為了進(jìn)一步完善和優(yōu)化網(wǎng)絡(luò)輔助教學(xué)平臺(tái)的功能,學(xué)校教務(wù)處、宣傳部針對(duì)網(wǎng)絡(luò)輔助教學(xué)平臺(tái)的教學(xué)應(yīng)用情況對(duì)在校學(xué)生進(jìn)行了網(wǎng)上問(wèn)卷調(diào)查,共有300多學(xué)生參加了調(diào)查活動(dòng),通過(guò)調(diào)查發(fā)現(xiàn),學(xué)生在總體上對(duì)網(wǎng)絡(luò)輔助教學(xué)模式表示認(rèn)可,80%以上學(xué)生對(duì)學(xué)校網(wǎng)絡(luò)輔助教學(xué)平臺(tái)的功能設(shè)計(jì)表示滿意,但也有39%的學(xué)生對(duì)網(wǎng)絡(luò)輔助教學(xué)平臺(tái)還缺乏了解,認(rèn)為學(xué)校應(yīng)加強(qiáng)宣傳和引導(dǎo)工作;有45%的學(xué)生認(rèn)為平臺(tái)應(yīng)首先加強(qiáng)教學(xué)資源建設(shè);有34%的學(xué)生認(rèn)為平臺(tái)可增加更多的交互環(huán)境,如:博客平臺(tái)等;有24%的學(xué)生應(yīng)加入人工智能功能,如:答疑自動(dòng)反饋系統(tǒng)、智能測(cè)試系統(tǒng)等。針對(duì)以上學(xué)生反饋的意見(jiàn),我們正在整理相關(guān)需求,準(zhǔn)備進(jìn)行二次開(kāi)發(fā),完成平臺(tái)版本升級(jí)工作。

第二篇:酒店信息管理論文:基于GPRS網(wǎng)絡(luò)和嵌入式系統(tǒng)的酒店信息管理平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)

酒店信息管理論文:基于GPRS網(wǎng)絡(luò)和嵌入式系統(tǒng)的酒店信

息管理平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)

摘 要:基于GPRS網(wǎng)絡(luò)的嵌入式系統(tǒng)平臺(tái)具有低成本、高效率的特性,論文介紹了針對(duì)小規(guī)模酒店信息管理平臺(tái)基于GPRS網(wǎng)絡(luò)和嵌入式系統(tǒng)的軟件、硬件的設(shè)計(jì)和實(shí)現(xiàn)。

關(guān)鍵詞:GPRS;嵌入式系統(tǒng);Qt Embedded;TCP/IP;sqlite 1 酒店信息化發(fā)展趨勢(shì)以及本技術(shù)的應(yīng)用場(chǎng)景隨著全球經(jīng)濟(jì)一體化的深入發(fā)展,酒店業(yè)的客源結(jié)構(gòu)更加豐富并呈現(xiàn)出多樣化趨勢(shì),客源市場(chǎng)也變得更加廣闊。同時(shí),酒店業(yè)也將面臨日趨激烈的競(jìng)爭(zhēng)環(huán)境和不斷提高的客戶期望,這迫使酒店業(yè)內(nèi)人士進(jìn)一步尋求擴(kuò)大酒店銷售、改進(jìn)服務(wù)質(zhì)量、降低管理成本和提升客戶滿意度的新方法,以便增強(qiáng)酒店的核心競(jìng)爭(zhēng)力。及時(shí)地共享客人的信息,給客人提供人性化的服務(wù)業(yè)已成為酒店管理的目標(biāo)與方向,而酒店裝潢、客房數(shù)量、房間設(shè)施等質(zhì)量競(jìng)爭(zhēng)和價(jià)格競(jìng)爭(zhēng)將退居二線??梢灶A(yù)見(jiàn)的是,未來(lái)酒店的競(jìng)爭(zhēng)將主要在智能化、信息化方面展開(kāi)。小型旅館或家庭酒店在智能化、信息化方面仍與星級(jí)酒店存在著明顯弱勢(shì),這是由資金、人力、品牌等多方面的因素導(dǎo)致的。筆者提出的酒店信息管理平臺(tái)主要針對(duì)規(guī)模較小的酒店提供信息化服務(wù),解決酒店規(guī)模和信息化需求之間的矛盾。本技術(shù)基于嵌入式系統(tǒng)實(shí)現(xiàn),利用可視化的操作方式輕松實(shí)現(xiàn),并且通過(guò)GPRS網(wǎng)絡(luò),將客房信息發(fā)布到統(tǒng)一的信息平臺(tái)以便查詢預(yù)定。酒店信息管理平臺(tái)框架設(shè)計(jì)總體來(lái)講,本系統(tǒng)屬于C/S模式,客戶端指處理終端,用于處理酒店信息的本地管理,服務(wù)器端指Web服務(wù)器,用于系統(tǒng)內(nèi)酒店的客房信息和其他酒店信息的發(fā)布,以及客戶的遠(yuǎn)程查詢和預(yù)定。此外,客戶也可以通過(guò)電話網(wǎng)絡(luò)直接與酒店終端聯(lián)系完成業(yè)務(wù)流程。主要功能模塊本系統(tǒng)基于嵌入式系統(tǒng)方式,所以它的特點(diǎn)是體積小、功耗小、全觸摸屏操作、方便安裝和移動(dòng),同時(shí)它涵蓋了小型酒店管理的各個(gè)方面(見(jiàn)圖2),主要功能模塊包括:(1)系統(tǒng)設(shè)置:設(shè)置系統(tǒng)登錄密碼、屏幕保護(hù)、電源管理、系統(tǒng)時(shí)間等。(2)客戶管理:記錄和管理客戶信息,包括姓名、性別、電話,以及自定義的客戶信息,支持客戶信息的快速查詢、分組管理,并為其他模塊提供客戶信息支持。(3)職員管理:管理酒店職員信息,包括姓名、性別、職務(wù)、薪金、權(quán)限等。(4)短信服務(wù):該模塊主要用于客戶的個(gè)性化服務(wù),如預(yù)定確認(rèn)、訂單提醒、生日祝福、優(yōu)惠信息等。(5)客房預(yù)定:支持本地預(yù)定和遠(yuǎn)程預(yù)定。本地預(yù)定即客戶直接與酒店聯(lián)系產(chǎn)生的訂單,遠(yuǎn)程預(yù)定是客戶通過(guò)網(wǎng)絡(luò)信息平臺(tái)產(chǎn)生的訂單,通過(guò)GPRS同步到本地。(6)數(shù)據(jù)備份:系統(tǒng)可以根據(jù)設(shè)置,定期將終端數(shù)據(jù)備份到U盤等存儲(chǔ)設(shè)備上,防止設(shè),避免給酒店帶來(lái)?yè)p失。(7)統(tǒng)計(jì)分析:對(duì)客戶訂單信息、職員業(yè)務(wù)信息等進(jìn)行統(tǒng)計(jì)分析,生成業(yè)務(wù)報(bào)表。此外,該模塊可以擴(kuò)展為酒店管理的高級(jí)應(yīng)用,隨著客戶和訂單等信息數(shù)據(jù)的積累,可以引入數(shù)據(jù)挖掘技術(shù),對(duì)酒店日常經(jīng)營(yíng)提供決策支持。(8)信息同步:利用GPRS技術(shù),同步本地終端和Web平臺(tái)的數(shù)據(jù),包括客房情況、客戶預(yù)定信息、酒店促銷信息等,便于客戶通過(guò)網(wǎng)絡(luò)平臺(tái)遠(yuǎn)程預(yù)定客房。通信模塊采用展迅SM5100,它是專為數(shù)據(jù)傳輸設(shè)計(jì)的GSM/GPRS無(wú)線通信模塊,集成了完善的協(xié)議棧及應(yīng)用層軟件,具有尺寸小、性能好、開(kāi)發(fā)簡(jiǎn)便等優(yōu)點(diǎn)。Intel pxa310通過(guò)RS232控制SM5100,完成GPRS網(wǎng)絡(luò)數(shù)據(jù)傳輸和短信、通話等功能。終端采用64M SDRAM和128NAND Flash,用于保存操作圖3 終端硬件設(shè)計(jì)圖系統(tǒng)、上層應(yīng)用、用戶數(shù)據(jù)等,并提供足夠的數(shù)據(jù)存取性能。為了方便用戶操作,采用640×480分辨率的大尺寸觸摸屏,使得所有操作通過(guò)觸屏方式完成,同時(shí)進(jìn)一步縮小了終端的物理尺寸。USB接口用于連接U盤等外部存儲(chǔ)設(shè)備和打印設(shè)備,并可用于后期的軟件升級(jí)等功能。在終端的軟件設(shè)計(jì)方面,采用Linux操作系統(tǒng)控制整個(gè)系統(tǒng)的運(yùn)行。Linux操作系統(tǒng)包含了完整的TCP/IP協(xié)議棧、PPP協(xié)議棧,所以不需要添加TCP/IP協(xié)議硬件轉(zhuǎn)換芯片,有利于減少硬件體積和成本,SM5100作為Modem,用于連接設(shè)備和

網(wǎng)絡(luò)。利用GPRS網(wǎng)絡(luò)與分組數(shù)據(jù)網(wǎng)絡(luò)互聯(lián)互通的特性,實(shí)現(xiàn)了將設(shè)備接入最大的PDN網(wǎng)絡(luò)Internet。設(shè)備與SM5100模塊之間采用串行接口通訊,在SM5100連接上網(wǎng)絡(luò)后,設(shè)備即可以通過(guò)其來(lái)實(shí)現(xiàn)與Internet上的主機(jī)進(jìn)行數(shù)據(jù)通訊,SM5100透明收發(fā)數(shù)據(jù)。這種實(shí)現(xiàn)方法類似于使用家用PC做代理接入的方式,只是這里采用了無(wú)線方式,網(wǎng)關(guān)改為SM5100模塊。上層應(yīng)用軟件基于Qt Embedded實(shí)現(xiàn)可視化界面操作風(fēng)格,由于pxa310強(qiáng)大的處理能力,保證了界面操作非常流暢的操作速度。此外,我們集成了sqlite數(shù)據(jù)庫(kù),實(shí)現(xiàn)客戶數(shù)據(jù)等的靈活存儲(chǔ)和查詢。結(jié)論

本系統(tǒng)將嵌入式操作系統(tǒng)、GRPS技術(shù)有機(jī)地結(jié)合在一起,利用sqlite數(shù)據(jù)庫(kù)實(shí)現(xiàn)靈活的數(shù)據(jù)處理,并實(shí)現(xiàn)基于Qt Embedded的可視化操作界面,借助于嵌入式硬件平臺(tái)的強(qiáng)大處理能力和Internet網(wǎng)絡(luò),實(shí)現(xiàn)了集本地酒店管理和遠(yuǎn)程客房預(yù)定于一身的嵌入式酒店管理平臺(tái),針對(duì)小規(guī)模酒店管理的信息化需求,有效地解決了信息化管理和資金投入的矛盾。

參考文獻(xiàn): [1] 賈鵬.基于嵌入式系統(tǒng)和GPRS網(wǎng)絡(luò)的灌溉控制器的研究[D].天津:天津大學(xué),2005.李棟梁.基于嵌入式的水庫(kù)水情監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].大連:大連理工大學(xué),2006.[3] 饒永華.基于PDA系統(tǒng)的USB接口的研究與開(kāi)發(fā)[D].成都:電子科技大學(xué),2002.[4] 童旺.GPRS數(shù)據(jù)終端的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北方工業(yè)大學(xué),2007.[5] 申力.基于GPRS的數(shù)據(jù)傳輸應(yīng)用[D].南京:南京理工大學(xué),2004.[6] 劉嵐,程莉.嵌入式系統(tǒng)硬件平臺(tái)的選型研究[J].電子工程技術(shù)與標(biāo)準(zhǔn)化,2005(2):51-54.[7] 韓冰,李芬華.GPRS技術(shù)在數(shù)據(jù)與監(jiān)控系統(tǒng)中的應(yīng)用[J].電子技術(shù),2003(8):70-80.[8] 何立民.嵌入式系統(tǒng)的定義與發(fā)展歷史[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2004(1):30-45.[9] 張晶,曾憲運(yùn).嵌入式系統(tǒng)概述[J].電測(cè)與儀表,2002(4):23-30.[10] 王存鍵,張建正.嵌入式Linux下Qt/Embedded的應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,2006(11):62-66.

第三篇:嵌入式系統(tǒng)設(shè)計(jì)報(bào)告

嵌入式系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)報(bào)告

班 級(jí):學(xué) 號(hào):姓 名:成 績(jī):指導(dǎo)教師:

20090612 2009112107 侯金鐘 武俊鵬、劉書勇 1.實(shí)驗(yàn)一

1.1 實(shí)驗(yàn)名稱

嵌入式系統(tǒng)硬件開(kāi)發(fā)環(huán)境

1.2 實(shí)驗(yàn)?zāi)康?/p>

1.熟悉UP-net3000實(shí)驗(yàn)平臺(tái)。

2.超級(jí)終端設(shè)置及BIOS 功能使用。

1.3 實(shí)驗(yàn)環(huán)境

硬件:ARM 嵌入式開(kāi)發(fā)平臺(tái)、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開(kāi)發(fā) 環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。

1.4 實(shí)驗(yàn)內(nèi)容及要求

熟悉UP-net3000實(shí)驗(yàn)平臺(tái)的硬件電路和外設(shè),ARM JTAG的安裝和使用,利用超級(jí)終端檢驗(yàn)外設(shè)的工作狀態(tài)。

1.5 實(shí)驗(yàn)設(shè)計(jì)與實(shí)驗(yàn)步驟

1.建立工程

(1)運(yùn)行ARM SDT 2.5 集成開(kāi)發(fā)環(huán)境(ARM Project Manager).(2)在新建的工程中,如圖1A-2 所示,選中工程樹(shù)的“根部”。

(3)因?yàn)殚_(kāi)發(fā)板上的嵌入式處理器ARM7TDMI 沒(méi)有浮點(diǎn)處理器,所以,如圖1A-3 所

示,在彈出的對(duì)話框中設(shè)置Floating Point Processor 為none,并保持其他的設(shè)置不變。(4)選中工程樹(shù)的“根部”,通過(guò)菜單Project | Tool Configuration for work1.apj | asmlink | Set,對(duì)整個(gè)工程的連接方式進(jìn)行設(shè)置。(5)在彈出的對(duì)話框中,選中Entry and Base 標(biāo)簽,如圖1A-4 所示,設(shè)置連接的Read-Only(只讀)和Read-Write(讀寫)地址。

(6)選擇Linker Configuration 的ImageLayout 標(biāo)簽,(7)選擇Project | Edit Project Tamplete 菜單,彈出Project Template Editor 對(duì)話框。

(8)選擇Project | Edit Variables for work1.apj,彈出Edit Variables for work1.apj 對(duì)話框。

2.進(jìn)行程序的在線仿真、調(diào)試

1.6 實(shí)驗(yàn)過(guò)程與分析

熟悉UP-net3000實(shí)驗(yàn)平臺(tái)的硬件電路和外設(shè),安裝了ARM JTAG,利用超級(jí)終端檢驗(yàn)了外設(shè)的工作狀態(tài)。

1.7 實(shí)驗(yàn)結(jié)果總結(jié)

軟件安裝成功,結(jié)果顯示正常。

1.8 心得體會(huì)

通過(guò)此次試驗(yàn),我對(duì)ARM的環(huán)境的功能有一定的了解與完善。對(duì)試驗(yàn)臺(tái)有了基本的認(rèn)識(shí)與使用。

2.實(shí)驗(yàn)二

2.1 實(shí)驗(yàn)名稱

嵌入式系統(tǒng)軟件開(kāi)發(fā)環(huán)境

2.2 實(shí)驗(yàn)?zāi)康?/p>

1.熟悉ADS1.2 開(kāi)發(fā)環(huán)境,學(xué)會(huì)ARM 仿真器的使用。

2.使用ADS 編譯、下載、調(diào)試并跟蹤一段已有的程序,了解嵌入式開(kāi)發(fā)的基本思想和過(guò)程。

2.3 實(shí)驗(yàn)環(huán)境

硬件:ARM 嵌入式開(kāi)發(fā)平臺(tái)、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開(kāi)發(fā) 環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。

2.4 實(shí)驗(yàn)內(nèi)容及要求

本次實(shí)驗(yàn)使用ADS 集成開(kāi)發(fā)環(huán)境。新建一個(gè)簡(jiǎn)單的工程文件,并編譯這個(gè)工程文件。學(xué)習(xí)ARM 仿真器的使用和開(kāi)發(fā)環(huán)境的設(shè)置。下載已經(jīng)編譯好的文件到嵌入式控制器中運(yùn)行。學(xué)會(huì)在程序中設(shè)置斷點(diǎn),觀察系統(tǒng)內(nèi)存和變量。

2.5 實(shí)驗(yàn)設(shè)計(jì)與實(shí)驗(yàn)步驟

(1)運(yùn)行ADS1.2 集成開(kāi)發(fā)環(huán)境(CodeWarrior for ARM Developer Suite)。

(2)在新建的工程中,選擇Debug 版本,使用Edit | Debug Settings菜單對(duì)Debug 版本進(jìn)行參數(shù)設(shè)置。(3)在Debug Settings 對(duì)話框中選擇Target Settings 項(xiàng)。在Post-linker一欄中選擇ARM from ELF。

(4)在Debug Settings 對(duì)話框中選擇ARM Linker 項(xiàng)

(5)在第四步中如果選擇簡(jiǎn)單的地址連接設(shè)置,在Debug Settings 對(duì)話框中選擇ARM Linker 項(xiàng)

(6)回到的工程窗口中,選擇Release 版本,使用Edit | Release Settings 菜單對(duì)Release 版本進(jìn)行參數(shù)設(shè)置。(7)參照第(3)、(4)、(5)、(6)步在Release Settings 對(duì)話框中設(shè)置Release版本的Post-linker、連接地址范圍、入口模塊和輸出文件。(8)回到如圖1B-3 所示的工程窗口中,選擇Targets 選項(xiàng)卡,如圖1B-11 所示。選中DebugRel 版本,按Del 鍵將其刪除。DebugRel 子樹(shù)是一個(gè)折衷版本,通常用不到,所以在這里刪除。

2.6 實(shí)驗(yàn)過(guò)程與分析

1)回到工程窗口選中Debug 版本,執(zhí)行菜單Project | Make 對(duì)工程進(jìn)行編譯連接。(2)在ADS 中執(zhí)行菜單Project | Debug 啟動(dòng)ADS1.2 的調(diào)試工具AXD。(3)在AXD 中執(zhí)行菜單Options | Configure Target 對(duì)AXD 進(jìn)行設(shè)置。(4)點(diǎn)Select 按鈕選擇遠(yuǎn)程連接為ARM ethernet driver,點(diǎn)Configure 按鈕輸入仿真器的IP 地址。

(5)等待程序裝載完畢以后,通過(guò)Execute | Go 菜單以及Execute | Stop(或者工具欄中的相應(yīng)按鈕)運(yùn)行或暫停程序。程序暫停后在窗口中將顯示出程序暫停的位置。(6)通過(guò)Execute | Step 菜單(或者工具欄中的相應(yīng)按鈕)可以單步運(yùn)行程序。

(7)程序停止后可以通過(guò)Processor Views | Sources 菜單查看源文件,并可在適當(dāng)位置按F9 設(shè)置端點(diǎn)。

(8)使用在Processor View 菜單下的Registers、Variables 和Memory 命令可以查看工作寄存器或者內(nèi)存變量。讀者可以逐一地嘗試,為以后調(diào)試程序打下基礎(chǔ)。

2.7 實(shí)驗(yàn)結(jié)果總結(jié)

超級(jí)終端輸出“Hello World!”。

2.8 心得體會(huì)

基本了解了ADS1.2的配置條件,學(xué)會(huì)了ARM仿真器的使用方法。

3.實(shí)驗(yàn)三

3.1 實(shí)驗(yàn)名稱

鍵盤及LED實(shí)驗(yàn)

3.2 實(shí)驗(yàn)?zāi)康?/p>

1.學(xué)習(xí)鍵盤及LED 驅(qū)動(dòng)原理。

2.掌握Z(yǔ)LG7289芯片串行接口的使用方法,用ZLG7289芯片驅(qū)動(dòng)17鍵的鍵盤和8個(gè)共陰極LED。

3.3 實(shí)驗(yàn)環(huán)境

硬件:ARM 嵌入式開(kāi)發(fā)平臺(tái)、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開(kāi)發(fā) 環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。

3.4 實(shí)驗(yàn)內(nèi)容及要求

通過(guò)ZLG7289芯片驅(qū)動(dòng)17鍵的鍵盤和8個(gè)共陰極LED,將按鍵值在LED上顯示出來(lái)。要求從右至左循環(huán)顯示至少四位數(shù)字。

基本功能實(shí)現(xiàn)之后可考慮實(shí)現(xiàn)從左至右顯示四位及四位以上數(shù)字(最大八位),并可設(shè)置清零鍵等擴(kuò)展功能。

3.5 實(shí)驗(yàn)設(shè)計(jì)與實(shí)驗(yàn)步驟

利用所給的基礎(chǔ)代碼進(jìn)行調(diào)試,觀察輸出結(jié)果,結(jié)合指導(dǎo)書和教材掌握基本原理和源代碼的編寫方式。根據(jù)實(shí)驗(yàn)的要求設(shè)計(jì)函數(shù)流程,并反復(fù)調(diào)試,實(shí)現(xiàn)功能。1.新建工程,將“Exp3 鍵盤及LED 驅(qū)動(dòng)實(shí)驗(yàn)”中的文件添加到工程。2.定義ZLG7289 寄存器(ZLG7289.h)

#define ZLG7289_CS(0x20)//GPB5 #define ZLG7289_KEY(0x10)//GPG4 #define ZLG7289_ENABLE()do{ZLG7289SIOBand=rSBRDR;ZLG7289SIOCtrl=rSIOCON;rSIOCON=0x31;rSBRDR=0xff;rPDATB&=(~ZLG7289_CS);}while(0)#define ZLG7289_DISABLE()do{rPDATB|=ZLG7289_CS;rSBRDR=ZLG7289SIOBand;rSIOCON=ZLG7289SIOCtrl;}while(0)3.編寫ZLG7289 驅(qū)動(dòng)函數(shù)(ZLG7289.c)4.定義鍵盤映射表:(Keyboard16.c)

unsigned char KeyBoard_Map[]= {4,8,11,0,0,0,0,0,5,9,12,15,1,0,0,0,6,10,13,16,2,3,0,0,7,0,14,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};//64 鍵值映射表,通過(guò)查找鍵盤映射表來(lái)確定鍵盤掃描碼對(duì)應(yīng)的按鍵值。

5.定義鍵值讀取函數(shù)。(Keyboard16.c)6.編寫主函數(shù),將按鍵值在數(shù)碼管上顯示。

3.6 實(shí)驗(yàn)過(guò)程與分析

利用鍵盤驅(qū)動(dòng)函數(shù)實(shí)現(xiàn)基本數(shù)字輸入,然后利用循環(huán)左移函數(shù)實(shí)現(xiàn)輸入數(shù)字做一樣功能,并通過(guò)改變函數(shù)中相應(yīng)delay的值來(lái)消除鍵盤按鍵帶來(lái)的抖動(dòng)。

3.7 實(shí)驗(yàn)結(jié)果總結(jié)

按鍵值可以在LED上顯示出來(lái)。要求從右至左循環(huán)顯示八位數(shù)字,同時(shí)可以復(fù)位清零。達(dá)到實(shí)驗(yàn)的效果。

3.8 心得體會(huì)

通過(guò)本次實(shí)驗(yàn),我了解了LED的顯示屏幕的數(shù)字的移位功能,這個(gè)功能不止可以用一個(gè)方法實(shí)現(xiàn),而循環(huán)左移是其中比較巧妙且省力的一種,在遇到類似情況的時(shí)候,可以優(yōu)先考慮能不能利用到文件中已經(jīng)存在的函數(shù),這樣可以不必自己編寫函數(shù),省時(shí)省力。是一種可靠的方法。4.實(shí)驗(yàn)四

4.1 實(shí)驗(yàn)名稱

電機(jī)轉(zhuǎn)動(dòng)控制及中斷實(shí)驗(yàn)

4.2 實(shí)驗(yàn)?zāi)康?/p>

1.熟悉ARM本身自帶的六路即三對(duì)PWM,掌握相應(yīng)寄存器的配置。

2.編程實(shí)現(xiàn)ARM系統(tǒng)的PWM輸出和I/O輸出,前者用于控制直流電機(jī),后者用于控制步進(jìn)電機(jī)。

3.了解直流電機(jī)和步進(jìn)電機(jī)的工作原理,學(xué)會(huì)用軟件的方法實(shí)現(xiàn)步進(jìn)電機(jī)的脈沖分配,即用軟件的方法代替硬件的脈沖分配器。

4.了解44B0處理器上中斷的應(yīng)用。5.學(xué)習(xí)在44B0處理器上中斷的應(yīng)用。

6.進(jìn)一步熟悉平臺(tái)外圍硬件及其驅(qū)動(dòng)程序的編寫。

4.3 實(shí)驗(yàn)環(huán)境

硬件:ARM 嵌入式開(kāi)發(fā)平臺(tái)、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開(kāi)發(fā) 環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。

4.4 實(shí)驗(yàn)內(nèi)容及要求

1.學(xué)習(xí)步進(jìn)電機(jī)和直流電機(jī)的工作原理,了解實(shí)現(xiàn)兩個(gè)電機(jī)轉(zhuǎn)動(dòng)對(duì)于系統(tǒng)的軟件和硬件要求。學(xué)習(xí)ARM 知識(shí),掌握 PWM 的生成方法,同時(shí)也要掌握 I/O的控制方法。

2.編程實(shí)現(xiàn)ARM芯片的一對(duì)PWM輸出用于控制直流電機(jī)的轉(zhuǎn)動(dòng),通過(guò)A/D旋鈕控制其轉(zhuǎn)動(dòng)方式。

3.編程實(shí)現(xiàn)ARM的四路I/O通道,實(shí)現(xiàn)環(huán)形脈沖分配用于控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng),通過(guò)A/D旋鈕控制步進(jìn)電機(jī)的轉(zhuǎn)角。

4.通過(guò)鍵盤控制直流電機(jī)與步進(jìn)電機(jī)的切換。5.設(shè)置并啟動(dòng)定時(shí)器。

6.設(shè)置中斷,編寫定時(shí)器中斷服務(wù)程序,對(duì)中斷次數(shù)進(jìn)行計(jì)數(shù)并在LED上顯示結(jié)果。

4.5 實(shí)驗(yàn)設(shè)計(jì)與實(shí)驗(yàn)步驟

1.添加并打開(kāi)工程。

2.進(jìn)行直流電機(jī)初始化設(shè)置和代碼編寫。3.進(jìn)行步進(jìn)電機(jī)初始化設(shè)置和代碼編寫。

4.對(duì)Timer3編程,編寫定時(shí)器中斷服務(wù)程序,完成對(duì)中斷次數(shù)的計(jì)數(shù)。5.編寫LED計(jì)數(shù)顯示函數(shù),使LED能正確計(jì)數(shù)并顯示0-9999。6.編寫中斷初始化函數(shù)和中斷響應(yīng)函數(shù)。7.終端下載測(cè)試。

4.6 實(shí)驗(yàn)過(guò)程與分析 1.對(duì)直流電機(jī)進(jìn)行編程和測(cè)試,掌握轉(zhuǎn)速和旋轉(zhuǎn)方向的設(shè)定方法。

2.對(duì)步進(jìn)電機(jī)進(jìn)行編程和測(cè)試,掌握ARM的四路I/O通道,實(shí)現(xiàn)環(huán)形脈沖分配用于控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng),通過(guò)A/D旋鈕控制步進(jìn)電機(jī)的轉(zhuǎn)角。

3.對(duì)主函數(shù)進(jìn)行編程,用鍵盤響應(yīng)直流電機(jī)與步進(jìn)電機(jī)的切換控制。

4.掌握中斷相關(guān)語(yǔ)句的應(yīng)用,弄清定義的中斷向量、中斷向量號(hào),編寫中斷響應(yīng)函數(shù),并完成中斷響應(yīng)控制。

4.7 實(shí)驗(yàn)結(jié)果總結(jié)

實(shí)現(xiàn)了直流電機(jī)與步進(jìn)電機(jī)的基本設(shè)置和控制,可以通過(guò)鍵盤控制電機(jī)之間的切換。完成了中斷的響應(yīng)和定時(shí)中斷。當(dāng)對(duì)其中一個(gè)旋鈕轉(zhuǎn)動(dòng)時(shí),就可以由直流電機(jī)轉(zhuǎn)換成步進(jìn)電機(jī)的轉(zhuǎn)換,達(dá)到實(shí)驗(yàn)的效果。

4.8 心得體會(huì)

通過(guò)本次實(shí)驗(yàn),我了解了直流電機(jī)和步進(jìn)電機(jī)的工作原理,同時(shí)也知曉了電機(jī)間的轉(zhuǎn)換過(guò)程,了解其中的道理內(nèi)涵,熟悉了ARM自帶的A/D轉(zhuǎn)換器的工作原理及編程方法,了解了中斷的意義和實(shí)現(xiàn)方法,實(shí)現(xiàn)了簡(jiǎn)單了中斷處理程序。同時(shí)我也收獲了很多關(guān)于ARM處理機(jī)的相關(guān)知識(shí)。

5.實(shí)驗(yàn)五

5.1 實(shí)驗(yàn)名稱

觸摸屏驅(qū)動(dòng)實(shí)驗(yàn)

5.2 實(shí)驗(yàn)?zāi)康?/p>

1.了解觸摸屏的基本概念與原理。

2.理解觸摸屏與LCD的關(guān)系。3.編程實(shí)現(xiàn)對(duì)觸摸屏的控制。

4.熟悉用 ARM 內(nèi)置的 LCD控制器驅(qū)動(dòng) LCD。

5.3 實(shí)驗(yàn)環(huán)境

硬件:ARM 嵌入式開(kāi)發(fā)平臺(tái)、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開(kāi)發(fā) 環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。

5.4 實(shí)驗(yàn)內(nèi)容及要求

1.了解觸摸屏基本原理,理解對(duì)觸摸屏進(jìn)行輸出標(biāo)定、與LCD顯示器配合的過(guò)程。2.通過(guò)編程實(shí)現(xiàn)觸摸兩點(diǎn)自動(dòng)在兩點(diǎn)間劃直線。3.通過(guò)編程實(shí)現(xiàn)在觸摸屏上動(dòng)態(tài)畫出曲線。5.5 實(shí)驗(yàn)設(shè)計(jì)與實(shí)驗(yàn)步驟

1.添加并打開(kāi)工程。

2.在頭文件中定義宏和常量及驅(qū)動(dòng)函數(shù)。

#define ADS7843_CTRL_START 0x80 #define ADS7843_GET_X 0x50 #define ADS7843_GET_Y 0x10 #define ADS7843_CTRL_12MODE 0x0 #define ADS7843_CTRL_8MODE 0x8 #define ADS7843_CTRL_SER 0x4 #define ADS7843_CTRL_DFR 0x0 #define ADS7843_CTRL_DISPWD 0x3 // Disable power down #define ADS7843_CTRL_ENPWD 0x0 // enable power down #define ADS7843_PIN_CS(1<<6)//GPF6 #define ADS7843_PIN_PEN(1<<5)//GPG5 /////////觸摸屏動(dòng)作//////// #define TCHSCR_ACTION_NULL 0 #define TCHSCR_ACTION_CLICK 1 //觸摸屏單擊 #define TCHSCR_ACTION_DBCLICK 2 //觸摸屏雙擊 #define TCHSCR_ACTION_DOWN 3 //觸摸屏按下 #define TCHSCR_ACTION_UP 4 //觸摸屏抬起 #define TCHSCR_ACTION_MOVE 5 //觸摸屏移動(dòng)

#define TCHSCR_IsPenNotDown()(rPDATG&ADS7843_PIN_PEN)(ADS7843_CTRL_START|ADS7843_GET_X|ADS7843_CTRL_12MODE |ADS7843_CTRL_DFR|ADS7843_CTRL_ENPWD)//采樣x 軸電壓值,數(shù)據(jù)為12 位,參考電壓輸入模式為差分模式,允許省電模式

#defineADS7843_CMD_Y(ADS7843_CTRL_START|ADS7843_GET_Y|ADS7843_CTRL_12MODE |ADS7843_CTRL_DFR|ADS7843_CTRL_ENPWD)int TchScr_Xmax=1840,TchScr_Xmin=176, TchScr_Ymax=195,TchScr_Ymin=1910;//觸摸屏返回電壓值范圍 #defineADS7843_CMD_X 3.校準(zhǔn)觸摸屏坐標(biāo),進(jìn)行坐標(biāo)轉(zhuǎn)換。

4.實(shí)現(xiàn)觸屏取點(diǎn)并顯示功能。

將觸摸動(dòng)作及觸摸點(diǎn)坐標(biāo)在超級(jí)終端上顯示出來(lái)。5.實(shí)現(xiàn)兩點(diǎn)間自動(dòng)劃線功能。6.實(shí)現(xiàn)觸摸屏動(dòng)態(tài)劃線功能。

可以使用TchScr_GetScrXY()函數(shù)(第三個(gè)參數(shù)為0)來(lái)獲得液晶屏的x、y 方向的電壓

范圍,分別點(diǎn)觸摸屏有效面積的左上角和右下角,得到下列參數(shù):

TchScr_Xmax=1840;TchScr_Xmin=176;TchScr_Ymax=195;TchScr_Ymin=1910;//此數(shù)值僅供參考,請(qǐng)以實(shí)際校對(duì)為準(zhǔn)

5.6 實(shí)驗(yàn)過(guò)程與分析 1.在定義觸屏響應(yīng)功能的函數(shù)中對(duì)點(diǎn)擊觸屏進(jìn)行響應(yīng)函數(shù)的修改,在其中添加修改點(diǎn)顏色的函數(shù),修改得到的觸摸點(diǎn)的顏色,并顯示在LCD上。

2.獲取第一個(gè)點(diǎn)坐標(biāo)并儲(chǔ)存,獲取第二個(gè)點(diǎn)坐標(biāo)并儲(chǔ)存,由編寫的劃線函數(shù)取得儲(chǔ)存的兩點(diǎn)間直線上所有點(diǎn)的坐標(biāo),并對(duì)其改變顏色,顯示在LCD上,即完成劃直線功能。

3.將劃線函數(shù)應(yīng)用到響應(yīng)觸屏移動(dòng)消息的函數(shù)下,即可對(duì)連續(xù)獲得的觸摸坐標(biāo)進(jìn)行連續(xù)的畫短直線,連接成曲線,完成動(dòng)態(tài)劃線功能。

5.7 實(shí)驗(yàn)結(jié)果總結(jié)

了解了觸摸屏響應(yīng)動(dòng)作消息的函數(shù)的工作原理,通過(guò)修改實(shí)現(xiàn)了觸摸屏響應(yīng)不同動(dòng)作進(jìn)行畫點(diǎn)、劃線、動(dòng)態(tài)劃線的功能。驗(yàn)證觸摸屏的靈敏度的實(shí)驗(yàn)。

5.8 心得體會(huì)

通過(guò)這次實(shí)驗(yàn),我基本掌握了通過(guò)編程驅(qū)動(dòng)觸摸屏以及觸摸屏響應(yīng)時(shí)間,實(shí)現(xiàn)了觸摸屏對(duì)不同動(dòng)作消息的響應(yīng)。同時(shí)也知曉了在觸摸屏上的描點(diǎn)畫線的實(shí)現(xiàn),但是由于不知名的原因,描點(diǎn)畫線的誤差較大,位置偏差較大,同時(shí)觸摸屏有時(shí)會(huì)不靈敏,出現(xiàn)時(shí)好時(shí)壞的現(xiàn)象,但是由于我們的辛勤鉆研,最終克服了這個(gè)困難,實(shí)現(xiàn)了最后的觸摸屏的實(shí)現(xiàn)。

6.實(shí)驗(yàn)六

6.1 實(shí)驗(yàn)名稱

UCOS-Ⅱ在ARM微處理器上的裁剪

6.2 實(shí)驗(yàn)?zāi)康?/p>

1.了解UCOS-Ⅱ內(nèi)核的主要結(jié)構(gòu)。

2.掌握UCOS-Ⅱ裁剪的基本原理與嵌入式編程實(shí)現(xiàn)方法。3.學(xué)習(xí)如何根據(jù)具體情況對(duì)UCOS-Ⅱ操作系統(tǒng)進(jìn)行裁剪。

4.通過(guò)對(duì)UCOS-Ⅱ配置文件(OS_CFG.H)中相關(guān)的配置常量進(jìn)行設(shè)置,實(shí)現(xiàn)對(duì)UCOS-Ⅱ的裁剪。

6.3 實(shí)驗(yàn)環(huán)境

硬件:ARM 嵌入式開(kāi)發(fā)平臺(tái)、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開(kāi)發(fā) 環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。

6.4 實(shí)驗(yàn)內(nèi)容及要求

對(duì)UCOS-Ⅱ內(nèi)核進(jìn)行裁剪并移植到ARM7微處理器上。

6.5 實(shí)驗(yàn)設(shè)計(jì)與實(shí)驗(yàn)步驟 1.按照要求,載入STARTUP目錄下文件,完成系統(tǒng)初始化、環(huán)境配置。2.載入U(xiǎn)COS-Ⅱ的全部源碼,與處理器架構(gòu)相關(guān)的文件位于arch目錄下。3.在os_cpu.h中編寫與處理器和編譯器相關(guān)的代碼。

4.編寫os_cpu_c.c等6個(gè)與操作系統(tǒng)相關(guān)的函數(shù)。5.編寫os_cpu.asm等4個(gè)與處理器相關(guān)的函數(shù)。

6.6 實(shí)驗(yàn)過(guò)程與分析

按照實(shí)驗(yàn)步驟進(jìn)行,得到了需要的系統(tǒng)。

6.7 實(shí)驗(yàn)結(jié)果總結(jié)

按照要求進(jìn)行了裁剪,得到了滿足需要又緊湊的應(yīng)用軟件系統(tǒng)。

6.8 心得體會(huì)

通過(guò)本次實(shí)驗(yàn),我了解了UCOS-Ⅱ內(nèi)核的主要結(jié)構(gòu),掌握UCOS-Ⅱ裁剪的基本原理與嵌入式編程實(shí)現(xiàn)方法,學(xué)會(huì)了如何根據(jù)具體情況對(duì)UCOS-Ⅱ操作系統(tǒng)進(jìn)行裁剪。

7.實(shí)驗(yàn)七

7.1 實(shí)驗(yàn)名稱

UCOS-Ⅱ在ARM微處理器上的移植和編譯

7.2 實(shí)驗(yàn)?zāi)康?/p>

1.了解UCOS-Ⅱ內(nèi)核的主要結(jié)構(gòu)。

2.掌握將UCOS-Ⅱ內(nèi)核移植到ARM7處理器上的基本方法。

7.3 實(shí)驗(yàn)環(huán)境

硬件:ARM 嵌入式開(kāi)發(fā)平臺(tái)、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開(kāi)發(fā) 環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。

7.4 實(shí)驗(yàn)內(nèi)容及要求

1.將UCOS-Ⅱ內(nèi)核進(jìn)行移植到ARM7微處理器上。

2.編寫兩個(gè)簡(jiǎn)單任務(wù),在超級(jí)終端上觀察兩個(gè)任務(wù)的切換。

7.5 實(shí)驗(yàn)設(shè)計(jì)與實(shí)驗(yàn)步驟

1.該實(shí)驗(yàn)的文件分為兩類,其一是 STARTUP 目錄下的系統(tǒng)初始化、配置等文件,其二是 UCOS-Ⅱ的全部源碼,arch 目錄下的 3 個(gè)文件是和處理器架構(gòu)相關(guān)的。

2.設(shè)置 os_cpu.h 中與處理器和編譯器相關(guān)的代碼。

3.用 C 語(yǔ)言編寫 6 個(gè)操作系統(tǒng)相關(guān)的函數(shù)(OS_CPU_C.C)。4.用匯編語(yǔ)言編寫 4 個(gè)與處理器相關(guān)的函數(shù)(OS_CPU.ASM)。5.編寫一個(gè)簡(jiǎn)單的多任務(wù)程序來(lái)測(cè)試一下移植是否成功。6.編譯并下載移植后的 UCOS-Ⅱ。

7.6 實(shí)驗(yàn)過(guò)程與分析

1.按照實(shí)驗(yàn)步驟進(jìn)行,將μC/OS-II 內(nèi)核移植到了ARM7 微處理器上。2編寫了兩個(gè)簡(jiǎn)單任務(wù),在超級(jí)終端上觀察兩個(gè)任務(wù)的切換。

7.7 實(shí)驗(yàn)結(jié)果總結(jié)

將μC/OS-II 內(nèi)核順利移植到了ARM7 微處理器上。

7.8 心得體會(huì)

通過(guò)本次實(shí)驗(yàn),使我更加了解了μC/OS-II 內(nèi)核的主要結(jié)構(gòu),掌握了ARM的C語(yǔ)言和匯編語(yǔ)言的編程方法,了解了ARM7處理器結(jié)構(gòu),掌握了將μC/OS-II 內(nèi)核移植到ARM 7 處理器上的基本原理與嵌入式編程實(shí)現(xiàn)方法。

8.實(shí)驗(yàn)八

8.1 實(shí)驗(yàn)名稱

綜合實(shí)驗(yàn)

8.2 實(shí)驗(yàn)?zāi)康?/p>

對(duì)前七次實(shí)驗(yàn)進(jìn)行總結(jié),應(yīng)用之前所學(xué)的知識(shí),將前幾次實(shí)驗(yàn)內(nèi)容結(jié)合起來(lái),完成鍵盤,LED,觸摸屏,直流電機(jī),步進(jìn)電機(jī)各種功能的組合。實(shí)現(xiàn)一個(gè)較為全面的功能結(jié)構(gòu)。

8.3 實(shí)驗(yàn)環(huán)境

硬件:ARM 嵌入式開(kāi)發(fā)平臺(tái)、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開(kāi)發(fā) 環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。

8.4 實(shí)驗(yàn)內(nèi)容及要求

對(duì)前七次實(shí)驗(yàn)進(jìn)行總結(jié),應(yīng)用之前所學(xué)的知識(shí),完成自擬的嵌入式系統(tǒng),要求綜合前期基礎(chǔ)實(shí)驗(yàn)的各種功能。

8.5 實(shí)驗(yàn)設(shè)計(jì)與實(shí)驗(yàn)步驟

1.添加并打開(kāi)工程。2.進(jìn)行LCD設(shè)計(jì),在LCD顯示屏輸出文本。

3.進(jìn)行LED及鍵盤設(shè)計(jì),完成LED輸出顯示功能和鍵盤輸入功能。4.進(jìn)行電機(jī)控制設(shè)計(jì),完成鍵盤控制電機(jī)轉(zhuǎn)動(dòng)功能。5.進(jìn)行中斷設(shè)計(jì),完成定時(shí)中斷功能。

6.進(jìn)行觸摸屏設(shè)計(jì),完成觸摸屏感應(yīng)和劃線功能。7.進(jìn)行裁剪和移植功能設(shè)計(jì)和完成。

8.6 實(shí)驗(yàn)過(guò)程與分析

1.完成LCD顯示功能,在LCD顯示屏上輸出文本:“Hello World!”。2.進(jìn)入界面觸屏控制選擇功能,實(shí)現(xiàn)觸屏選擇功能。

3.自定義四種種功能,第一為電機(jī)控制,從鍵盤讀取命令,并將功能編號(hào)顯示在LED上,LED顯示的是計(jì)數(shù)的數(shù)據(jù),同時(shí)旋轉(zhuǎn)按鈕完成電機(jī)轉(zhuǎn)速的控制選擇。

4.第三種功能為劃線,功能編號(hào)顯示在LED高四位上,同時(shí)LCD屏幕清屏,為劃線功能做準(zhǔn)備,可以實(shí)現(xiàn)劃線功能。

5.第四種功能為定時(shí)中斷,當(dāng)由鍵盤控制時(shí),LED顯示數(shù)值清零,實(shí)現(xiàn)了中斷。6.實(shí)現(xiàn)裁剪與移植功能。

8.7 實(shí)驗(yàn)結(jié)果總結(jié)

完成了各種基本功能,并通過(guò)自擬的系統(tǒng)將各種功能整合起來(lái),完成了一個(gè)小的嵌入式系統(tǒng),對(duì)前七次的功能有了更深入的了解。通過(guò)LED的計(jì)數(shù),當(dāng)在計(jì)數(shù)值在前30秒之內(nèi),由鍵盤控制LED的數(shù)值及顯示,按鍵盤上的某一個(gè)按鍵,實(shí)現(xiàn)對(duì)LED上的數(shù)值清零,后30秒由觸摸屏控制清零,并且在前30秒之內(nèi),旋轉(zhuǎn)按鈕,實(shí)現(xiàn)對(duì)直流電機(jī)的運(yùn)轉(zhuǎn),并且到步進(jìn)電機(jī)的轉(zhuǎn)換。

8.8 心得體會(huì)

通過(guò)這次實(shí)驗(yàn),我更加深刻地掌握了前幾次實(shí)驗(yàn)中的基本功能的實(shí)現(xiàn)方法,并且把幾種功能聯(lián)合在一起,實(shí)現(xiàn)一些功能,把LED 顯示屏,LCD觸摸屏,鍵盤,直流電機(jī),步進(jìn)電機(jī)等等設(shè)備聯(lián)合在一起,對(duì)該實(shí)驗(yàn)有一定的幫助與提高,而我和我的隊(duì)友也對(duì)嵌入式系統(tǒng)有了更深入的了解,在此期間,也學(xué)習(xí)了關(guān)于ARM處理器的開(kāi)發(fā)與實(shí)踐,了解了關(guān)于手機(jī)的嵌入式設(shè)備的產(chǎn)生過(guò)程,我也深深的對(duì)此充滿了興趣,對(duì)未來(lái)的嵌入式課程設(shè)計(jì)奠定了深厚的基礎(chǔ),可是令我遺憾的是,我和隊(duì)員的水平所限,沒(méi)有完成中斷優(yōu)先級(jí)的控制。本來(lái)想完成更多的功能,可是最后由于時(shí)間緊迫,也有一些其他的事情來(lái)分神分心,所以就只能完成這些,但是在未來(lái)的幾周內(nèi),嵌入式課程設(shè)計(jì)也給了我們很大的空間去做未完成的事情。我相信我們會(huì)做的更加完美,功能更強(qiáng)大,用于未來(lái)的生活中去實(shí)踐。

第四篇:《嵌入式系統(tǒng)設(shè)計(jì)》教學(xué)大綱

《嵌入式系統(tǒng)設(shè)計(jì)》課程教學(xué)大綱

嵌入式系統(tǒng)設(shè)計(jì)(Design of Embedded Systems)

一、課程教學(xué)目的和基本要求

教學(xué)目的:

嵌入式系統(tǒng)技術(shù)已被廣泛地應(yīng)用于工業(yè)控制系統(tǒng)、信息家電、通信設(shè)備、醫(yī)療儀器、智能儀器儀表等眾多領(lǐng)域。如手機(jī)、PDA、MP3、手持設(shè)備、智能電話、機(jī)頂盒等,可以說(shuō)嵌入式系統(tǒng)無(wú)處不在。本課程講述當(dāng)前主流的嵌入式處理器—ARM的微處理器和實(shí)時(shí)操作系統(tǒng)μC/OS,介紹嵌入式系統(tǒng)的基本原理和應(yīng)用及設(shè)計(jì)方法。通過(guò)本課程的學(xué)習(xí),著重培養(yǎng)學(xué)生的實(shí)際動(dòng)手能力,使學(xué)生掌握ARM的系統(tǒng)結(jié)構(gòu)、指令系統(tǒng)、程序設(shè)計(jì)方法、系統(tǒng)擴(kuò)展方法、應(yīng)用及開(kāi)發(fā)技術(shù)等。使學(xué)生在工作中具有利用嵌入式系統(tǒng)開(kāi)發(fā)產(chǎn)品和解決實(shí)際問(wèn)題的基本能力。

基本要求:

1、掌握嵌入式系統(tǒng)技術(shù)的基本原理。

2、了解并掌握ARM的系統(tǒng)結(jié)構(gòu)、指令系統(tǒng)、程序設(shè)計(jì)方法、系統(tǒng)擴(kuò)展方法、應(yīng)用及開(kāi)發(fā)技術(shù)等。

3、比較熟練地用ADS進(jìn)行ARM實(shí)驗(yàn)箱的編程及調(diào)試。

4、了解并掌握實(shí)時(shí)操作系統(tǒng)μC/OS,并學(xué)會(huì)用μC/OS開(kāi)發(fā)小型應(yīng)用系統(tǒng)。

二、先修課程及本課程總學(xué)時(shí)

先修課程:C程序設(shè)計(jì)語(yǔ)言、單片機(jī)原理 本課程總學(xué)時(shí):36

三、課程章節(jié)及各章節(jié)學(xué)時(shí)安排

第一章 嵌入式系統(tǒng)概述(2學(xué)時(shí))

第二章 嵌入式系統(tǒng)硬件基礎(chǔ)(2學(xué)時(shí))

第三章 設(shè)計(jì)方法及ADS集成開(kāi)發(fā)環(huán)境(4學(xué)時(shí))

第一節(jié) 嵌入式系統(tǒng)的設(shè)計(jì)方法(2學(xué)時(shí))第二節(jié) ADS集成開(kāi)發(fā)環(huán)境(2學(xué)時(shí))第四章 ARM7體系結(jié)構(gòu)(4學(xué)時(shí))

第一節(jié)ARM7體系結(jié)構(gòu)介紹(2學(xué)時(shí))第二節(jié)ARM7TDMI(-S)指令集簡(jiǎn)介。(2學(xué)時(shí))第五章 ARM指令集(8學(xué)時(shí))

第一節(jié) ARM處理器尋址方式。(2學(xué)時(shí))第二節(jié)ARM指令集。(2學(xué)時(shí))第三節(jié)ARM匯編程序設(shè)計(jì)。(2學(xué)時(shí))第四節(jié)C與匯編混合編程。(2學(xué)時(shí))第六章 硬件結(jié)構(gòu)與功能(12學(xué)時(shí))第一節(jié) LPC2106/2105/2104結(jié)構(gòu)(2學(xué)時(shí))第二節(jié) GPIO及引腳連接模塊。(2學(xué)時(shí))

第三節(jié) UART0和UART1、I2C接口、SPI接口。(2學(xué)時(shí))第四節(jié) 定時(shí)器0和定時(shí)器1。(2學(xué)時(shí))第五節(jié) 脈寬調(diào)制器(PWM)。(2學(xué)時(shí))

第六節(jié) 看門狗及Flash存儲(chǔ)器系統(tǒng)和編程。(2學(xué)時(shí))第七章 μC/0S-II程序設(shè)計(jì)(4學(xué)時(shí))

第一節(jié) μC/0S-II簡(jiǎn)介及移植(2學(xué)時(shí))第二節(jié) 移植μC/0S-II。(2學(xué)時(shí))

四、課程主要內(nèi)容

第一章 嵌入式系統(tǒng)概述(2學(xué)時(shí))

1、嵌入式系統(tǒng)簡(jiǎn)介(包括什么是嵌入式系統(tǒng),嵌入式系統(tǒng)的特點(diǎn),嵌入式系統(tǒng)的分類)。

2、嵌入式系統(tǒng)的應(yīng)用領(lǐng)域。

3、嵌入式系統(tǒng)的現(xiàn)狀和發(fā)展趨勢(shì)。

4、嵌入式微處理器和嵌入式操作系統(tǒng)。

5、嵌入式系統(tǒng)中的一些重要概念。難點(diǎn):什么是嵌入式系統(tǒng)。

第二章 嵌入式系統(tǒng)硬件基礎(chǔ)(2學(xué)時(shí))

1、嵌入式系統(tǒng)的總體結(jié)構(gòu)。

2、與嵌入式系統(tǒng)相關(guān)的硬件知識(shí)。難點(diǎn):總體結(jié)構(gòu)。

第三章 設(shè)計(jì)方法及ADS集成開(kāi)發(fā)環(huán)境(4學(xué)時(shí))第一節(jié) 嵌入式系統(tǒng)的設(shè)計(jì)方法

包括嵌入式系統(tǒng)的設(shè)計(jì)流程,嵌入式系統(tǒng)的一般設(shè)計(jì)方法,嵌入式系統(tǒng)的硬件/軟件協(xié)同設(shè)計(jì)技術(shù)。第二節(jié) ADS集成開(kāi)發(fā)環(huán)境

1、ADS 1.2 集成開(kāi)發(fā)環(huán)境的組成

2、工程的編輯

3、工程的調(diào)試

4、仿真器的安裝與應(yīng)用 難點(diǎn):調(diào)試、仿真器。

第四章 ARM7體系結(jié)構(gòu)(4學(xué)時(shí))第一節(jié)ARM7體系結(jié)構(gòu)介紹

1、處理器模式。

2、內(nèi)部寄存器。

3、程序狀態(tài)寄存器。

4、異常。

第二節(jié)ARM7TDMI(-S)指令集簡(jiǎn)介。難點(diǎn):異常。

第五章 ARM指令集(8學(xué)時(shí))第一節(jié) ARM處理器尋址方式。第二節(jié)ARM指令集。

第三節(jié)ARM匯編程序設(shè)計(jì)。第四節(jié)C與匯編混合編程。難點(diǎn):ARM匯編程序設(shè)計(jì)。

第六章 硬件結(jié)構(gòu)與功能(12學(xué)時(shí))第一節(jié) LPC2106/2105/2104結(jié)構(gòu)

1、存儲(chǔ)器尋址。

2、系統(tǒng)控制模塊。

3、存儲(chǔ)器加速模塊。

4、向量中斷控制器。

第二節(jié) GPIO及引腳連接模塊。

第三節(jié) UART0和UART1、I2C接口、SPI接口。第四節(jié) 定時(shí)器0和定時(shí)器1。第五節(jié) 脈寬調(diào)制器(PWM)。

第六節(jié) 看門狗及Flash存儲(chǔ)器系統(tǒng)和編程。

難點(diǎn):存儲(chǔ)器重新映射,編程實(shí)現(xiàn)功能部件的初始化和控制。本章實(shí)驗(yàn):LPC2106/2105/2104功能部件基礎(chǔ)實(shí)驗(yàn)。

第七章 μC/0S-II程序設(shè)計(jì)(4學(xué)時(shí))第一節(jié) μC/0S-II簡(jiǎn)介及移植

1、移植規(guī)則。

2、編寫LPC2106/2105/2104的啟動(dòng)代碼。第二節(jié) 移植μC/0S-II。難點(diǎn):移植μC/0S-II。本章實(shí)驗(yàn):學(xué)習(xí)移植μC/0S-II。

五、教材及主要參考書

教材:

《嵌入式系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)》,馬文華,科學(xué)出版社,2006年

主要參考書:

[1] 田苗苗.嵌入式控制系統(tǒng).北京航空航天大學(xué)出版社,2002年 [2] 呂 駿 譯.嵌入式系統(tǒng)設(shè)計(jì).電子工業(yè)出版社,2002年

[3] 周立功等.ARM微控制器基礎(chǔ)與實(shí)戰(zhàn).北京航空航天大學(xué)出版社,2003年

[4] 李駒光等.ARM應(yīng)用系統(tǒng)開(kāi)發(fā)祥解.清華大學(xué)出版社,2003年

[5] 劭貝貝譯.uCOS-II-源代碼公開(kāi)的實(shí)時(shí)嵌入式操作系統(tǒng).中國(guó)電力出版社,2001年 [6] 田苗苗.嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開(kāi)發(fā).清華大學(xué)出版社,2002年 [7] 袁勤勇等譯.嵌入式系統(tǒng)構(gòu)件.機(jī)械工業(yè)出版社,2002年 [8] 田苗苗.《實(shí)用嵌入式系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)—基于ARM微處理器與μCOS-II實(shí)時(shí)操作系統(tǒng)》(第二版),清華大學(xué)出版社,2003.9 [9] 邵貝貝譯.《源代碼公開(kāi)的實(shí)時(shí)嵌入式操作系統(tǒng)——μCOS-II》,北京航空航天大學(xué)出版社,2003年

六、其他需要說(shuō)明的情況

1.采用多媒體教學(xué)。

2.實(shí)驗(yàn)課單列,每周2學(xué)時(shí)。

3.每周作業(yè)量2~3小時(shí),主要針對(duì)基本概念、開(kāi)發(fā)環(huán)境的操作和編程。

七、成績(jī)?cè)u(píng)定

1.理論考核

占60% 2.實(shí)踐考核

占40%(其中包括:實(shí)驗(yàn)、作業(yè)、課堂提問(wèn)、學(xué)生自行設(shè)計(jì)制作的作品)。

第五篇:《嵌入式系統(tǒng)設(shè)計(jì)》教案

嵌入式系統(tǒng)設(shè)計(jì)教案

課程總學(xué)時(shí): 32 講課學(xué)時(shí): 24 實(shí)驗(yàn)學(xué)時(shí): 8 授 課 人: 楊詞慧

南昌航空大學(xué)信息工程學(xué)院

目錄 嵌入式系統(tǒng)概述.......................................................................................................................1 1.1 嵌入式系統(tǒng)的基本概念...............................................................................................1 1.2 嵌入式系統(tǒng)的發(fā)展歷史...............................................................................................2 1.3 嵌入式系統(tǒng)的體系結(jié)構(gòu)...............................................................................................2 1.4 嵌入式處理器...............................................................................................................3 1.5 嵌入式操作系統(tǒng)...........................................................................................................4 1.6 嵌入式系統(tǒng)的應(yīng)用及發(fā)展趨勢(shì)...................................................................................7 ARM體系結(jié)構(gòu).........................................................................................................................8 2.1 ARM設(shè)計(jì)思想.............................................................................................................8 2.2 ARM體系結(jié)構(gòu)分析.....................................................................................................9 2.3 ARM處理器系列.......................................................................................................11 2.4 ARM處理器模式.......................................................................................................15 2.5 ARM體系的異常處理...............................................................................................16 2.6 ARM內(nèi)部寄存器.......................................................................................................18 2.7 ARM體系的存儲(chǔ)系統(tǒng)...............................................................................................19 ARM指令系統(tǒng)及程序設(shè)計(jì)基礎(chǔ)...........................................................................................21 3.1 ARM尋址方式...........................................................................................................21 3.2 ARM指令集...............................................................................................................24 3.3 Thumb指令集............................................................................................................33 3.4............................................................................................................................................35 3.5............................................................................................................................................35 3.6 嵌入式系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)過(guò)程.....................................................................................36 STM32微控制器...................................................................................................................37 4.1 STM32微控制器的性能指標(biāo)....................................................................................37 2 3 4

I 嵌入式系統(tǒng)概述

教學(xué)目的:使學(xué)生對(duì)嵌入式系統(tǒng)的基本概念和體系結(jié)構(gòu)、嵌入式處理器、嵌入式操作系統(tǒng)、嵌入式系統(tǒng)的歷史、應(yīng)用及發(fā)展趨勢(shì)有一定的了解。

教學(xué)重點(diǎn):嵌入式系統(tǒng)的基本概念、嵌入式處理器和嵌入式操作系統(tǒng)。教學(xué)難點(diǎn):嵌入式系統(tǒng)的體系結(jié)構(gòu)、嵌入式處理器。教學(xué)方法與教學(xué)手段:課堂講授,多媒體教學(xué)。教學(xué)時(shí)間:2課時(shí)。教學(xué)內(nèi)容

1.1 嵌入式系統(tǒng)的基本概念

(1)嵌入式系統(tǒng)的定義

先舉例說(shuō)明生活中的各種嵌入式系統(tǒng)設(shè)備,如iPhone、小米手機(jī)、洗衣機(jī)、電壓力鍋等。IEEE(國(guó)際電氣和電子工程師協(xié)會(huì))的定義:嵌入式系統(tǒng)是用于控制、監(jiān)視或者輔助操作機(jī)器和設(shè)備的裝置(Devices used to control, monitor, or assist the operation of equipment, machinery or plants)。

微機(jī)學(xué)會(huì)的定義:嵌入式系統(tǒng)是以嵌入式應(yīng)用為目的的計(jì)算機(jī)系統(tǒng),可分為系統(tǒng)級(jí)、板級(jí)和片級(jí)。a)系統(tǒng)級(jí):各種類型的工控機(jī)、PC104等模塊。b)板級(jí):各種類型的帶CPU的主板或OEM產(chǎn)品。c)片級(jí):各種以單片機(jī)、DSP、微處理器為核心的產(chǎn)品。

一般定義:嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪,對(duì)功能、可靠性、成本、體積、功耗要求嚴(yán)格的專用計(jì)算機(jī)系統(tǒng)。

(2)嵌入式系統(tǒng)的特點(diǎn) a)專用、軟硬件可剪裁配置。b)低功耗、高可靠性、高穩(wěn)定性。c)軟件代碼矮小精悍。d)代碼可固化。e)實(shí)時(shí)性。f)弱交互性。

g)軟件開(kāi)發(fā)通常需要專門的開(kāi)發(fā)工具、環(huán)境和方法。h)要求開(kāi)發(fā)、設(shè)計(jì)人員具有較高的技能。i)具有較長(zhǎng)的生命周期。(3)嵌入式系統(tǒng)的分類

按嵌入式微處理器的位數(shù)可分為:4位、8位、16位、32位和64位。按實(shí)時(shí)性能可分為:非實(shí)時(shí)系統(tǒng)和實(shí)時(shí)系統(tǒng)。

按軟件結(jié)構(gòu)可分為:嵌入式單線程系統(tǒng)和嵌入式事件驅(qū)動(dòng)系統(tǒng)。

按應(yīng)用領(lǐng)域可分為:信息家電類、消費(fèi)電子類、醫(yī)療電子類、移動(dòng)終端類、通信類、汽車電子類、工業(yè)控制類、航空電子類、軍事電子類等。

1.2 嵌入式系統(tǒng)的發(fā)展歷史

(1)以單芯片為核心的可編程控制器形成的系統(tǒng)

1971年11月,Intel推出Intel 4004。隨后出現(xiàn)Intel 8080/8085、8086、Motorola的6800、68000,Zilog的Z80、Z8000。

以微處理器為核心構(gòu)成的系統(tǒng)

單板機(jī):Intel的iSBC系列、Zilog的MCB等

將計(jì)算機(jī)做在一個(gè)芯片上,大部分應(yīng)用于專業(yè)性強(qiáng)的工業(yè)控制系統(tǒng)中,沒(méi)有操作系統(tǒng)的支持,系統(tǒng)結(jié)構(gòu)和功能相對(duì)單一,處理效率較低,存儲(chǔ)容量較小。

(2)以嵌入式CPU為基礎(chǔ)、以簡(jiǎn)單操作系統(tǒng)為核心的嵌入式系統(tǒng)

CPU種類繁多,通用性較弱;系統(tǒng)開(kāi)銷小,效率高;操作系統(tǒng)達(dá)到一定的兼容性和擴(kuò)展性;應(yīng)用軟件較專業(yè)化,用戶界面不夠友好。

(3)以嵌入式操作系統(tǒng)為標(biāo)志的嵌入式系統(tǒng)

嵌入式操作系統(tǒng)可運(yùn)行于各種不同類型的微處理器上,兼容性好;操作系統(tǒng)內(nèi)核小,效率高;具備文件和目錄管理,支持多任務(wù)、網(wǎng)絡(luò)應(yīng)用,具備圖形窗口和用戶界面;有大量的應(yīng)用程序接口API。

(4)以Internet為標(biāo)志的嵌入式系統(tǒng) 嵌入式設(shè)備與Internet的結(jié)合。

1.3 嵌入式系統(tǒng)的體系結(jié)構(gòu)

(1)體系結(jié)構(gòu)

(2)硬件層

? 嵌入式處理器:ARM、DSP、FPGA ? 存儲(chǔ)器系統(tǒng):ROM、FLASH、SDRAM ? 中斷控制器、DMAC、定時(shí)器/計(jì)數(shù)器、UART、USB控制器、LCD控制器等 ? I/O接口:USB、I2C、SPI、CAN等

(3)中間層

? 硬件抽象層(Hardware Abstraction Layer, HAL)。位于操作系統(tǒng)內(nèi)核與硬件電路之間的接口層,隱藏硬件接口細(xì)節(jié)。

? 板級(jí)支持包(Board Support Package, BSP)。為上層的驅(qū)動(dòng)程序提供訪問(wèn)硬件設(shè)備寄存器的函數(shù)包。? 設(shè)備驅(qū)動(dòng)程序

1.4 嵌入式處理器

(1)嵌入式處理器的分類

中高端的嵌入式微處理器(Embedded Micro-Processor Unit, EMPU)低端的微控制器(Microcontroller Unit, MCU)DSP處理器(Digital Signal Processor, DSP)高度集成的片上系統(tǒng)(System on Chip, SoC)(2)嵌入式微處理器

由通用計(jì)算機(jī)中的CPU演變而來(lái),只保留與嵌入式應(yīng)用緊密相關(guān)的功能硬件,在工作溫度、抗電磁干擾、可靠性、功耗等方面做了各種增強(qiáng)。

主要的嵌入式處理器類型:ARM、MIPS、PowerPC、68000系列等。特點(diǎn)

a)在設(shè)計(jì)中考慮低功耗。

b)采用可擴(kuò)展的處理器結(jié)構(gòu)。處理器內(nèi)部留有很多擴(kuò)展接口。c)具有很強(qiáng)的存儲(chǔ)區(qū)保護(hù)功能。d)提供豐富的調(diào)試功能。

e)對(duì)實(shí)時(shí)任務(wù)具有很強(qiáng)的支持能力。(3)微控制器

俗稱單片機(jī),將整個(gè)計(jì)算機(jī)系統(tǒng)集成到一塊芯片中。

WatchWatchdogdogGPIO/計(jì)數(shù)GPIOUARTUART定時(shí)定時(shí)/計(jì)數(shù)A/DA/DD/A器D/A器2CCANCANII2CSPISPIUSBUSBCPUCPUSRAMSRAM核心部分FlashFlash8位單片機(jī)示意圖以一種微處理器為核心,芯片內(nèi)部集成Flash、RAM、總線邏輯、定時(shí)器/計(jì)數(shù)器、I/O口、串行口、PWM、A/D、D/A等。

最早的單片機(jī): 1976年,Intel的8048,Motorola的68HC05、Zilog公司的Z80.(4)DSP處理器

對(duì)系統(tǒng)結(jié)構(gòu)和指令進(jìn)行了特殊設(shè)計(jì),使其適合DSP算法 高效乘累加運(yùn)算、超標(biāo)量操作、指令流水線 高效數(shù)據(jù)存取、硬件重復(fù)循環(huán) 確定性操作(程序執(zhí)行時(shí)間可預(yù)測(cè))應(yīng)用場(chǎng)合:音視頻編解碼、數(shù)字濾波、FFT等(5)片上系統(tǒng)

將整個(gè)系統(tǒng)做在一個(gè)芯片上 優(yōu)點(diǎn)

a)通過(guò)改變內(nèi)部工作電壓,降低芯片功耗 b)減少芯片對(duì)外的引腳數(shù),簡(jiǎn)化制造過(guò)程

c)減少外圍驅(qū)動(dòng)接口單元及電路板之間的信號(hào)傳遞,加快微處理器數(shù)據(jù)處理的速度 d)內(nèi)嵌線路可避免信號(hào)傳遞時(shí)所造成的系統(tǒng)雜訊 聯(lián)發(fā)科推出28nm雙核處理器MT6572 a)代號(hào)武松,基于Cortex-A7架構(gòu) b)主頻為1.2GHz c)處理器上整合了Wi-Fi、FM收音機(jī)、GPS以及藍(lán)牙四種功能 d)支持500萬(wàn)像素?cái)z像頭(6)嵌入式處理器的發(fā)展趨勢(shì) a)內(nèi)部結(jié)構(gòu)

SoC設(shè)計(jì),與DSP、Flash、FPGA融合;性能更強(qiáng),集成更多的功能部件;雙核或多核結(jié)構(gòu) b)功耗更低 c)可靠性更高 d)支持ISP、ISD 1.5 嵌入式操作系統(tǒng)

(1)操作系統(tǒng)的概念及功能

操作系統(tǒng)。是一組計(jì)算機(jī)程序的集合,用來(lái)有效地控制和管理計(jì)算機(jī)的硬件和軟件資源,并為用戶提供方便的應(yīng)用接口。

功能:處理器管理;存儲(chǔ)器管理;設(shè)備管理;文件管理;用戶接口(2)操作系統(tǒng)的分類 按程序調(diào)度的方法分為

? 順序操作系統(tǒng)。只含一個(gè)運(yùn)行程序,獨(dú)占CPU時(shí)間,順序執(zhí)行。如DOS系統(tǒng)。? 分時(shí)操作系統(tǒng)。系統(tǒng)內(nèi)同時(shí)有多道程序運(yùn)行。如Unix系統(tǒng)。? 實(shí)時(shí)操作系統(tǒng)。

從應(yīng)用角度,嵌入式操作系統(tǒng)可分為 ? 面向低端信息家電

? 面向高端信息家電 ? 面向個(gè)人通信終端 ? 面向通信設(shè)備 ? 面向汽車電子 ? 面向工業(yè)控制

從實(shí)時(shí)性的角度,嵌入式操作系統(tǒng)可分為 ? 具有強(qiáng)實(shí)時(shí)特點(diǎn)的嵌入式操作系統(tǒng) ? 具有弱實(shí)時(shí)特點(diǎn)的嵌入式操作系統(tǒng) ? 沒(méi)有實(shí)時(shí)特點(diǎn)的嵌入式操作系統(tǒng)(3)實(shí)時(shí)操作系統(tǒng)(RTOS)

是具有實(shí)時(shí)性且能支持實(shí)時(shí)控制系統(tǒng)工作的操作系統(tǒng),首要任務(wù)是調(diào)度一切可利用的資源來(lái)完成控制任務(wù)。

對(duì)現(xiàn)場(chǎng)不停監(jiān)測(cè),一旦有事件發(fā)生能立即處理。與通用OS的區(qū)別:實(shí)時(shí)性,代碼尺寸小。一般包括以下幾個(gè)重要組成部分:

? 實(shí)時(shí)內(nèi)核:任務(wù)管理、定時(shí)器管理、存儲(chǔ)器管理、任務(wù)間通信與同步等。? 網(wǎng)絡(luò)組件 ? 文件系統(tǒng) ? 圖形用戶界面

IEEE的Unix委員會(huì)規(guī)定了實(shí)時(shí)操作系統(tǒng)須具備以下幾個(gè)特點(diǎn): ? 支持異步事件的響應(yīng)。? 中斷和調(diào)度任務(wù)的優(yōu)先機(jī)制。? 支持指令性計(jì)劃占式調(diào)度。? 支持同步。

(4)常見(jiàn)的嵌入式操作系統(tǒng) 嵌入式Linux ? 實(shí)時(shí)的嵌入式Linux:如RT-Linux、KURT-Linux等。RT-Linux將通常的Linux任務(wù)優(yōu)先級(jí)設(shè)為最低。

? 一般的嵌入式Linux:如μCLinux。? 開(kāi)源,內(nèi)核小、效率高,可定制 μC/OS和μC/OS-II ? μC/OS-II(MicroController Operating System)是由Jean J.Labrosse開(kāi)發(fā)的實(shí)時(shí)操作系統(tǒng)內(nèi)核。

? 已被移植到Intel、ARM、Motorola等公司的81種不同的處理器上。

? Labrosse用一年時(shí)間開(kāi)發(fā)了μC/OS實(shí)時(shí)操作系統(tǒng); 1992年在《Embedded System Programming》上 發(fā)表介紹文章,并公布源代碼;1993年寫了《μC/OS, The Real-Time Kernel》;書及源碼推動(dòng)了μC/OS-II的發(fā)展。

? μC/OS-II只是一個(gè)實(shí)時(shí)操作系統(tǒng)的內(nèi)核,全部核心代碼只有8.3 KB。? 只包含進(jìn)程調(diào)度、時(shí)鐘管理、內(nèi)存管理和進(jìn)程間的通信與同步等基本功能。Windows CE ? 多線程、完整優(yōu)先權(quán)、多任務(wù)的32位嵌入式操作系統(tǒng)。? 基本內(nèi)核大小至少為200KB。VxWorks ? 美國(guó)WindRiver公司于1983年設(shè)計(jì)

? 是目前嵌入式系統(tǒng)領(lǐng)域中使用最廣泛、市場(chǎng)占有率最高的系統(tǒng)。? 擁有良好的持續(xù)發(fā)展能力和高性能的內(nèi)核及友好的用戶開(kāi)發(fā)環(huán)境。

? 支持多種處理器,如ARM、x86、i960、SunSparc、MIPS RX000、PowerPC、StrongARM等。? 以良好的可靠性和實(shí)時(shí)性,廣泛應(yīng)用在通信、軍事、航空、航天等領(lǐng)域。

? 應(yīng)用案例:美國(guó)F-

16、FA-18戰(zhàn)斗機(jī),B-2隱形轟炸機(jī),“愛(ài)國(guó)者”導(dǎo)彈,1997年4月在火星登陸的火星探測(cè)器。Palm OS ? 32位嵌入式操作系統(tǒng),由3Com公司的Palm Computing部門開(kāi)發(fā)。

? 在掌上電腦和PDA市場(chǎng)上占有很大的市場(chǎng)份額,曾占據(jù)90%的PDA市場(chǎng)份額。? 2010年04月29日惠普12億美元收購(gòu)Palm QNX ? 一個(gè)實(shí)時(shí)、可擴(kuò)充的操作系統(tǒng)。

? 部分遵循POSIX(可移植操作系統(tǒng)接口)相關(guān)標(biāo)準(zhǔn)。

? 內(nèi)核僅提供4種服務(wù):進(jìn)程調(diào)度、進(jìn)程間通信、底層網(wǎng)絡(luò)通信和中斷處理。? 內(nèi)核非常小巧(QNX4.X約為12KB),運(yùn)行速度極快。iOS ? 蘋果推出,基于Darwin ? 最新:iOS8 Android ? Google開(kāi)發(fā)的基于Linux平臺(tái)的開(kāi)源手機(jī)操作系統(tǒng) Delta OS ? 是電子科技大學(xué)實(shí)時(shí)系統(tǒng)教研室和北京科銀京成技術(shù)有限公司聯(lián)合研制并開(kāi)發(fā)的全中文嵌入式操作系統(tǒng)。

? 絕大部分代碼由C語(yǔ)言編寫。

? 已成功應(yīng)用于通信、網(wǎng)絡(luò)、信息家電等多個(gè)應(yīng)用領(lǐng)域。pSOS ISI公司研發(fā)的產(chǎn)品。

模塊化、高性能、完全可擴(kuò)展。

1.6 嵌入式系統(tǒng)的應(yīng)用及發(fā)展趨勢(shì)

(1)嵌入式系統(tǒng)的應(yīng)用領(lǐng)域 ? 消費(fèi)電子領(lǐng)域 ? 通信網(wǎng)絡(luò)領(lǐng)域

? 工業(yè)控制領(lǐng)域、機(jī)器人領(lǐng)域 ? 交通管理與汽車電子領(lǐng)域 ? 國(guó)防與航空航天領(lǐng)域 ? 醫(yī)療儀器領(lǐng)域

(2)嵌入式系統(tǒng)的發(fā)展趨勢(shì)

? 小型化、智能化、網(wǎng)絡(luò)化、可視化 ? 多核技術(shù)的應(yīng)用 ? 低功耗、綠色環(huán)保

? 云計(jì)算、可重構(gòu)、虛擬化等技術(shù)被進(jìn)一步應(yīng)用到嵌入式系統(tǒng)中 ? 嵌入式系統(tǒng)軟件將逐漸PC化 ? 融合趨勢(shì)

? 微控制器MCU與SoC的結(jié)合 ? 微控制器MCU與DSP的結(jié)合 ? ARM與DSP的結(jié)合

? 微控制器MCU與CPLD/FPGA的結(jié)合 ? 安全性 ARM體系結(jié)構(gòu)

教學(xué)目的:使學(xué)生對(duì)ARM設(shè)計(jì)思想、ARM處理器系列、ARM體系結(jié)構(gòu)、ARM處理器模式、ARM內(nèi)部寄存器、ARM體系的存儲(chǔ)系統(tǒng)有一定的了解。

教學(xué)重點(diǎn):ARM設(shè)計(jì)思想、ARM體系結(jié)構(gòu)、ARM處理器模式、ARM內(nèi)部寄存器。教學(xué)難點(diǎn):ARM處理器模式、ARM內(nèi)部寄存器。教學(xué)方法與教學(xué)手段:課堂講授,多媒體教學(xué)。教學(xué)時(shí)間:4課時(shí)。教學(xué)內(nèi)容

2.1 ARM設(shè)計(jì)思想

(1)RISC 傳統(tǒng)的CISC(Complex Instruction Set Computing)指令集中,約20%指令占整個(gè)程序代碼的80%。RISC(Reduced Instruction Set Computing)是一種設(shè)計(jì)思想,其目標(biāo)是設(shè)計(jì)出一套能在高時(shí)鐘頻率下單周期執(zhí)行、簡(jiǎn)單而有效的指令集。

RISC設(shè)計(jì)重點(diǎn)在于降低硬件執(zhí)行指令的復(fù)雜度,而傳統(tǒng)的CISC更側(cè)重于硬件執(zhí)行指令的功能性,使CISC指令變得復(fù)雜。

(2)RISC設(shè)計(jì)思想的實(shí)現(xiàn)

? 指令集。減少了指令種類,指令只實(shí)現(xiàn)簡(jiǎn)單的功能,指令長(zhǎng)度固定。

? 流水線。指令的處理過(guò)程被拆分成幾個(gè)更小的、能夠被流水線并行執(zhí)行的單元。

? 寄存器。更多通用寄存器,可存數(shù)據(jù)和地址,可為所有數(shù)據(jù)操作提供快速的局部存儲(chǔ)訪問(wèn)。? load-store結(jié)構(gòu)。處理器只處理寄存器中數(shù)據(jù),用load和store指令完成寄存器和外存間的數(shù)據(jù)傳送

(3)ARM的設(shè)計(jì)思想 ? 較小的核。降低功耗

? 高的代碼密度??紤]成本和物理尺寸限制

? 較小的處理器內(nèi)核管芯(Die)面積。留給外設(shè)電路的空間較大 ? 硬件調(diào)試技術(shù)(4)ARM微處理器的特點(diǎn)

? 體積小,功耗低,成本低,性能高; ? 支持Thumb/ARM指令集,兼容8/16位器件;

? 大量使用寄存器,指令執(zhí)行速度更快; ? 大多數(shù)數(shù)據(jù)操作都在寄存器中完成; ? 尋址方式靈活簡(jiǎn)單,執(zhí)行效率高; ? 指令長(zhǎng)度固定。

2.2 ARM體系結(jié)構(gòu)分析

(1)包含典型 的RISC 體系結(jié)構(gòu)特征

? 統(tǒng)一寄存器文件加載/存儲(chǔ)體系結(jié)構(gòu),數(shù)據(jù)處理操作只針對(duì)寄存器內(nèi)容; ? 簡(jiǎn)單尋址模式,所有加載/存儲(chǔ)地址只通過(guò)寄存器內(nèi)容和指令字段確定。? 指令長(zhǎng)度固定,簡(jiǎn)化了指令譯碼。(2)還提供

? 可組合使用轉(zhuǎn)換與算術(shù)或邏輯運(yùn)算指令 ? 自動(dòng)遞增和自動(dòng)遞減尋址模式,可優(yōu)化程序循環(huán) ? 加載存儲(chǔ)多個(gè)指令以最大化數(shù)據(jù)吞吐量 ? 幾乎所有指令都采取條件執(zhí)行的方式(3)普林斯頓結(jié)構(gòu)和哈佛結(jié)構(gòu)

普林斯頓結(jié)構(gòu):也稱馮·諾伊曼結(jié)構(gòu),它將程序指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器合并在一起的存儲(chǔ)結(jié)構(gòu)。ARM7系列基于普林斯頓結(jié)構(gòu)。

哈佛結(jié)構(gòu):將程序指令存儲(chǔ)和數(shù)據(jù)存儲(chǔ)分開(kāi)的存儲(chǔ)結(jié)構(gòu)。ARM9系列之后都基于哈佛結(jié)構(gòu)。

(4)流水線

ARM7的三級(jí)流水線在執(zhí)行單元完成了大量的工作,執(zhí)行單元的工作往往占用多個(gè)時(shí)鐘周期,從而成為系統(tǒng)性能的瓶頸。

ARM9采用哈佛架構(gòu),避免了數(shù)據(jù)訪問(wèn)了取指的總路線沖突,采用五級(jí)流水線設(shè)計(jì)。

五級(jí)流水線技術(shù)把三級(jí)流水線中的執(zhí)行單元進(jìn)一步細(xì)化,減少了在每個(gè)時(shí)鐘周期內(nèi)必須完成的工

作量,進(jìn)而允許使用較高的時(shí)鐘頻率。

無(wú)論三級(jí)流水線還是五級(jí)流水線,在以下情況下都會(huì)發(fā)生阻塞: ? 多周期指令、跳轉(zhuǎn)分支指令 ? 中斷發(fā)生

? 相鄰指令之間的寄存器沖突:如果當(dāng)前指令(A)的目的操作數(shù)寄存器和下一條指令(B)的源操作數(shù)寄存器一致,B指令就需要等A回寫之后才能譯碼。

(5)ARM體系結(jié)構(gòu)的版本

2.3 ARM處理器系列

(1)ARM處理器系列

? 經(jīng)典ARM處理器:ARM7、ARM9、ARM10、ARM11 ? Cortex-A系列處理器:Cortex-A15、Cortex-A9、Cortex-A8、Cortex-A7、Cortex-A5 ? Cortex-R系列處理器:Cortex-R7、Cortex-R5、Cortex-R4 ? Cortex-M系列處理器:Cortex-M4、Cortex-M3、Cortex-M1、Cortex-M0+、Cortex-M0、CMSDK、CMSIS ? SecurCore處理器(2)ARM內(nèi)核版本命名規(guī)則

(3)ARM7系列微處理器 a)主要特點(diǎn)

? 最高主頻:130MIPS(Million Instructions Per Second); ? 功耗低;

? 代碼密度高,兼容16位的微處理器; ? 可得到廣泛的操作系統(tǒng)和實(shí)時(shí)操作系統(tǒng)支持; ? 眾多的開(kāi)發(fā)工具,優(yōu)秀的調(diào)試機(jī)制; ? 采用3級(jí)流水線結(jié)構(gòu);

? 提供0.25μm、0.18μm和0.13μm的生產(chǎn)工藝。b)馮·諾伊曼結(jié)構(gòu):數(shù)據(jù)和指令使用同一條總線。

c)包括ARM7TDMI、ARM7TDMI-S、ARM7EJ-S和ARM720T四種類型,適用于不同的市場(chǎng)要求 d)ARM7TDMI ? ARM公司最早為業(yè)界普遍認(rèn)可并廣泛應(yīng)用的處理器核。? T:Thumb;D:Debug;M:Multiplier;I:Embedded ICE logic。e)ARM7TDMI-S ? 是ARM7TDMI的可綜合(synthesizable)版本(軟核)。

? ARM以“軟”核的方式把ARM7TDMI核授權(quán)給處理器廠商,處理器廠商可進(jìn)行修改和綜合。這就是ARM7TDMI-S。

? 綜合出的整個(gè)核比“硬”核大50%,電源效率降低50%。f)ARM7EJ-S ? 是可綜合的、帶有增強(qiáng)型DSP(E變種)和Java加速功能(J變種)的32位RISC嵌入式處理器。

? 主要用于數(shù)字音頻播放器、帶Java功能的無(wú)線手持設(shè)備、噴墨打印機(jī)、數(shù)碼相機(jī)和PDA等方面。

g)ARM720T ? 專為使用Windows CE、Symbian OS操作系統(tǒng)平臺(tái)設(shè)計(jì)。? 主要用于數(shù)字音頻播放器、噴墨打印機(jī)和數(shù)碼相機(jī)等。(4)ARM9系列微處理器 a)主要特點(diǎn)

? 5級(jí)整數(shù)流水線;

? 單一的32位AMBA(Advanced Microcontroller Bus Architecture)總線接口; ? MMU支持Windows CE、Symbian OS、Linux等; ? 支持實(shí)時(shí)操作系統(tǒng),包括VxWorks; ? 統(tǒng)一的數(shù)據(jù)Cache和指令Cache;

? 提供0.25μm、0.18μm和0.13μm的生產(chǎn)工藝。

b)包括ARM9TDMI、ARM920T、ARM940T和ARM9E四種類型。后三種含有Cache。

c)采用Harvard體系結(jié)構(gòu)

? 指令與數(shù)據(jù)分開(kāi)存儲(chǔ)。? 采用指令快存 和數(shù)據(jù)快存。

d)在相同工藝條件下,ARM9TDMI的處理能力是ARM7TDMI的兩倍。e)ARM920T ?

Motorola MC9328MX1和Samsung S3C2410X處理器都采用ARM920T 核心。? 主要應(yīng)用于通信終端、3G基帶和應(yīng)用處理器、基于OS的平臺(tái)設(shè)備、數(shù)碼相機(jī)、音頻/視頻解碼和機(jī)頂盒等。

f)ARM940T ? 與ARM920T相比,實(shí)現(xiàn)了一個(gè)更小的D-Cache、I-Cache和MPU。適于不需運(yùn)行操作系統(tǒng)的平臺(tái)。

g)ARM9E ? 使用單一的處理器核,提供微控制器、DSP、Java應(yīng)用系統(tǒng)的解決方案; ? DSP指令集;

? 在0.13μm工藝下,主頻可達(dá)300MIPS的性能; ? 集成實(shí)時(shí)跟蹤調(diào)試功能; ? 可選的VFP9浮點(diǎn)處理協(xié)處理器;

? 高性能的AHB(Advanced High performance Bus)。(5)ARM10系列微處理器 a)主要特點(diǎn)

? 6級(jí)流水線;

? 在典型的0.13μm工藝下,主頻可達(dá)400MIPS的性能; ? 單一的32位AMBA 總線接口;

? MMU支持Windows CE、Symbian OS、Linux等; ? 統(tǒng)一的數(shù)據(jù)Cache和指令Cache;

? 提供0.25μm、0.18μm和0.13μm的生產(chǎn)工藝; ? 并行讀取/寫入部件。

b)包括:ARM1020、ARM10200、ARM1020E、ARM1022E、ARM1026EJ-S。c)使用ARM10TDMI處理器核,采用ARMv5T結(jié)構(gòu)。d)ARM10TDMI ? 在相同工藝條件下,處理能力是ARM9TDMI的兩倍;

? 采用提高時(shí)鐘頻率、6級(jí)流水線、轉(zhuǎn)移預(yù)測(cè)邏輯、64位存儲(chǔ)器和無(wú)阻塞的存/取邏輯等措施提升性能。

e)ARM10E。新節(jié)能模式,64位Load/Store體系,與ARM10TDMI相比具有的特點(diǎn)

? DSP指令集;

? 可選的VFP10浮點(diǎn)處理協(xié)處理器;

? 在實(shí)時(shí)控制和三維圖像處理時(shí),主頻可達(dá)650MFLPS(百萬(wàn)次浮點(diǎn)運(yùn)算每秒)。

(6)ARM11系列微處理器

? ARM1156T2-S內(nèi)核、ARM1156T2F-S內(nèi)核、ARM1176JZ-S內(nèi)核和ARM11JZF-S內(nèi)核 ? ARM1156T2-S內(nèi)核和 ARM1156T2F-S內(nèi)核 ? 基于ARM v6指令集體系結(jié)構(gòu);

? 是首批含有ARM Thumb-2內(nèi)核技術(shù)的產(chǎn)品。(7)Cortex-A系列微處理器

? 適于高計(jì)算要求、運(yùn)行豐富操作系統(tǒng)及提供交互媒體和圖形體驗(yàn)的應(yīng)用領(lǐng)域。? 支持傳統(tǒng) ARM、Thumb指令集和新的高性能緊湊型 Thumb-2 指令集。? 移動(dòng)互聯(lián)網(wǎng)的支持

? 低功率設(shè)計(jì),支持 Adobe Flash 10.1 ? 高性能 NEON 引擎,廣泛支持媒體編解碼器 ? 高性能

? Cortex-A15:為新一代移動(dòng)基礎(chǔ)結(jié)構(gòu)應(yīng)用和無(wú)線基礎(chǔ)結(jié)構(gòu)應(yīng)用提供高性能的解決方案。

? Cortex-A9。800 MHz1 GHz 的頻率下,提供的性能超過(guò) 2000 DMIPS。

? Cortex-A5 低成本實(shí)現(xiàn),在 400-800 MHz 的頻率下,提供的性能超過(guò) 1200 DMIPS,是尺寸最小、功耗最低的 ARM 多核處理器。

? 多核技術(shù):Cortex-A15、Cortex-A5和Cortex-A9 處理器都支持 ARM 第二代多核技術(shù)。? 高級(jí)擴(kuò)展

? Thumb-2,提供最佳代碼大小和性能。? TrustZone,安全擴(kuò)展,提供可信計(jì)算。

? Jazelle 技術(shù),提高執(zhí)行環(huán)境(如 Java、.Net、MSIL、Python 和 Perl)速度。

(8)Cortex-R系列微處理器

? 為具有嚴(yán)格的實(shí)時(shí)響應(yīng)限制的深層嵌入式系統(tǒng)提供高性能計(jì)算解決方案。

? 快速。以高時(shí)鐘頻率獲得高處理性能。

? 確定性。處理在所有場(chǎng)合都必須符合硬實(shí)時(shí)限制。? 安全。系統(tǒng)必須可靠且可信。

? 成本效益。在處理器及其內(nèi)存系統(tǒng)中都具有競(jìng)爭(zhēng)力的成本和功耗。? 應(yīng)用領(lǐng)域

? 智能手機(jī)

? 企業(yè)系統(tǒng):硬盤驅(qū)動(dòng)器、聯(lián)網(wǎng)和打印 ? 消費(fèi)電子:機(jī)頂盒、數(shù)字電視和播放器 ? 醫(yī)療行業(yè)、工業(yè)和汽車行業(yè)的可靠系統(tǒng) ? 功能集

(9)Cortex-M系列微處理器

? 向上兼容的高能效、易于使用的處理器

? 針對(duì)成本和功耗敏感的 MCU 和終端應(yīng)用的混合信號(hào)設(shè)備進(jìn)行過(guò)優(yōu)化。? 更低的功耗,更長(zhǎng)的電池壽命。

? 高密度指令集,更小的代碼,更低的硅成本。

RISC 處理器內(nèi)核高性能32 位CPU具有確定性的運(yùn)算低延遲3 階段管道Thumb-2 技術(shù)16/32 位指令的最佳混合小于8 位設(shè)備3 倍的代碼大小對(duì)性能沒(méi)有負(fù)面影響低功耗模式集成的睡眠狀態(tài)支持多電源域基于架構(gòu)的軟件控制嵌套矢量中斷控制器(NVIC)低延遲、低抖動(dòng)中斷響應(yīng)不需要匯編編程以純C 語(yǔ)言編寫的中斷服務(wù)例程工具和RTOS 支持廣泛的第三方工具支持Cortex 微控制器軟件接口標(biāo)準(zhǔn)(CMSIS)最大限度地增加軟件成果重用CoreSight調(diào)試和跟蹤JTAG 或2 針串行線調(diào)試(SWD)連接支持多處理器支持實(shí)時(shí)跟蹤(10)SecurCore系列微處理器

? 為安全要求較高應(yīng)用設(shè)計(jì)。智能卡

? SIM、ID、銀行業(yè)、付費(fèi)電視、公共交通、電子政務(wù)

2.4 ARM處理器模式

(1)32位ARM處理器工作狀態(tài)

32位ARM處理器有三種工作狀態(tài) ? ARM狀態(tài)。對(duì)應(yīng)32位ARM指令集 ? Thumb狀態(tài)。對(duì)應(yīng)16位Thumb指令集 ? Jazelle狀態(tài)。對(duì)應(yīng)8位的Jazelle指令集

用于在處理器指令層次對(duì)JAVA加速

只有進(jìn)入特定的狀態(tài),相應(yīng)的指令集才有效。CPSR的J(Jazelle)和T(Thumb)位反映程序的狀態(tài)。Thumb-2 ? 與現(xiàn)有 ARM 和 Thumb 解決方案向后兼容,同時(shí)擴(kuò)展了 Thumb 指令集的可用功能; ? 使用少于 31% 的內(nèi)存以降低系統(tǒng)成本; ? 提供比現(xiàn)有高密度代碼高出 38% 的性能。(2)64位ARM處理器工作狀態(tài)

ARMv8架構(gòu)

兩種主要執(zhí)行狀態(tài):AArch64, AArch32 AArch64:引入了一套新的指令集“A64”專門用于64位處理 AArch32:兼容現(xiàn)有的32位ARM指令集 ARMv8架構(gòu)支持三個(gè)主要指令集

A32(或 ARM):32 位固定長(zhǎng)度指令集

T32(Thumb):以 16 位固定長(zhǎng)度指令集的形式引入,在引入 Thumb-2 技術(shù)時(shí)增強(qiáng)為 16 位和 32 位混合長(zhǎng)度

A64:提供與 ARM 和 Thumb 指令集類似功能的64位固定長(zhǎng)度指令集(3)ARM處理器運(yùn)行模式

? 用戶模式(usr):ARM處理器正常的程序執(zhí)行狀態(tài)。? 快速中斷模式(fiq):用于高速數(shù)據(jù)傳輸或通道處理 ? 外部中斷模式(irq):用于通用的中斷處理。? 管理模式(svc):操作系統(tǒng)使用的保護(hù)模式。

? 數(shù)據(jù)訪問(wèn)終止模式(abt):當(dāng)數(shù)據(jù)或指令預(yù)取終止時(shí)進(jìn)入該模式,可用于虛擬存儲(chǔ)及存儲(chǔ)保護(hù)。

? 系統(tǒng)模式(sys):運(yùn)行具有特權(quán)的操作系統(tǒng)任務(wù)。

? 未定義指令中止模式(und):當(dāng)未定義的指令執(zhí)行時(shí)進(jìn)入該模式,可用于支持硬件協(xié)處理器的軟件仿真。

運(yùn)行模式可通過(guò)軟件改變,也可通過(guò)外部中斷或異常處理改變。用戶模式之外的模式稱為非用戶模式或特權(quán)模式。除用戶模式和系統(tǒng)模式之外的5種稱為異常模式,常用于處理中斷和異常、訪問(wèn)受保護(hù)的系統(tǒng)資源等情況。

2.5 ARM體系的異常處理

(1)ARM體系中3種控制程序執(zhí)行流程的方式: ? 順序執(zhí)行 ? 跳轉(zhuǎn)分支指令

? 異常中斷:處理器暫時(shí)中斷當(dāng)前數(shù)據(jù)流的現(xiàn)象。(2)對(duì)異常的響應(yīng)。ARM處理器執(zhí)行完當(dāng)前指令后: ? 進(jìn)入與特定的異常相應(yīng)的操作模式;

? 將引起異常指令的下一條指令的地址保存到新模式的R14中;

? 將CSPR原值保存到新模式的SPSR中;

? 通過(guò)設(shè)置CSPR的第7位來(lái)禁止IRQ。如果為FIQ中斷,則還要設(shè)置CSPR的第6位來(lái)禁止FIQ;

? 給PC強(qiáng)制賦向量地址值。(3)中斷向量表

指定了異常中斷及其處理程序的對(duì)應(yīng)關(guān)系,它通常存放在存儲(chǔ)地址的低端。

大小為32字節(jié),其中每個(gè)異常中斷占據(jù)4字節(jié)空間,用于存放一個(gè)跳轉(zhuǎn)指令或者一個(gè)向PC寄存器中賦值的指令。

(4)異常優(yōu)先級(jí):當(dāng)幾個(gè)異常中斷同時(shí)發(fā)生時(shí),就必須按照一定的次序來(lái)處理這些異常中斷。(5)從異常返回

將連接寄存器LR的值減去相應(yīng)偏移量后送到PC中; 將SPSR復(fù)制回CPSR中;

若在進(jìn)入異常處理時(shí)設(shè)置了中斷禁止位,則要清除。通過(guò)普通指令控制PC返回

軟件中斷的返回指令 MOVS R15, R14;將鏈接寄存器內(nèi)容移入PC并轉(zhuǎn)換模式 IRQ,F(xiàn)IQ和預(yù)取異常終止中斷的返回指令 SUBS R15, R14, #4 數(shù)據(jù)終止異常的返回指令 SUBS R15, R14, #8;異常在導(dǎo)致異常的指令的下一條指令后產(chǎn)生

2.6 ARM內(nèi)部寄存器

(1)寄存器結(jié)構(gòu)

32位ARM有31個(gè)32位通用寄存器,6個(gè)狀態(tài)寄存器。通用寄存器可用來(lái)保存數(shù)據(jù)和地址信息,用R為前綴加寄存器序號(hào)表示

15個(gè)通用寄存器(R0~R14)、一個(gè)或兩個(gè)狀態(tài)寄存器及程序計(jì)數(shù)器可在任意時(shí)間和處理器模式下被訪問(wèn),有些處理器模式擁有自身獨(dú)立的寄存器

(2)通用寄存器

分成三類:

R0~R7:未分組寄存器。每個(gè)未分組寄存器在所有的處理器模式下都表示同一個(gè)物理寄存器。R8~R14:分組寄存器。每個(gè)分組寄存器與一個(gè)用戶模式的寄存器對(duì)應(yīng)。R15:程序計(jì)數(shù)器PC。

分組寄存器R8~R14可分為兩組:

R8~R12:每個(gè)寄存器對(duì)應(yīng)兩組不同的物理寄存器,一組是FIQ模式下的,記為R8_fiq~R12_fiq, 另一組是除FIQ模式外的:R8_usr~R12_usr。

R13~R14:分別對(duì)應(yīng)6個(gè)不同的物理寄存器。用戶模式和系統(tǒng)模式共用一個(gè)寄存器,另外5個(gè)對(duì)應(yīng)其余5種。

R13 _ R14 _

可以是以下幾種模式之一:usr、svc、abt、und、irq和fiq。

R13:被稱為堆棧指針SP,但沒(méi)有任何指令強(qiáng)制性使用R13作為堆棧指針

R14又被稱為鏈接寄存器LR(Link Register)。當(dāng)調(diào)用子程序時(shí),返回地址被自動(dòng)保存到R14。由于ARM采用了多級(jí)流水線技術(shù),所以當(dāng)正常讀取PC值時(shí),該值為當(dāng)前指令地址值加8,或是加12。

2.7 ARM體系的存儲(chǔ)系統(tǒng)

(1)地址空間

將存儲(chǔ)器看作是從零地址開(kāi)始的字節(jié)的線性組合 0-3字節(jié):第1個(gè)存儲(chǔ)的字?jǐn)?shù)據(jù) 4-7字節(jié):第1個(gè)存儲(chǔ)的字?jǐn)?shù)據(jù) 依次排列(2)存儲(chǔ)器格式 大端格式

小端格式

(3)存儲(chǔ)器訪問(wèn)對(duì)準(zhǔn)

無(wú)論取指還是內(nèi)存訪問(wèn)都以字、半字或字節(jié)對(duì)準(zhǔn)訪問(wèn) a)非對(duì)齊的指令預(yù)取操作

ARM狀態(tài):將一個(gè)非對(duì)齊地址寫入PC,數(shù)據(jù)的第0位和第1位被忽略,PC的bit[1:0]為0 Thumb狀態(tài):數(shù)據(jù)的第0位被忽略,PC的bit[0]為0 b)非對(duì)齊地址內(nèi)存的訪問(wèn)操作(LOAD/STORE操作)

執(zhí)行結(jié)果不可預(yù)知

忽略字單元地址低兩位的值,半字單元最低位的值(分別對(duì)應(yīng)訪問(wèn)字和半字)

在LDR和SWP指令中,對(duì)存儲(chǔ)器訪問(wèn)忽略造成地址不對(duì)齊的低地址位,然后使用這些低地址位控制裝載數(shù)據(jù)的循環(huán) ARM指令系統(tǒng)及程序設(shè)計(jì)基礎(chǔ)

教學(xué)目的:使學(xué)生對(duì)ARM指令系統(tǒng)及程序設(shè)計(jì)的基礎(chǔ)知識(shí)有一定的了解。教學(xué)重點(diǎn):ARM指令系統(tǒng)。

教學(xué)難點(diǎn):ARM程序設(shè)計(jì)的基礎(chǔ)知識(shí)。教學(xué)方法與教學(xué)手段:課堂講授,多媒體教學(xué)。教學(xué)時(shí)間:4課時(shí)。教學(xué)內(nèi)容

3.1 ARM尋址方式

(1)尋址方式

處理器根據(jù)指令中給出的地址信息尋找物理地址的方式。尋找操作數(shù)或操作數(shù)地址的方式。

(2)立即尋址

也叫立即數(shù)尋址,操作數(shù)本身在指令中給出,該操作數(shù)被稱為立即數(shù)。例如: ADD R0, R0, #1;R0?R0+1 立即數(shù)須以“#”為前綴,對(duì)于十六進(jìn)制表示的立即數(shù),還需在“#”后加上“0x”或“&”。(3)寄存器尋址

操作數(shù)存在寄存器中。例如: ADD R0, R1, R2;R0?R1+R2(4)寄存器間接尋址

以寄存器的值作為操作數(shù)地址。例如: ADD R0, R1, [R2]

;R0 ? R1+[R2](5)基址變址尋址

a)基址加偏移的尋址方式

將寄存器內(nèi)容與指令中給出的地址偏移量相加,得到操作數(shù)的有效地址。如: LDR R0, [R1, #4];R0 ? [R1+4]

前變址:基址加變址作為操作數(shù)地址。

后變址:基址作為操作數(shù)的地址,傳送后自動(dòng)更新基址寄存器的值。

b)基址加索引的尋址方式

將基址寄存器的值與索引寄存器的值相加,形成操作數(shù)的有效地址。例如: LDR R0, [R1, R2]

;R0 ? [R1+R2] c)多寄存器尋址

一條指令可完成多個(gè)(最多16個(gè))寄存器值的傳送。例如:

LDMIA R0, {R1, R2, R4};R1 ? [R0] 22

;R2 ? [R0+4];R4 ? [R0+8](6)寄存器移位尋址

操作數(shù)為寄存器中數(shù)做相應(yīng)的移位而得到 例如:

ARM中的移位或循環(huán)移位操作: ? LSL:邏輯左移(Logical Shift Left)? LSR:邏輯右移(Logical Shift Right)ADD

R0, R1, R2, LSL #3;R0?R1+8×R2 ? ASR:算術(shù)右移(Arithmetic Shift Right)。移位過(guò)程中保持符號(hào)位不變,若源操作數(shù)為正數(shù),則字的高端空出的位補(bǔ)0。若源操作數(shù)為負(fù)數(shù),則字的高端空出的位補(bǔ)1。

? ROR:循環(huán)右移(Rotate Right)。從字的最低端移出的位依次填入字的高端空出的位。? RRX:擴(kuò)展的循環(huán)右移(Rotate Right Extended)。操作數(shù)向右移一位,左側(cè)空位由狀態(tài)寄存器C位填充。當(dāng)移位的類型為RRX時(shí),無(wú)需指定移位的位數(shù),其它的則須指定移位的位數(shù)。(7)相對(duì)尋址

以PC當(dāng)前值作為基地址,指令中的地址標(biāo)號(hào)作為位移量,兩者相加后得到操作數(shù)的有效地址。例如:

BL

NEXT

MOV ??

PC, LR

;從子程序返回 NEXT

;跳轉(zhuǎn)至子程序 NEXT ??

(8)堆棧尋址

a)堆棧:按先進(jìn)后出(FILO)的方式工作,使用堆棧指針(Stack Pointer, SP)指示當(dāng)前操作位置。b)根據(jù)棧指針的指向位置可將堆棧分為

? 滿堆棧:SP指向最后壓入堆棧的數(shù)據(jù)。? 空堆棧:SP指向下個(gè)將放入數(shù)據(jù)空位置

c)根據(jù)堆棧的生成方式可將堆棧分為

? 遞增堆棧(Ascending Stack):堆棧由低地址向高地址生成。

? 遞減堆棧(Descending Stack):由高地址向低地址生成。d)ARM支持四種類型堆棧工作方式

滿遞增堆棧:SP指向最后壓入的數(shù)據(jù),且由低地址向高地址生成。滿遞減堆棧:SP指向最后壓入的數(shù)據(jù),且由高地址向低地址生產(chǎn)。

空遞增堆棧:SP指向下個(gè)將放入數(shù)據(jù)的空位置,且由低地址向高地址生成??者f減堆棧:SP指向下個(gè)將要放入數(shù)據(jù)的空位置,且由高地址向低地址生成。

3.2 ARM指令集

(1)ARM指令集分類 加載/存儲(chǔ)指令

數(shù)據(jù)處理指令 分支指令

狀態(tài)寄存器訪問(wèn)指令 異常/中斷指令 協(xié)處理器指令(2)ARM指令的特點(diǎn) 所有指令都是32bit;

大多數(shù)指令都在單周期內(nèi)完成; 所有指令都可以條件執(zhí)行; load/store體系結(jié)構(gòu);

指令集可以通過(guò)協(xié)處理器擴(kuò)展。(3)ARM指令的格式

(4)ARM指令的條件執(zhí)行

所有ARM指令都可包含一個(gè)可選的條件碼,只有當(dāng)CPSR中條件標(biāo)志位滿足指定條件時(shí),指令才會(huì)被執(zhí)行。否則以NOP指令通過(guò)流水線。

(5)加載/存儲(chǔ)指令

Load:將內(nèi)存中數(shù)據(jù)裝載到寄存器 Store:將寄存器中的數(shù)據(jù)存入內(nèi)存 a)單寄存器傳輸指令

{} {B} Rd, addressing1 {} SB | H | SH Rd, addressing2 {} {B} Rd, LABEL LDR/STR指令:寄存器在前,地址在后 LDM/STM指令:地址在前,寄存器在后

LABEL:相對(duì)PC的尋址方式。編譯器在匯編時(shí),會(huì)將標(biāo)號(hào)LABEL匯編成PC的偏移量存入該指令的立即數(shù)字段。

B: Byte;S: Sign;H: Half LDR/STR:讀/寫一個(gè)32bit字到/從一個(gè)32位寄存器,要求讀/寫地址字對(duì)齊。LDRB:內(nèi)存8bit字節(jié)?32bit寄存器;不要求地址對(duì)齊,寄存器高24位清零。STRB:寄存器低8位?內(nèi)存的某個(gè)地址;不要求地址對(duì)齊。

LDRH:16bit半字? 32bit寄存器;要求地址半字對(duì)齊,寄存器的高16bit清零。STRH:寄存器低16bit?內(nèi)存;要求地址半字對(duì)齊。

LDRSH:有符號(hào)16bit半字?32bit寄存器中;要求地址半字對(duì)齊,寄存器高16bit根據(jù)符號(hào)位擴(kuò)展。

LDRSB:有符號(hào)8bit字節(jié)?32bit寄存器中;不要求地址對(duì)齊,寄存器高24bit根據(jù)符號(hào)位擴(kuò)展。

“數(shù)據(jù)”一列指的是這條指令所訪問(wèn)的存儲(chǔ)單元

“基址寄存器”一列的內(nèi)容是指執(zhí)行指令之后“基址寄存器”的內(nèi)容 b)多寄存器傳輸指令

{} <尋址模式> Rn{!}, {^} LDM / STM:從由基址寄存器指示的一片連續(xù)存儲(chǔ)器到寄存器列表所指示的多個(gè)寄存器之間傳送數(shù)據(jù)。

!:表示執(zhí)行完操作后將變化之后的地址值寫入基址寄存器

^:對(duì)于LDM操作,如恢復(fù)的寄存器中含有PC(R15)寄存器,則指令執(zhí)行的同時(shí)CPU自動(dòng)將SPSR拷貝到CPSR中,例如:

LDMFD {R0-R12, LR, PC}^ 數(shù)據(jù)的傳送發(fā)生在User用戶模式下的寄存器,而非當(dāng)前模式寄存器,例如:

LDMDB SP, {R0-LR}^ 例如:

STMIA R0!, {R1-R5};以R0為地址指針,將R1-R5保存到內(nèi)存,指針向上移動(dòng)

c)交換指令

SWP {B} {} Rd, Rm, [Rn] SWP:字交換;SWPB:字節(jié)交換 Rd ? [Rn], [Rn] ? Rm 例如:

SWP R1, R2, [R3];R1?[R3] ,[R3]? R2 SWP R1, R1, [R2];R1與[R2]內(nèi)容互換(6)數(shù)據(jù)處理指令

a)數(shù)據(jù)傳送指令

MOV {cond} {S} Rd, Operand 例如: MOV R1, R0 MOVEQ PC, R14

;將R14值傳到PC b)數(shù)據(jù)取反傳送指令 MVN {cond} {S} Rd, Operand 例如:

MVN R1, #2;將立即數(shù)2取反送至R1 c)算術(shù)運(yùn)算指令

ADD、ADC ADD|ADC {cond} {S} Rd, Oper1, Oper2 例如: ADDS ADCS ADCS ADC R0, R4, R8 R1, R5, R9;加低端的字;帶進(jìn)位加第二字

R2, R6, R10;帶進(jìn)位加第三字 R3, R7, R11;帶進(jìn)位加第四字

可實(shí)現(xiàn) 128位加法 SUB:減法指令

SUB {cond} {S} Rd, Oper1, Oper2 SBC:帶借位減法指令

SBC {cond} {S} Rd, Oper1, Oper2 例:SBCS R0, R1, R2;R0=R1–R2–C RSB:反向減法指令

RSB {cond} {S} Rd, Oper1, Oper2 操作數(shù)2減去操作數(shù)1,例如: RSB R0, R1, R2;R0 = R2 – R1 RSC:帶借位的逆向減法指令 RSC {cond} {S} Rd, Oper1, Oper2 d)邏輯運(yùn)算指令 AND:與

AND {cond} {S} Rd, Oper1, Oper2 ORR:或

ORR {cond} {S} Rd, Oper1, Oper2 EOR:異或

EOR {cond} {S} Rd, Oper1, Oper2 e)比較指令 CMP CMP {cond} Operand1, Operand2 CMN:反值比較 CMN {cond} Operand1, Operand2 將第一個(gè)數(shù)與第二個(gè)數(shù)的反值進(jìn)行比較,相當(dāng)于完成兩個(gè)數(shù)相加。例如: CMN R1, R0;R1+R0,并設(shè)置CPSR f)測(cè)試指令 TST TST {cond} Operand1, Operand2

把兩個(gè)操作數(shù)按位進(jìn)行與運(yùn)算,根據(jù)結(jié)果更新CPSR。

TEQ TEQ {cond} Operand1, Operand2 把兩個(gè)操作數(shù)按位進(jìn)行異或運(yùn)算,根據(jù)結(jié)果更新CPSR g)乘法指令 MUL MUL {cond} {S} Rd, Oper1, Oper2 Rd?Operand1×Operand2。例如: MUL

R0, R1, R2 MLA MLA {cond} {S} Rd,Oper1,Oper2,Oper3 Rd?Operand1×Operand2+Operand3 例如:

MLA R0, R1, R2, R3;R0 = R1×R2+R3;R0 =R1×R2 UMULL:64位無(wú)符號(hào)數(shù)乘法指令 UMULL {cond} {S} Rd_L, Rd_H, Operand1, Operand2 Rd_H:Rd_L? Operand1×Operand2 例如: UMULL R0, R1, R2, R3;R0 =(R2×R3)的低32位;R1 =(R2×R3)的高32位 UMLAL: 64位無(wú)符號(hào)數(shù)乘加指令 UMLAL {cond} {S} Rd_L, Rd_H, Operand1, Operand2 Rd_H:Rd_L+= Operand1×Operand2 例如:

UMLAL

R0, R1, R2, R3;R0 =(R2×R3)的低32位+R0;R1 =(R2×R3)的高32位+R1 SMULL:64位有符號(hào)數(shù)乘法指令 SMULL {cond} {S} Rn_L, Rn_H, Operand1, Operand2 Rd_H:Rd_L? Operand1×Operand2 SMLAL: 64位有符號(hào)數(shù)乘加指令 SMLAL {cond} {S} Rn_L, Rn_H, Operand1, Operand2 Rd_H:Rd_L+= Operand1×Operand2(7)分支指令

a)B(分支指令)和 BL(帶鏈接分支指令)B {cond} LABEL BL {cond} LABEL

允許向前或向后跳轉(zhuǎn)最高32MB。

BL:帶返回的分支指令,用于調(diào)用一個(gè)將其返回地址存入鏈接寄存器的函數(shù)。例如:

SUBPRG BL …… SUBPRG ??;<子程序代碼> MOV PC, LR;返回

b)BX(分支并可選地交換指令集)和BLX(帶鏈接分支并可選地交換指令集)BX {cond} Rm BLX {cond} LABEL | Rm Rm:轉(zhuǎn)移地址,bit[0]為0時(shí),目標(biāo)地址處為ARM指令,否則為Thumb指令。BX 和 BLX是唯一可使用的切換指令集的方法。

BX 和 BLX指令執(zhí)行與B和BL指令相同的分支操作,并可從ARM指令集切換到THUMB指令集。

c)長(zhǎng)跳轉(zhuǎn)

通過(guò)向PC寄存器中寫目標(biāo)地址值,可實(shí)現(xiàn)在4GB地址空間中進(jìn)行任意跳轉(zhuǎn)。例如: MOV MOV LR, PC;保存返回地址

R15, #0x00110000;無(wú)條件轉(zhuǎn)向0x110000(8)狀態(tài)寄存器訪問(wèn)指令 a)MRS MRS {} Rd, 將狀態(tài)寄存器的內(nèi)容傳送到通用寄存器中。例如: MRS b)MSR MSR {} _, Rm MSR {} _,# 表示下列情況之一: c:控制域,即PSR[7:0] PSR[32:24] CPSR|SPSR ? 通用寄存器。例如: MSR CPSR_F, #&F00000000

R3, CPSR;CPSR?R3

x:擴(kuò)展域,即PSR[15:8] s:狀態(tài)域,即PSR[23:16] f:標(biāo)志域,即

;設(shè)置所有標(biāo)志位

(9)異常/中斷指令(續(xù))a)SWI SWI {} <24位立即數(shù)> 產(chǎn)生SWI異常中斷,以實(shí)現(xiàn)在用戶模式下調(diào)用操作系統(tǒng)的監(jiān)控功能程序。它將處理器置于管理(SVC)模式。例如:

SWI 0x01

;調(diào)用編號(hào)為01的系統(tǒng)例程

b)BKPT BKPT <16位立即數(shù)> 產(chǎn)生軟件斷點(diǎn)中斷,可用于程序調(diào)試。例如 BKPT 0xF010(10)協(xié)處理器指令 a)CDP CDP {} , , CRd, CRn, CRm {,} 編號(hào)為CP#的協(xié)處理器接受指令并執(zhí)行。具體操作由Cop1和Cop2定義,CRn和CRm為源操作數(shù),結(jié)果?CRd。例如:

CDP P6, 2, C5, C10, C3, 16

;激活協(xié)處理器P6的操作,操作碼1和操作碼2值分別為2和16,目標(biāo)寄存器為C5,源操作數(shù)寄存器為C10和C3 b)MRC和MRC MRC | MCR {} , , CRd, CRn, CRm {,} 在ARM與協(xié)處理器寄存器間傳送數(shù)據(jù)。MRC:ARM寄存器?協(xié)處理器寄存器 MCR:協(xié)處理器寄存器?ARM寄存器 例如: MCR P3, 3, R0, C4, C5, 6;ARM處理器R0?協(xié)處理器P3的寄存器C4和C5 c)LDC和STC 在協(xié)處理器寄存器與存儲(chǔ)器間傳送數(shù)據(jù) LDC:協(xié)處理器寄存器?存儲(chǔ)器

STC:存儲(chǔ)器?協(xié)處理器寄存器 前變址格式

LDC | STC {} {L} , CRd, [Rn, ]{!} 后變址格式

LDC | STC {} {L} , CRd, Rn, 3.3 Thumb指令集

(1)Thumb指令集的特點(diǎn)

? 是ARM指令集壓縮形式的子集,所有Thumb指令均有對(duì)應(yīng)的ARM指令。? 采用16位二進(jìn)制編碼,代碼密度小。

? 執(zhí)行Thumb指令時(shí),先動(dòng)態(tài)解壓縮,然后作為標(biāo)準(zhǔn)的ARM指令執(zhí)行。? 如何區(qū)分指令流取決于CPSR的位T。? 大多Thumb數(shù)據(jù)處理指令采用2地址格式。? 移位操作變成單獨(dú)指令。

? 沒(méi)有協(xié)處理器指令、單寄存器交換指令、乘加指令、64位乘法指令及程序寄存器處理指令。? 僅分支指令B有條件執(zhí)行功能。

(2)Thumb狀態(tài)切換

a)ARM狀態(tài)進(jìn)入Thumb狀態(tài) 執(zhí)行帶狀態(tài)切換的轉(zhuǎn)移指令BX。例如: BX R0;若R0最低位為1,則轉(zhuǎn)Thumb狀態(tài)

異常返回。通常用于返回到進(jìn)入異常前所執(zhí)行的指令流,而不是特地用于切換到Thumb模式。適用于異常前執(zhí)行的是Thumb指令。

b)Thumb 狀態(tài)進(jìn)入ARM狀態(tài) 執(zhí)行BX指令。

利用異常進(jìn)入ARM指令流。(3)Thumb指令寄存器的使用 ? 對(duì)R0~R7具有全部訪問(wèn)權(quán)限。

? R8~R12的訪問(wèn)受到限制,只能通過(guò)MOV、ADD和CMP訪問(wèn)。

? 在每一種特權(quán)模式下都有一組SP、LR和SPSR,分別對(duì)應(yīng)ARM狀態(tài)的R13、R14和R15。(4)Thumb指令與ARM指令的相似點(diǎn) ? Load/Store結(jié)構(gòu)。

? 支持8位字節(jié)、16位半字和32位字?jǐn)?shù)據(jù)類型。? 半字以2字節(jié)邊界對(duì)準(zhǔn),字以4字節(jié)邊界對(duì)準(zhǔn)。(5)Thumb指令與ARM指令差異點(diǎn)

? 跳轉(zhuǎn)指令:條件跳轉(zhuǎn)在范圍上有更多的限制,轉(zhuǎn)向子程序只具有無(wú)條件轉(zhuǎn)移。

? 數(shù)據(jù)處理指令:對(duì)通用寄存器進(jìn)行操作,操作結(jié)果需放入其中一個(gè)操作數(shù)寄存器。因此,許多Thumb指令采用2地址格式,ARM數(shù)據(jù)處理指令大多采用3地址格式。? 單寄存器加載和存儲(chǔ)指令:只能訪問(wèn)R0~R7。

? PUSH和POP指令使用堆棧指針R13作為基址實(shí)現(xiàn)滿遞減堆棧,除R0~R7外,PUSH指令還可存儲(chǔ)R14,POP指令可加載程序指令PC。

? 大多數(shù)Thumb指令是無(wú)條件執(zhí)行的,所有ARM指令都是條件執(zhí)行的。? 由于采用高密度編碼,Thumb指令格式?jīng)]有ARM指令格式規(guī)則。(6)Thumb分支指令

a)B 指令——目標(biāo)為Thumb代碼 B <條件碼>

B指令是Thumb指令集中唯一可條件執(zhí)行的指令。PC = PC +(SignExtend(signed_immed_8)<< 1)B

3.4 3.5 35

3.6 嵌入式系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)過(guò)程

(1)嵌入式軟件開(kāi)發(fā)的特點(diǎn) a)需要交叉開(kāi)發(fā)環(huán)境

? 交叉開(kāi)發(fā)環(huán)境:實(shí)現(xiàn)編譯、鏈接和調(diào)試應(yīng)用程序代碼的環(huán)境,它分散在有通信連接的宿主機(jī)與目標(biāo)環(huán)境之中。

? 宿主機(jī)(Host)是一臺(tái)通用計(jì)算機(jī),一般是PC機(jī)。

? 目標(biāo)機(jī)(Target)可以是嵌入式應(yīng)用軟件的實(shí)際運(yùn)行環(huán)境,也可以是能替代實(shí)際環(huán)境的仿真系統(tǒng)。

? 交叉軟件開(kāi)發(fā)工具包括:交叉編譯器、交叉調(diào)試器和模擬軟件等。b)引入任務(wù)設(shè)計(jì)方法

? 嵌入式應(yīng)用系統(tǒng)以任務(wù)為基本執(zhí)行單元 ? 用多個(gè)并發(fā)的任務(wù)代替通用軟件的多個(gè)模塊 c)需要固化程序 d)軟件開(kāi)發(fā)難度大

? 實(shí)時(shí)性。

? 穩(wěn)定性、可靠性、抗干擾性。(2)軟硬件平臺(tái)的選擇 選擇處理器需考慮的因素 ? 處理性能 ? 技術(shù)指標(biāo)、功耗

? 軟件支持工具、是否內(nèi)置調(diào)試工具 ? 供應(yīng)商是否提供評(píng)估板 軟件平臺(tái)的選擇

? 操作系統(tǒng)。開(kāi)發(fā)工具,與硬件接口難度,內(nèi)存,是否提供硬件驅(qū)動(dòng)程序,可裁剪性、實(shí)時(shí)性等

? 編程語(yǔ)言。通用性、可移植性、執(zhí)行效率、可維護(hù)性等 ? 集成開(kāi)發(fā)環(huán)境

(3)嵌入式系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)流程 ? 需求分析 ? 體系結(jié)構(gòu)設(shè)計(jì)

? 硬件的設(shè)計(jì)、制作及測(cè)試 ? 軟件的設(shè)計(jì)、實(shí)現(xiàn)及測(cè)試 ? 系統(tǒng)集成

? 系統(tǒng)性能測(cè)試及可靠性測(cè)試

STM32微控制器

教學(xué)目的:使學(xué)生對(duì)STM32的性能指標(biāo)、硬件結(jié)構(gòu)有一定的了解。教學(xué)重點(diǎn):STM32的硬件結(jié)構(gòu)。教學(xué)難點(diǎn):STM32的硬件結(jié)構(gòu)。

教學(xué)方法與教學(xué)手段:課堂講授,多媒體教學(xué)。教學(xué)時(shí)間:4課時(shí)。教學(xué)內(nèi)容

4.1 STM32微控制器的性能指標(biāo)

(1)STM32F103的主要功能

? ARM Cortex-M3核 ? 最高主頻72MHz ? 512kB Flash、64kB RAM ? 1個(gè)USB、1個(gè)CAN、5個(gè)USART、3個(gè)SPI、2個(gè)I2C、2個(gè)I2S、1個(gè)SDIO、112個(gè)GPIO

? 3個(gè)ADC、2個(gè)DAC、8個(gè)定時(shí)器

? FSMC總線(支持NOR,NAND,SRAM)? 12通道DMA控制器

? Serial wire debug(SWD)、JTAG 接口 ? 啟動(dòng):用戶Flash、系統(tǒng)存儲(chǔ)器、SRAM(2)JC-STM32CB核心板

? 核心芯片:ST STM32F103ZET6 ? 8M NOR Flash:SST39VF6401,16bit ? 128M NAND Flash:K9F1G08U0C,8bit ? 8MHz CPU晶振,32768Hz RTC晶振 ? 1個(gè)10M/100M以太網(wǎng)接口 ? 1路音頻輸出和1路音頻輸入 ? 1個(gè)10-pin JTAG調(diào)試接口 ? 1個(gè)4-pin SWD串行調(diào)試接口 ? Reset按鈕、自定義LED,電源LED ? 1個(gè)精密可調(diào)電阻連接到片內(nèi)ADC輸入

? 使用CPLD擴(kuò)展IO口及地址譯碼,型號(hào)EPM240T100C5N ? 板載10/100M網(wǎng)卡控制器,型號(hào)DM9000AEP,16bit總線接口

STM32

下載第四章基于嵌入式網(wǎng)絡(luò)教學(xué)平臺(tái)的系統(tǒng)設(shè)計(jì)word格式文檔
下載第四章基于嵌入式網(wǎng)絡(luò)教學(xué)平臺(tái)的系統(tǒng)設(shè)計(jì).doc
將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
點(diǎn)此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    嵌入式教學(xué)平臺(tái)立項(xiàng)報(bào)告

    嵌入式教學(xué)平臺(tái)立項(xiàng)報(bào)告 1. 功能作用; 目前嵌入式系統(tǒng)教學(xué)平臺(tái)市場(chǎng)上的主導(dǎo)產(chǎn)品都是基于ARM7或ARM9架構(gòu)的,一般都認(rèn)為ARM7屬于低端產(chǎn)品、ARM9屬于高端產(chǎn)品,也出現(xiàn)了所謂的“ARM......

    網(wǎng)絡(luò)教學(xué)平臺(tái)

    網(wǎng)絡(luò)教學(xué)平臺(tái)設(shè)計(jì)與實(shí)現(xiàn) 一、 網(wǎng)絡(luò)教學(xué)平臺(tái)的設(shè)計(jì) 1. 教學(xué)理論 網(wǎng)絡(luò)教學(xué)的特點(diǎn)是:時(shí)空無(wú)限性、協(xié)同性、個(gè)別化,這決定了網(wǎng)絡(luò)教學(xué)不可能采用以“教”為主的傳統(tǒng)教學(xué)理論。強(qiáng)調(diào)......

    北航—嵌入式系統(tǒng)設(shè)計(jì)教學(xué)大綱

    《嵌入式系統(tǒng)設(shè)計(jì)》課程計(jì)劃 北航機(jī)器人研究所王田苗魏洪興 一、課程名稱:嵌入式系統(tǒng)設(shè)計(jì) 二、課程目的: 嵌入式系統(tǒng)技術(shù)已被廣泛地應(yīng)用于工業(yè)控制系統(tǒng)、信息家電、通信設(shè)備、......

    嵌入式系統(tǒng)設(shè)計(jì)基礎(chǔ)總結(jié)報(bào)告

    嵌入式系統(tǒng)設(shè)計(jì)基礎(chǔ) 嵌入式系統(tǒng)設(shè)計(jì)基礎(chǔ) 結(jié)題報(bào)告 學(xué)生1: 學(xué)生2: 學(xué)生3: 組長(zhǎng): 組長(zhǎng)電話: 指導(dǎo)老師: 完成時(shí)間: 嵌入式系統(tǒng)設(shè)計(jì)基礎(chǔ) 目錄 目錄 ........................................

    基于.NET平臺(tái)的網(wǎng)絡(luò)教學(xué)輔助系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

    基于.NET平臺(tái)的網(wǎng)絡(luò)教學(xué)輔助系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 摘要:目前計(jì)算機(jī)網(wǎng)絡(luò)的應(yīng)用在教學(xué)系統(tǒng)內(nèi)已經(jīng)相當(dāng)?shù)钠占?,使得師生之間的交流也更加方便。然而傳統(tǒng)的教學(xué)模式對(duì)某些課程的教學(xué)有......

    網(wǎng)絡(luò)多媒體教學(xué)平臺(tái)的設(shè)計(jì)

    網(wǎng)絡(luò)多媒體教學(xué)平臺(tái)的設(shè)計(jì)摘要:一定的技術(shù)總是與一定的行為模式聯(lián)系在一起。網(wǎng)絡(luò)以其靈活便捷連通的特點(diǎn)和高度的互動(dòng)性成為實(shí)現(xiàn)互動(dòng)雙向交流的代表性媒體符合國(guó)家新課程標(biāo)準(zhǔn)......

    基于資源的網(wǎng)絡(luò)教學(xué)平臺(tái)設(shè)計(jì).

    基于資源的網(wǎng)絡(luò)教學(xué)平臺(tái)設(shè)計(jì) 杜震嶸 肖君 上海遠(yuǎn)程教育集團(tuán) 摘要:本文的研究是在上海教育資源庫(kù)的開(kāi)發(fā)應(yīng)用基礎(chǔ)上,對(duì)網(wǎng)絡(luò)教學(xué)平臺(tái)進(jìn)行研究,并針 對(duì)網(wǎng)絡(luò)教學(xué)平臺(tái)中的網(wǎng)絡(luò)課程......

    《臺(tái)階》網(wǎng)絡(luò)平臺(tái)教學(xué)設(shè)計(jì)[5篇模版]

    《臺(tái)階》網(wǎng)絡(luò)平臺(tái)教學(xué)設(shè)計(jì) 教學(xué)目標(biāo): 1.知識(shí)目標(biāo): 整體感知課文內(nèi)容,了解故事情節(jié), 2.能力目標(biāo):把握父親形象的特點(diǎn)及意蘊(yùn)。 3.情感、態(tài)度、價(jià)值觀目標(biāo):感受父親性格中的艱苦創(chuàng)業(yè)......

主站蜘蛛池模板: 一出一进一爽一粗一大视频| 亚洲成在人线在线播放无码| 亚洲 国产 韩国 欧美 在线| 亚洲一区在线日韩在线深爱| 丝袜美腿精品国产一区| 亚州性无码不卡免费视频| 国产精品va在线观看无码| 色综合av社区男人的天堂| 蜜臀av99无码精品国产专区| 国产午夜精品一区二区三区漫画| 色欲av亚洲一区无码少妇| 久久久久青草线蕉综合超碰| 国产精品亚洲五月天高清| 日本黄页网站免费大全| 狠狠色噜噜狠狠狠狠色综合久| 国产成人亚洲精品无码蜜芽| 色欲欲www成人网站| 国产精品久久久久久影视不卡| 蜜臀精品无码av在线播放| 国产精品高潮呻吟av久久黄| 亚洲中文字幕日产乱码在线| 国产精品久久久久久超碰| 人妻精品无码一区二区三区| 国产精品毛片无码| 国产一区二区三区四区精华| 97久久精品人人澡人人爽| 国产婷婷色综合av性色av| 一二三四视频社区在线播放中国| 欧洲美女黑人粗性暴交| 日本乱人伦在线观看| 精品一区二区无码av| 亚洲中文字幕无码一久久区| 东京热tokyo综合久久精品| 国自产拍偷拍精品啪啪| 人妻av中文字幕无码专区| 好男人社区www在线官网| AV一区二区三区| 人妻丰满熟妇无码区免费| 欧美午夜特黄aaaaaa片| 亚洲精品国产成人| 日本熟妇大屁股人妻|