《嵌入式系統(tǒng)概論》教學(xué)大綱
課程名稱:
| 嵌入式系統(tǒng)概論
|
|
|
課程編號(hào):
| 420306
|
|
|
適用專業(yè):
| 網(wǎng)絡(luò)工程
|
|
|
課程類別:
| 物聯(lián)網(wǎng)工程方向限選課
|
|
|
課程學(xué)分:
| 3
|
|
|
總學(xué)時(shí):
| 54
|
|
|
其中:理論學(xué)時(shí)
| 38
|
|
|
實(shí)驗(yàn)學(xué)時(shí)
| 16
|
|
|
先修課程:
| 數(shù)字電路、模擬電路、操作系統(tǒng),C語言,匯編語言
|
一、課程的性質(zhì)、目的與任務(wù)
本課程使用于計(jì)算機(jī)類專業(yè),是網(wǎng)絡(luò)工程專業(yè)的物聯(lián)網(wǎng)方向的限先課。它的任務(wù)是掌握嵌入式系統(tǒng)的基本概念;掌握嵌入式處理器Arm體系結(jié)構(gòu),包括ARM總體結(jié)構(gòu)、存儲(chǔ)器組織、系統(tǒng)控制模塊和I/O外圍控制模塊、掌握ARM指令集和Thumb指令集;掌握ARM匯編語言和C語言編程方法;了解基于ARM的開發(fā)調(diào)試方法,以及在嵌入式Linux下的開發(fā)應(yīng)用方法。它的目的是了解和掌握嵌入式處理器的原理及其應(yīng)用方法。
通過本課程的學(xué)習(xí),要求學(xué)生達(dá)到:
1.使學(xué)生理解嵌入式系統(tǒng)的基本概念、基本原理和基本應(yīng)用方法;
2、掌握嵌入式系統(tǒng)涉及開發(fā)的全過程,包括:嵌入式系統(tǒng)與單片機(jī),嵌入式的操作系統(tǒng),主流的嵌入式芯片ARM9的基本結(jié)構(gòu),嵌入式系統(tǒng)開發(fā)的一般方法,嵌入式的ARM匯編。
3、掌握嵌入式linux操作系統(tǒng)的開發(fā)方法,嵌入式系統(tǒng)與外部設(shè)備接口控制的方法。
4.訓(xùn)練學(xué)生運(yùn)用所學(xué)基礎(chǔ)知識(shí)解決實(shí)際問題的能力,同時(shí)要求拓寬專業(yè)知識(shí)面。
二、課程教學(xué)基本內(nèi)容與要求
第一章 嵌入式系統(tǒng)概述
(一)基本教學(xué)內(nèi)容
1.1 嵌入式系統(tǒng)的概念
1.2 嵌入式系統(tǒng)的發(fā)展現(xiàn)狀與發(fā)展趨勢(shì)
1.3 需要注意的行業(yè)標(biāo)準(zhǔn)與相關(guān)學(xué)科
1.4 嵌入式系統(tǒng)基本要素
(二)基本要求
教學(xué)目的:了解嵌入式系統(tǒng)的相關(guān)概念,嵌入式系統(tǒng)的分類,區(qū)別嵌入式系統(tǒng)與PC系統(tǒng)的區(qū)別與聯(lián)系,掌握嵌入式系統(tǒng)設(shè)計(jì)模式。
教學(xué)重點(diǎn):不同嵌入式處理器的性能和使用差別。
教學(xué)難點(diǎn):不同嵌入式處理器的性能和使用差別。
第二章 ARM處理器基礎(chǔ)
(一)基本教學(xué)內(nèi)容
2.1 ARM處理器的特點(diǎn)和應(yīng)用領(lǐng)域
2.2 數(shù)據(jù)類型和存儲(chǔ)器組織
2.3 ARM寄存器的組織
2.4 ARM內(nèi)核和SoC
2.5 ARM硬件的啟動(dòng)過程
2.6 ARM JTAG調(diào)試接口
(二)基本要求
教學(xué)目的:了解ARM的數(shù)據(jù)類型和基本存儲(chǔ)器構(gòu)造,理解ARM內(nèi)核的數(shù)據(jù)模型和處理器運(yùn)行模式及其相關(guān)概念。深入理解ARM各個(gè)處理器模式的使用和異同,掌握流水設(shè)計(jì)對(duì)芯片性能提升和影響。
教學(xué)重點(diǎn):ARM各個(gè)處理器模式的使用,ARM體系結(jié)構(gòu)。
教學(xué)難點(diǎn):流水和標(biāo)量設(shè)計(jì)。
第三章 ARM匯編程序設(shè)計(jì)
(一)基本教學(xué)內(nèi)容
3.1 ARM的各種常用指令及其功能
3.2 ARM匯編器支持的各個(gè)偽指令
3.3 ARM匯編語言的語句格式
3.4 程序結(jié)構(gòu)和基本的ARM匯編程序設(shè)計(jì)
(二)基本要求
教學(xué)目的:掌握ARM常用指令的使用,掌握ARM匯編程序。
教學(xué)重點(diǎn):ARM指令的使用
教學(xué)難點(diǎn):C和ARM的相互嵌入使用
第四章 ARM處理器的結(jié)構(gòu)和特性
(一)基本教學(xué)內(nèi)容
4.1 封轉(zhuǎn)與引腳
4.2 低功耗與時(shí)鐘電源管理
4.3 復(fù)位管理和電壓管理
4.4 外部存儲(chǔ)器接口,顯示接口,USB接口,多媒體接口,快速捕獲接口
(二)基本要求
教學(xué)目的:熟練掌握時(shí)鐘與電源管理。
教學(xué)重點(diǎn):各個(gè)I/O接口的原理和使用,接口電路和編寫程序使用接口完成數(shù)據(jù)傳輸功能。
教學(xué)難點(diǎn):各個(gè)I/O接口的原理和使用。
第五章 嵌入式軟件設(shè)計(jì)
(一)基本教學(xué)內(nèi)容
5.1 交叉編譯的概念
5.2 引導(dǎo)加載程序
5.3 Linux內(nèi)核移植
5.4 文件系統(tǒng)
(二)基本要求
教學(xué)目的:掌握如何建立交叉編譯環(huán)境,如何裁剪內(nèi)核和移植Linux操作系統(tǒng)。理解Bootloader原理和啟動(dòng)流程,文件系統(tǒng)基本概念。能獨(dú)立實(shí)現(xiàn)一個(gè)基本內(nèi)核移植和引導(dǎo)加載程序的移植。
教學(xué)重點(diǎn):交叉編譯的概念和使用;嵌入式系統(tǒng)環(huán)境的搭建。
教學(xué)難點(diǎn):交叉編譯的概念和使用。
第六章 實(shí)時(shí)操作系統(tǒng)
(一)基本教學(xué)內(nèi)容
6.1 實(shí)時(shí)系統(tǒng)概念
6.2 實(shí)時(shí)系統(tǒng)可重入性
6.3 任務(wù)調(diào)度
6.4 任務(wù)優(yōu)先級(jí)
(二)基本要求
教學(xué)目的:熟練掌握前后臺(tái)系統(tǒng)原理,理解代碼的臨界段,資源,共享資源。掌握任務(wù)優(yōu)先級(jí)和任務(wù)的調(diào)度算法。
教學(xué)重點(diǎn):優(yōu)先級(jí)位圖調(diào)度。
教學(xué)難點(diǎn):搶占式內(nèi)核和搶占式調(diào)度。
第七章 嵌入式Linux驅(qū)動(dòng)程序設(shè)計(jì)
(一)基本教學(xué)內(nèi)容
7.1 Linux驅(qū)動(dòng)程序結(jié)構(gòu)
7.2 設(shè)備文件和設(shè)備文件系統(tǒng)
7.3 LED的驅(qū)動(dòng)程序設(shè)計(jì)
7.4 Linux塊設(shè)備驅(qū)動(dòng)程序
7.5 Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序
(二)基本要求
教學(xué)目的:熟練掌握Linux設(shè)備驅(qū)動(dòng)程序的結(jié)構(gòu)和各種常用驅(qū)動(dòng)程序函數(shù)的使用。掌握設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì)實(shí)現(xiàn)。理解Linux下面文件概念和設(shè)備驅(qū)動(dòng)程序的層次結(jié)構(gòu)。
教學(xué)重點(diǎn):驅(qū)動(dòng)程序的編寫和實(shí)現(xiàn)。
教學(xué)難點(diǎn):驅(qū)動(dòng)程序的編寫和實(shí)現(xiàn)。
第八章 UCOS內(nèi)核分析
(一)基本教學(xué)內(nèi)容
8.1 UCOS任務(wù)管理功能
8.2 系統(tǒng)時(shí)間管理的功能
8.3 任務(wù)之間的通訊與同步
8.4 內(nèi)存管理
(二)基本要求
教學(xué)目的:熟練掌握任務(wù)與進(jìn)程、線程的區(qū)別、時(shí)間管理的功能、數(shù)據(jù)共享和任務(wù)通訊的方法。掌握UCOS如何實(shí)現(xiàn)多任務(wù)調(diào)度、與時(shí)鐘節(jié)拍有關(guān)的系統(tǒng)服務(wù)、內(nèi)存控制塊、建立一個(gè)內(nèi)存分區(qū)。
教學(xué)重點(diǎn):存儲(chǔ)管理機(jī)制。
教學(xué)難點(diǎn):存儲(chǔ)管理機(jī)制。
第九章 嵌入式圖形界面編程
(一)基本教學(xué)內(nèi)容
8.1 QT/E程序設(shè)計(jì)方法
8.2 常用的嵌入式GUI程序設(shè)計(jì)工具和使用
8.3 信號(hào)槽
(二)基本要求
教學(xué)目的:掌握信號(hào)和槽機(jī)制,QT基本的類和對(duì)象,使用Qt Designer設(shè)計(jì)部件布局和管理。理解QT程序如何移植到目標(biāo)板,環(huán)境變量設(shè)置。能獨(dú)立設(shè)計(jì)一個(gè)嵌入式GUI程序并移植到開發(fā)板上。
教學(xué)重點(diǎn):信號(hào)槽機(jī)制,嵌入式GUI程序。
教學(xué)難點(diǎn):信號(hào)槽機(jī)制。
三、課程各章節(jié)學(xué)時(shí)分配
序號(hào)
| 內(nèi)容
| 理論學(xué)時(shí)
| 實(shí)驗(yàn)學(xué)時(shí)
|
網(wǎng)工
|
|
| 網(wǎng)工
|
|
|
1
| 嵌入式系統(tǒng)概述
| 2
|
|
|
|
|
|
2
| ARM處理器基礎(chǔ)
| 6
|
|
| 2
|
|
|
3
| ARM匯編程序設(shè)計(jì)
| 6
|
|
| 2
|
|
|
4
| ARM處理器的結(jié)構(gòu)和特性
| 6
|
|
| 4
|
|
|
5
| 嵌入式軟件設(shè)計(jì)
| 6
|
|
| 2
|
|
|
6
| 實(shí)時(shí)操作系統(tǒng)
| 4
|
|
| 2
|
|
|
7
| 嵌入式linux驅(qū)動(dòng)程序設(shè)計(jì)
| 4
|
|
| 2
|
|
|
8
| UCOS內(nèi)核分析
| 2
|
|
| 2
|
|
|
9
| 嵌入式圖形界面編程
| 2
|
|
|
|
|
|
合計(jì)
| 38
|
|
| 16
|
|
|
四、本課程課外學(xué)習(xí)與修學(xué)指導(dǎo)
由于該課程涉及計(jì)算機(jī)系統(tǒng)中各種軟硬件資源的管理,內(nèi)容復(fù)雜,難度較大,且具有很強(qiáng)的實(shí)踐性,所以要學(xué)好本課程,必須做到理論與實(shí)踐緊密結(jié)合,才能達(dá)到較好的學(xué)習(xí)效果。要求學(xué)生多參閱相關(guān)書籍,多做練習(xí),多上機(jī)實(shí)驗(yàn),掌握操作系統(tǒng)的基本原理、主要算法及其實(shí)現(xiàn)過程。
五、本課程考核方式及成績(jī)?cè)u(píng)定標(biāo)準(zhǔn)
考核方式:閉卷考試
成績(jī)?cè)u(píng)定方法:本課程的考核是平時(shí)成績(jī)、實(shí)驗(yàn)成績(jī)和期終考試成績(jī)相結(jié)合。具體比例為:上課出勤、作業(yè)占20%,實(shí)驗(yàn)占20%,期末考試成績(jī)占60%。
其中期未考試總分100分,基礎(chǔ)題占50%,中等難度題占40%,較難題占10%??荚囶}型主要有:選擇題、填空題、簡(jiǎn)答題、算法題、分析題、綜合應(yīng)用題等。
六、教材及參考書
教材:《ARM9嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)教程》,于明.電子工業(yè)出版社.2006年
主要參考書:
[1]《ARM嵌入式處理器結(jié)構(gòu)與應(yīng)用基礎(chǔ)》,馬忠梅,馬廣云著航天大學(xué)出版社,2008年
[2]《ARM嵌入式技術(shù)及Linux高級(jí)實(shí)踐教程》,秦貴和,徐華中,王磊著,陳向群、馬洪兵譯,北航出版社,2005年
[3] 《嵌入式開發(fā)圣經(jīng)》(第二版),探矽工作室者,中國鐵道出版杜
大綱撰寫人:李 芳
大綱審閱人:羅如為
教學(xué)副主任:易葉青
編寫日期:2012.6