華清遠見嵌入式linux課程?

一下主要課程詳情介紹:(僅供參考)

課程名稱:嵌入式學院—嵌入式LINUX工程師就業培訓班

上課時間為:上午9:00—12:00 下午13:30—17:30(每天7小時正式上課時間)晚自習18:00—21:00

第一階段:嵌入式Linux軟體工程師

職場定位:Linux Development Engineer for Software Engineering

本期目標:嵌入式系統是現在最熱門的計算機應用領域之一,嵌入式C語言在其中起著至關重要的作用。一個精通C語言程式設計的程式設計師,可以很容易地進入Linux、WinCE、Vxworks等嵌入式作業系統下的軟體開發工作。本階段學習目標是掌握C語言基本知識、C程式設計語法基礎和Linux作業系統的使用,並熟練掌握嵌入式Linux的開發環境,為將來的程式設計工作打基礎。

介紹下主要課程:

1、Linux作業系統使用

本課程從零起點,講解Linux作業系統的概念和安裝方法,詳細介紹Linux下的基本命令、管理配置和編輯器,包括VI編輯器,GCC編譯器,GDB偵錯程式和Make專案管理工具等知識。

掌握要求:精通

2、嵌入式Linux C語言高階程式設計

C語言是嵌入式領域最重要也是最主要的程式語言,本課程將在學員C語言基礎知識之上,通過大量程式設計例項重點講解C語言的高階程式設計知識,包括函式與程式結構、指標、陣列、常用演算法、庫函式的使用等知識,另外,本節還重點講解資料結構的基礎內容,包括連結串列、佇列、棧、樹、雜湊表、圖等內容。

3、C++面向物件程式設計

C++是Linux應用開發主要語言之一,本節重點讓學員掌握面向物件程式設計的基本思想,以及C++語言的基礎內容,為後面的課程做好鋪墊。

4、嵌入式Linux專案開發流程

本課程主要讓學員從巨集觀瞭解嵌入式Linux開發環境搭建和專案開發流程,讓學員建立起整體架構的概念,包括嵌入式產品需求分析和選型、硬體平臺、移植、啟動程式碼、驅動開發、系統部署等整個過程。

第二階段:嵌入式Linux系統工程師

職場定位:Linux Development Engineer for Embedded Systems

證書:微軟嵌入式工程師認證證書(認證費500元),紅帽公司《Linux應用開發工程師證書》(認證費500元)

本期目標:參加本期培訓的學員應該掌握嵌入式C語言程式設計技巧。嵌入式Linux應用開發和系統開發是嵌入式Linux中最重要的一部分,也是企業人才需求最廣的一部分。本期學習的主要目標是精通嵌入式Linux下的程式設計,熟悉嵌入式Linux開發流程,強化學員對Linux應用開發的理解和編碼除錯的能力,同時掌握bootloader和kernel的移植技能,瞭解ARM體系結構和程式設計,具備ARM硬體介面的基礎知識,並瞭解Linux核心開發相關內容,初步掌握Linux下的驅動程式開發方法。另外,本期課程還會讓學員瞭解另外一個比較重要的嵌入式作業系統:Windows CE,使學員在掌握嵌入式Linux的同時,也瞭解Windows CE的開發方法,拓展學員的知識面,豐富學員的知識結構。最後通過幾個典型的企業全真案例,進一步鞏固本期課程內容,使學員真正學以致用。

5、嵌入式Linux高階應用程式設計

嵌入式Linux應用開發是嵌入式Linux中最重要的一部分,也是就業面最廣的方向。本課程的主要目標是精通嵌入式Linux下的程式設計,精通嵌入式Linux開發環境,強化學員對Linux應用開發的理解和編碼除錯的能力,包括系統程式設計、檔案I/O、多程序和多執行緒、網路程式設計、GUI圖形介面程式設計、資料庫。

6、ARM處理器程式設計

