廣嵌廣州嵌入式Linux開發(fā)就業(yè)班
課程描述 本課程是基于ARM+LINUX的軟硬件培訓(xùn)體系結(jié)構(gòu)。培訓(xùn)課程的重點是:S3C2410及其外圍芯片的設(shè)計與編程,linux內(nèi)核開發(fā),嵌入式linux的移植,開發(fā)驅(qū)動程,開發(fā)GUI程序。 課程目標(biāo) 通過本課程,學(xué)員可以掌握以下技能:基于S3C2410平臺的嵌入式linux移植,開發(fā)嵌入式linux驅(qū)動程序,開發(fā)TE圖形界面;員掌握嵌入式linux項目的完整開發(fā)流程。相當(dāng)于在企業(yè)經(jīng)過1年的研發(fā)水平。 培訓(xùn)對象 有志從事嵌入式linux開發(fā)的學(xué)員。 入學(xué)要求 您需“掌握”的基礎(chǔ)是C語言、英語;需要“了解”的基礎(chǔ)是操作系統(tǒng)原理,Linux常用命令的熟悉與使用;如果您能再涉獵些相關(guān)電子電路,匯編等知識,就*不過了。 授課講師 梁老師 課 時 6周 開課時間 2008年10月18日--2008年12月3日 上課地點 *廣州科學(xué)城彩頻路11號( 廣東軟件科學(xué)園 )D棟6樓 費 用 5500元 課程內(nèi)容 *部分:ARM課程(6天) ARM體系結(jié)構(gòu) 1)嵌入式處理器概述;2)ARM體系結(jié)構(gòu);3)ARM指令分類及其尋址方式;4)ARM程序設(shè)計; ARM的C編程 1)ARM C/C++ 混合編程;2)ADS的使用;3)ARM開發(fā)調(diào)試環(huán)境的建立; 實驗:1、匯編語言實驗;2、匯編、C語言混合編程實驗。 S3C2410A處理器 1)S3C2410A處理器體系結(jié)構(gòu);2)S3C2410A 啟動代碼分析-匯編;3)S3C2410A中斷控制器; 實驗:1、外部中斷實驗;2、矩陣鍵盤掃描實驗。 4)S3C2410A看門狗控制器;5)3C2410A PWM時鐘應(yīng)用;6)S3C2410A實時時鐘控制器; 實驗:定時器實驗(看門狗、PWM時鐘、實時時鐘)。 7)S3C2410 Nand flash控制器;8)S3C2410啟動代碼分析-C部分;9)S3C2410串口控制器; 實驗:1、flash控制器實驗;2、串口控制器實驗。 10)S3C2410A IIC控制器;11)S3C2410A LCD控制器;12)S3C2410A觸摸屏控制器; 實驗:1、IIC控制器實驗;2、LCD控制器實驗3、觸摸屏控制器實驗。 第二部分:嵌入式linux基礎(chǔ)課程(3天) linux 快速入門 1)Linux 概述;2)Linux 的主要發(fā)行版;3)Linux開發(fā)環(huán)境搭建-vmware虛擬機(jī);4)Linux的基礎(chǔ)知識;5)Linux文件系統(tǒng)和文件;6)Shell的使用;7)常用的shell命令;8)Linux的軟件安裝; 實驗:1、安裝linux系統(tǒng);2、常用命令練習(xí) linux開發(fā)基礎(chǔ) 1)Linux 的編程常識;2)Linux下VIM的使用;3)編譯器GCC的使用;4)調(diào)試器gdb的使用;5)項目管理工具make的使用; 實驗:1)gcc編譯器使用;2)gdb調(diào)試;3)編寫Makefile 嵌入式Linux開發(fā)環(huán)境的搭建 1)嵌入式系統(tǒng)定義;2)Linux交叉開發(fā)環(huán)境介紹;3)GNU交叉工具鏈的安裝與使用;4)宿主機(jī)與PC機(jī)間的通信;5)串口通信,以太網(wǎng)通信;6)交叉調(diào)試; 實驗:1)minicom,超級終端配置實驗;2)NFS共享設(shè)置實驗 第三部分:嵌入式linux編程(4天) Linux應(yīng)用編程 1)linux進(jìn)程控制;2)進(jìn)程間通信;3)文件操作編程; 實驗:進(jìn)程實驗,進(jìn)程間通信實驗,文件操作實驗; Linux網(wǎng)絡(luò)編程 實驗:服務(wù)器與客戶端 T程序設(shè)計 1)Linux下gui編程介紹;2)t介紹;3)通過t designer認(rèn)識t;4)信號和槽;5)t的事件 實驗:1)“Hello word!”t ;2)對象間通信:3)Signal 和 Slot 機(jī)制;4)對話框;5)t 中的多線程編程;6)t 中的網(wǎng)絡(luò)編程。 第四部分:嵌入式linux驅(qū)動課程(5天) 嵌入式Linux內(nèi)核配置與編譯 Linux內(nèi)核模塊設(shè)計 Linux字符設(shè)備驅(qū)動設(shè)計 驅(qū)動中的并發(fā)控制、中斷、延時 實驗: 1)GEC2410小鍵盤驅(qū)動實例;2)Linux的IIC設(shè)備驅(qū)動分析 第五部分:嵌入式linux移植課程(4天) 引導(dǎo)加載程序設(shè)計 1)bootloader介紹;2)u-boot軟件工程;3)u-boot配置與編譯;4)u-boot移植;5)u-boot 使用 實驗:u-boot常用命令,分析修改u-boot源代碼,移植到GEC2410開發(fā)板上。 linux內(nèi)核移植 1)Linux內(nèi)核介紹;2)Linux內(nèi)核源代碼結(jié)構(gòu);3)Linux內(nèi)核配置系統(tǒng);4)Linux內(nèi)核配置與編譯;5)Linux內(nèi)核啟動流程分析 實驗:移植linux內(nèi)核到gec2410開發(fā)板 根文件系統(tǒng)制作 1)根文件系統(tǒng)介紹;2)根文件系統(tǒng)的目錄結(jié)構(gòu);3)根文件系統(tǒng)內(nèi)容;4)添加設(shè)備文件;5)添加動態(tài)鏈接庫;6)添加系統(tǒng)應(yīng)用程序;7)添加配置文件 實驗:使用busybox,bash等開源軟件構(gòu)建根文件系統(tǒng); 第六部分:實踐項目(7天) 實踐項目:VOD視頻點播 (學(xué)員在講師輔導(dǎo)下獨立完成) 項目階段一:bootloader的移植 項目階段二:內(nèi)核的移植 項目階段三:根文件系統(tǒng)的制作和移植 項目階段四:播放器的移植 項目階段五:界面的編寫和vod的編寫