課程課時授課內容
第一部分 C語言項目實戰(zhàn)程序設計 20C語言是嵌入式領域最重要也是最主要的編程語言。 本課程將在C語言基礎知識之上,通過大量編程實例講解C語言的高級編程知識,包括函數(shù)與程序結構、指針、數(shù)組、常用算法、庫函數(shù)的使用等知識。 強調C語言隱蔽性錯誤的避免;培養(yǎng)良好的編程規(guī)范。
第二部分 ARM體系架構及硬件接口的軟硬件設計 50嵌入式系統(tǒng)概述與ARM簡介: ARM處理器與其他體系結構處理器異同比較;ARM芯片選型;ARM外圍硬件設計;ARM程序和算法;ARM操作系統(tǒng)(uC/OS-II/ARM Linux/uCLinux/WinCE)。 ARM體系架構:ARM的工作模式;ARM存儲器格式;ARM運行模式;ARM寄存器組織;ARM的異常;流水線。ARM指令系統(tǒng)與匯編語言編程:ARM指令概述與特點;ARM尋址方式;ARM指令集; Thumb指令集;ARM匯編語言編程。接口電路:鍵盤輸入電路;LED顯示電路;LCD顯示電路;串口通信電路;實驗:開發(fā)工具的方法、流程和技巧;開發(fā)板外設接口實驗。
第三部分 Linux基礎知識與編程初步 20操作系統(tǒng)基礎篇:虛擬機及Linux安裝;linux操作技巧;linux常用操作命令;linux目錄結構詳解;vi使用講解;Linux編程基礎:shell編程設計;交叉編譯器套件構建及使用;gcc使用;make工具、makefile、automake工具使用。主機調試及遠程調試實驗:Linux系統(tǒng)安裝;shell命令實驗;shell編程;gcc 和gdb的使用;make的使用等。
第四部分 基于ARM的嵌入式Linux開發(fā)30 嵌入式Linux綜述:嵌入式linux的典型應用及分類,RTLinux、ARMlinux、 uClinux;嵌入式Linux開發(fā)基本概念,啟動代碼、 內核代碼、根文件系統(tǒng),驅動程序、 設備文件、文件系統(tǒng);嵌入式Linux開發(fā)工具介紹:嵌入式Linux開發(fā)環(huán)境搭建;交叉編譯器的使用和安裝;嵌入式Linux開發(fā)中的常用工具;嵌入式開發(fā)的調試環(huán)境。分析典型的bootloader:常用的幾種bootloader介紹(uboot、armboot、redboot);Bootloader的基本啟動流程和架構開發(fā)注意事項;嵌入式Linux系統(tǒng)的內存地址分配和內核加載。實驗:嵌入式linux開發(fā)環(huán)境建立;根文件系統(tǒng)的建立;基于ARM的QT實驗。