RM是嵌入式領域最主要的CPU處理器,瞭解ARM處理器的基礎知識將為後面課程的底層開發打好堅實基礎,本課程內容包括ARM處理器體系結構、程式設計環境、指令集、定址方式、除錯、彙編和混合程式設計等方面的內容,為後面移植課程的學習打好基礎。學完此課程學員可獲得ARM公司全球統一授權培訓證書。

7、ARM硬體介面開發

本課程重點介紹ARM的常用介面開發及硬體電路設計基礎(包括IO、串列埠、看門狗、實時時鐘、SPI、IIC、掃描鍵盤、FLASH操作等),為以後的裝置驅動的學習打好基礎。

8、嵌入式Linux系統開發

系統開發是嵌入式Linux底層開發必備的基本技能,本課程將教會學員在硬體電路板做好的情況下,如何從零開始搭建嵌入式Linux執行環境,內容包括核心裁減、核心移植、交叉編譯、核心除錯、啟動程式Bootloader編寫、根檔案系統製作和整合部署Linux系統等整個流程。

9、嵌入式Linux核心開發

本課程是驅動開發的基礎課程,深入核心細節,瞭解Linux相關執行機理,為後面的驅動開發打好理論基礎,內容包括核心原始碼結構、記憶體管理、程序管理、中斷管理、系統呼叫、核心同步、時鐘和定時器管理、訊號、排程、程序間通訊、檔案系統和I/O裝置管理等方面的內容。

10、嵌入式Linux驅動開發基礎

介紹嵌入式Linux驅動開發相關概念及開發流程,瞭解驅動涉及到的關鍵技術點,並重點學習字元裝置驅動開發,包括串列埠、I/O、看門狗、實時時鐘、SPI、IIC、掃描鍵盤、A/D轉換、定時器等介面的驅動開發,為第三期課程深入學習驅動高階開發打好基礎。

11、WinCE作業系統開發基礎

Windows CE是目前另外一個最主流的嵌入式作業系統,嵌入式學院利用自身在Windows CE系統方面的教學優勢,使學員瞭解Windows CE應用開發和系統開發的特點,並對比Linux作業系統,讓學員瞭解目前主流嵌入式OS的異同點,增進對嵌入式OS開發的理解,拓展學員知識面,增加就業渠道。學完此課程學員可獲得Microsoft公司全球統一授權培訓證書。

12、綜合案例的實戰訓練

在第二階段課程中,為了幫助學員充分有效地掌握核心知識點在企業中的具體應用,並開始逐步按照企業需求、流程和規範進行實戰訓練,在嵌入式Linux應用開發、系統核心開發的課程講授過程中全部採用專案驅動的方式,將來自合作企業的全真案例貫穿於課程中,實現的功能包括:基於本機多程序的聊天工具、基於QT的即時通訊系統、基於ARM的溫控系統、汽車防盜系統及基於QT的多媒體播放器等。通過這種方式帶領學員分析企業崗位的真實技術需求,進行案例演練,從而快速掌握相關的技能和開發技巧。

第三階段:嵌入式Linux驅動工程師

職場定位:Embedded Linux Driver Development Engineer

證書:嵌入式學院《嵌入式Linux工程師職業資格證書》(認證費800元),ARM公司全球統一認證證書(認證費500元),Atmel公司全球統一《Atmel嵌入式工程師認證證書》(認證費500元),工業和資訊化部《國家資訊科技應用技能嵌入式Linux工程師認證證書》(認證費500元)

本期目標:參加本期培訓的學員應該掌握嵌入式Linux應用開發和系統開發能力。本期學習的主要目標是掌握嵌入式產品開發從需求分析到詳細設計整個過程的開發內容,深入掌握Linux驅動程式開發技巧,能夠熟練的移植或編寫裝置驅動。同時,本期課程還重點講解嵌入式Linux在3G領域的典型應用--3G手機Android作業系統,全面瞭解Android系統的開發過程和行業前景,在專業講師的帶領下,實戰體驗Android應用程式的開發及系統移植。最後,本期將重點花一個月時間,讓學員從零開始完整完成一個真實專案的設計,使學員在鞏固所學內容的同時,迅速積累專案設計經驗,達到並超過企業用人需求,另外,通過實際專案案例,可以發現學員知識薄弱環節進行重點加強。目前嵌入式學院提供的真實專案包括:遠端視訊監控系統、商用POS機、汽車導航GPS、個人娛樂系統PMP,每期學員可完整完成其中一個專案。

13、嵌入式Linux驅動高階開發

驅動開發是嵌入式Linux開發難度最高的內容,也是目前嵌入式行業最緊缺的人才之一。有了前面課程知識的鋪墊,本課程將重點講解嵌入式Linux下常用介面驅動的編寫方法,內容包括:

13.1、flash驅動:掌握在linux環境下驅動常見flash儲存器(nor flash、nand flash);13.2、塊裝置驅動:掌握塊裝置驅動的原理、學會ramdisk的編寫;13.3、網絡卡驅動:掌握網絡卡裝置的編寫原理、能夠熟練移植各種網絡卡驅動。在對網絡卡硬體暫存器熟悉的基礎上,有能力為其編寫出完善的網絡卡驅動;13.4、液晶驅動:掌握frambuffer驅動的原理。有能力在有控制器的嵌入式平臺上參考液晶手冊實現各種常見液晶驅動;13.5、sd卡驅動:掌握sdio介面操作,熟悉sd卡驅動驅動的原理;13.6、usb裝置驅動:瞭解usb主機裝置驅動的結構及程式設計方式。

14、嵌入式Linux在3G領域的典型應用--3G手機Android作業系統

介紹嵌入式Linux在3G領域的典型應用Android系統,瞭解Android系統如何由嵌入式Linux衍生出來的,以及Android系統和嵌入式Linux系統差異化,瞭解Android系統的體系結構、開發特點以及關鍵技術點,並重點學習ARM對Android系統的支援現狀,掌握ARM平臺上的Android相關開發工具和解決方案,重點講解Android系統在ARM平臺上的移植過程,介紹Android系統底層驅動開發和嵌入式Linux驅動開發的差異化,最後介紹ARM+Andriod平臺組合的行業應用前景,使學員全面瞭解Android系統的開發過程及發展前景。

15、Android應用程式開發

主要針對目前嵌入式裝置上另外一個主流的應用程式開發平臺Android,包括Android體系結構和原理,Android應用程式開發工具的使用,在成功移植Android的平臺上開發和部署應用程式,進而驗證嵌入式Linux系統移植後的穩定性等。以幫助學員進一步拓展和補充嵌入式應用開發的相關內容。

16、嵌入式Linux專案實踐

本課程將通過一個真實完整的專案案例,讓學員瞭解真實專案的開發流程,讓學員知道如何將所學知識應用到專案開發中。本課程將模擬真實專案的管理過程,培養學員專案團隊協同開發能力,專案文件編寫能力和新知識的學習能力,為下一步就業做好知識上和心理上的充分準備。目前學員在嵌入式學院可完成的真實專案包括:遠端視訊監控系統、商用POS機、汽車導航GPS、個人娛樂系統PMP、3G智慧機器人,學員可在嵌入式學院學習期間獨立完成其中一個專案。

嵌入式學院學員實踐專案案例介紹 ——專案案例1:基於GPRS的遠端安防監控系統1.專案背景

隨著現代電力電子技術和微電子技術的迅猛發展,自動化,智慧化程度的不斷的提高,家居安防技術正在不斷髮展。傳統的家居安防系統已經越來越不能滿足現代人的需求。消費者希望自己可以實時“看見”現場的情況,並且可以遠端控制現場的一些自動化裝置來處理緊急情況。這個專案的方案主要是利用internet、GPRS,3G、WIFI等技術實現遠端監控通訊,此係統不但具有易維護性、可擴充套件性和安全性等這些嵌入式基本特點,而且充分融合了嵌入式和通訊技術。使得本系統的功能擴充套件性非常好,方案具有一定領先性,可以稍做定製就可以應用於很多其它場合。對我們掌握嵌入式LINUX傳統技術和比較新的3G技術和為畢業後找工作都應該有幫助。

2.專案功能介紹

遠端安防監控專案功能介紹,此係統分為服務端和客戶端2個部分,其中服務端由ARM作為主控,作業系統採用嵌入式LINUX實現,它通過實時採集紅外、溫度、煙霧探頭以及USB攝像頭的的資料,通過網際網路將資料傳送到客戶端進行顯示和告警,客戶端由PC,傳統手機和比較新的3G手機相互比較獨立的幾個部分組成。

監控專案功能示例圖

3.技術點

1)uboot移植

2)核心移植及網絡卡驅動

3)Nandflash驅動壞塊管理

4)Usb協議,USBHOST驅動移植及分析

5)Sd卡驅動和自動卸掛載

6)Adc溫度感測器驅動以及應用控制

7)Usb Camera驅動以及雲臺控制

8)人體感應器以及煙霧探測器驅動以及應用控制程式設計

9)USB Wifi驅動及配置

10)GPRS收發簡訊及應用功能封裝

11)Server端的主體實現及各個功能模組劃分和綜合

12)Android客戶端的實現

13)其它技術點

通過上面可作為技術點的實現,可實現的功能如下:

1)監控機可以通過攝像頭採集現場影象;

2)監控機可以通過感測器採集現場火警等資料;

3)監控機可以通過紅外感測器探測是否有人進入現場(或家中,可用做防盜);

4)監控機可以在異常情況下給使用者傳送簡訊報警;

5)監控機可以儲存特殊情況下的資料和照片;

6)使用者可以通過網路登陸監控機的主頁(有許可權驗證);

7)使用者可以在主頁上觀察到監控機通過攝像頭採集到的現場影象;

8)監控機可以將特殊情況下的資料和照片存在SD卡中,要實現卡的動態插拔檢測和掛載;

9)使用者除了可以在主頁上觀察到監控機通過攝像頭採集到的現場影象外,使用者還可以在主頁上遮蔽或開啟溫度、闖入、USB攝像頭監控功能;

10)新增日誌功能,結合SQLITE,在網頁中或者WINDOWS上PC機軟體中能夠檢視和操作日誌;

11)監控機本身可擴充套件本地顯示控制功能。通過新增郵件傳送功能。收集報警資訊,並讓系統自動通過簡訊和郵件的方式通知事先設定好的管理員,當異常發生時通過網路傳送抓拍的圖片到指定郵箱;

12) USB CARERA雲臺功能支援,使用者可以在網頁上對攝像頭的亮度進行控制;新增巡航功能,讓用過在網頁中能夠定製和實時控制USB CAMERA鏡頭的轉動,實現巡航功能;在異常發生的時候,鏡頭可以快速對著使用者預先定義的區域進行抓拍;

13)監控機可以通過GPRS接入INTERNET,WIFI接入區域網,加上ethernet提供多中接入網路的方式,根據具體的網路接入情況智慧選取網路進行資料傳送;

14)開發android手機程式,實現在手機裡面實現檢視日誌,抓圖,或者視訊瀏覽功能;

15)支援彩信的方式報警(選做);

16)畫面變化偵測(選做);

17)完善WINDOWS客戶端,支援影象的視訊流格式進行AVI,MP4或H.264的壓縮和儲存,檢索(選做);

18)上面沒有列出的,以後可能再加入進去的功能。

嵌入式學院學員實踐專案案例介紹 ——專案案例2:車載導航系統

1.專案背景

現在,隨著GPS技術、多媒體應用、LCD顯示技術的日趨成熟,汽車導航、防盜系統在高階汽車中已經是現實,而在普通汽車中實現,也是指日可待了。車載導航系統中包含了很多前衛、實用的技術,如:GPS應用技術、GPRS應用技術、GUI開發技術、多媒體功能應用技術、感測器技術、嵌入式作業系統應用開發技術、系統構建技術、驅動編寫技術、資料庫技術等等。學員通過專案的完成,對於鞏固理論知識、拓展實用的專案經驗都有很大的幫助。

2.系統功能說明

定位功能:GPS通過接收衛星訊號,可以準確地定出其所在的位置,位置誤差小於10米。利用GPS,在地圖上實時顯示車輛當前位置; 地圖導航功能:輸入目標地點後,自動在地圖上顯示出行車路線;重假如使用者因為不小心錯過路口,沒有走車載GPS導航系統推薦的最佳線路,新為使用者設計一條回到主航線路線,或是為使用者設計一條從新位置到終點的最佳線路; 語音導航功能:輸入目標地點後,車輛只要遇到前方路口或者轉彎,車載GPS語音系統提示使用者轉向等語音提示; 防盜功能:通過傳送gprs簡訊,可以返回車輛當前位置; 娛樂功能:播放U盤、SD卡中的MP3、MP4檔案; 智慧導航功能:在短時間失去GPS訊號時,可根據車內的加速度感測器、結合行車速度計算出行車情況; 增加興趣點功能:由於我國大部分城市都處於建設階段,隨時隨地都有可能冒出新的建築物,由此,電子地圖的更新也成為眾多消費者關心的問題。因此遇到一些電子地圖上沒有的目標點,只要你感興趣或者認為有必要,可將該點或者新路線增加到地圖上。

3、硬體需求

名稱 說明

CPU S3C2410,2440

SDRAM 64M

USB 1個USB Host介面,1.1標準

網口 10M

串列埠 2個3線串列埠

SD卡介面 SD卡容量1G

I/O 8路I/O

LCD 3.5寸240*320 TFT屏

觸控式螢幕 4線電阻式觸控式螢幕

GPRS模組 3線串列埠接線

GPS模組 3線串列埠接線

加速度感測器 輸出電壓範圍0-3V

U盤 容量1~4G

SD卡 容量1~4G

4、軟體需求

名稱 說明

作業系統 Linux-2.6.26

開發工具 GNU工具

啟動程式碼 u-boot 1.3.4

驅動程式 所有硬體驅動

檔案系統 根檔案系統採用cramfs,使用者檔案系統採用yaffs2

GUI QT

地圖

嵌入式學院學員實踐專案案例介紹 ——專案案例3:3G智慧機器人

1.專案背景

隨著物聯網技術、3G通訊技術、多媒體技術、機電控制技術的日趨成熟,基於相關技術的產品也備受消費者的歡迎。目前嵌入式用人市場上緊缺相關人才。家用智慧機器人專案正是在此背景下設立的。

3G智慧機器人專案中包含了的技術有: ● 感測器技術 ● RFID射頻識別技術 ● Wifi通訊技術 ● Android手機開發技術 ● 音、視訊採集、處理技術 ● 多媒體傳輸技術 ● Linux驅動程式設計技術 ● 電源管理技術 ● 電機控制技術 ● Linux網路開發技術 ● Linux其它應用程式設計技術 ● ARM11開發技術

由於專案涉及的技術較新,覆蓋技術面廣,且難度大,所以專案目前正在不斷的完善過程中。學員在較短的時間內,無法涉及或掌握專案的所有技術。所以針對這個專案的特點,學校計劃設定成為學校內部的開源專案。學員在畢業以後仍然可以加入到專案的開發中,且可以獲得到專案的最新成果。

2.專案結構圖

3、系統功能簡述

使用者可以在其android手機上安裝專案開發的andorid程式,實現遠端控制智慧機器人。機器人利用其豐富的感測器實時檢測周圍的環境引數,並在遇到緊急情況時主動通知使用者。機器人和手機間可以實現視訊、語音等多媒體通訊。使用者可以通過手機控制機器人運動,也可以通過機器人控制家中的其它智慧裝置。

4、部分實物照片

實驗裝置

國內獨家同時提供Samsung和Atmel嵌入式開發平臺

ARM公司Realview模擬器

IAR J-Link/J-Trace ARM模擬器

夏普液晶觸控式螢幕

三星S3C2410A ARM9開發板

三星S3C2440A ARM9開發板

Atmel EB-SAM9G45(帶屏)的開發板

Atmel EB-SAM9G45(帶屏)的開發板

三星S3C6410 ARM11開發板

基於三星S3C6410 ARM11的實驗裝置

附自主研發的Cortex-A8實驗平臺(FS_S5PC100)介紹

FS_S5PC100採用底板與核心板結構設計。核心板採用8層板+盲埋孔+阻抗控制+沉金工藝,穩定可靠。核心板的資源有:s5pc100處理器、256MB DDR2記憶體、128MB Nand Flash(可擴充套件為1GMB)、2M Nor Flash。

FS_S5PC100擁有豐富的硬體介面,包括:VGA介面、LCD介面、TVout介面、Camera輸入介面、3路串列埠、1路紅外收發、SD卡介面、SPI、100M網口、USB2.0-OTG介面、4路USB Host介面、音訊輸入輸出介面、按鍵、SPI的E2PROM (用於SPI實驗)、I2C的溫度感測器(用於I2C實驗)、蜂鳴器(用於PWM實驗)、變阻器(用於A/D實驗)、HDMI、藍芽、wifi等。

自主研發的最新Cortex-A8實驗平臺:FS_S5PC100

附自主研發的Cortex-A8實驗平臺(FS_S5PC100)硬體配置清單:

FS-S5PC100核心板硬體配置:

● Samsung S5PC100處理器,ARM Cortex-A8核心,最高主頻為800MHz; ● 256M Bytes DDR2記憶體,採用兩片SamsungK4X1G163晶片,執行速率166MHz; ● 256M Bytes Nand Flash,採用SamsungK9F2G08晶片,可定製128M 到2G容量; ● 採用MAX811T復位晶片,控制系統復位操作; ● 分離式電源設計,獨立電源晶片提供核心板各路電源; ● 2.00mm間距雙排插針聯結器與底板相連;

FS-S5PC100底板硬體配置: ● 四位撥碼開關,用來配置系統啟動方式; ● 三路UART介面(兩路5線串列埠,一路3線串列埠); ● 四路USB HOST,支援USB1.1協議,使用USB A型介面; ● 一路USB OTG,支援USB2.0協議,使用mini-USB AB型介面; ● 一個標準20 pin 2.54mm間距JTAG介面; ● 六個使用者按鍵,功能上、下、左、右、確定和返回(使用者也可自定義其功能); ● 一個復位按鍵,連線MAX811T復位晶片; ● 四個使用者LED指示燈; ● 兩個高速SD/MMC介面,其中一個可支援8位模式。可以實現SD Memory功能和SDIO功能;作為SD Memory最大可以支援32GB容量;作為SDIO,可以連線WIFI、DTV等模組; ● 一路攝像頭介面,支援ITU-R BT601/656八位模式; ● 自帶4.3寸TFT真彩液晶屏和觸控式螢幕,採用0.5mm間距FPC介面; ● 一個50針LCD、觸控式螢幕插針介面,方便連線其他型號LCD; ● 一個VGA視訊輸出介面,採用SDA7123晶片,最大支援1024*768解析度; ● 一個TVOUT視訊輸出介面; ● 一個AC97音訊介面,包括一路音訊輸出和一路麥克風輸入,採用WM9713晶片; ● 兩個1W功放,可接兩個喇叭; ● 一個100Mbps乙太網口,採用Davicom DM9000AE晶片; ● 兩個高速SPI介面,可以連線WIFI、DTV等模組; ● 一個I2C溫度感測器; ● 一個SPI介面的E2PROM; ● 一個紅外通訊介面,一路紅外收發; ● 一個PWM蜂鳴器; ● 一個8x8矩陣鍵盤介面; ● 兩個A/D輸入埠; ● 一個GPIO介面,有12個IO口,可以作為輸入、輸出和中斷等功能; ● 一個外部鈕釦電池,在開發板斷電後可為CPU提供RTC電源; ● 採用標準12V、2A介面卡供電,電源設計有保險絲,保護板子由於誤操作造成損壞; ● 2.00mm間距雙排插針聯結器與核心板相連;

相關問題答案