2011年4月28日 星期四

嵌入式Linux系統之操作實務/程式設計/ Device Driver精修實務班( 36H )

參考網址:http://college.itri.org.tw/SeminarView1.aspx?no=23110855&msgno=307621


 


課程使用之開發板:



 



課程名稱:嵌入式Linux系統之操作實務/程式設計/ Device Driver精修實務班(台北班) 36H


◎舉辦日期: 2011/06/01~ 2011/07/07


◎舉辦地點:台北市中正區懷寧街66


◎聯絡人: 產業學院 / 陳怡靜/ 827113/04-23506138


◎課程特色:
嵌入式Linux系統可以整合網路、無線傳輸、USB、音效裝置及ㄧ般微處理機周邊裝置等,同時具有Linux作業系統的優點及特性,所以適用於未來科技產品講求【高智慧性】、【多功能網路連結】、【無線網路傳輸】的訴求,因此嵌入式系統已變成未來生活的一個商品研發的技術基礎平台。目前嵌入式系統熱門的生活應用產品有:智慧型手機(Smart Phone)、掌上型電腦(PDA)MP3撥放機、數位機上盒(Set-Top Box)、數位視訊錄影機(DVR)、遊戲機、家庭網路閘道器(Home Gateway)、網路電話(VoIP)等。且目前嵌入式系統亦大量應用於工業控制、家用電器產品、醫療應用、遠距視訊應用…等,這些應用已經大大地影響我們的生活方式。為了因應這一波產業IT技術應用的轉變,需要大量嵌入式系統研發及測試技術的人才。


工研院規劃一系列嵌入式完整課程,完全以業界所需實務為導向,將嵌入式Linux常見之應用技術於課堂上直接講授並且實作。將軟硬體直接整合,課程範例將直接在ARM開發板上執行測試,深入淺出的將此領域之技術傳授給學員,建立紮實功力,提升您在此領域的競爭力。


本課程之嵌入式Linux系統實作與程式設計,全部是在ARM嵌入式開發板上實作完成。課程內容從ARM開發板平台開始介紹,講解ARM開發板、GNU Toolchain(Cross Compiler)Boot Loader、建立自己的嵌入式KernelRoot File System,再以自己建立的【嵌入式Linux】學習Linux指令使用及開機管理與網路設定。接著在ARM開發板以自己建立的【嵌入式Linux】為作業系統,以此OS為基礎在上面講授各種Linux 程式設計。整個【嵌入式Linux】程式設計課程,講師會現場撰寫實作程式的範例,隨後將程式透過Cross Compiler後上傳至ARM開發板執行。不同於一般幾乎都在PCLinux上講授Linux程式設計。而且這些程式範例均會在ARM開發板上與硬體結合,使學員可以熟悉《軟硬兼施》的程式設計,讓偏【純軟的工程師】不會看到硬體就傻眼、讓偏【純硬的工程師】不會看到軟體就頭痛。課程結束後可以熟悉【嵌入式Linux】程式設計。


課程目標:


1. 讓學員熟悉嵌入式系統課程所需具備之嵌入式Linux BSP操作及嵌入式Linux程式設計(含進階C語言)與嵌入式Linux Programming課程所需具備之GNU Make知識,課程以實際在ARM開發版上操作教學,讓學員未來能更專注於學習嵌入式系統相關知識。


2. ARM開發板以自己建立的【嵌入式Linux】為作業系統,以此OS為基礎在上面講授各種Linux 程式設計。


3. 課程重點在Step by Step介紹嵌入式產品開發過程中,產品研發人員如何實地撰寫【嵌入式 Linux 驅動程式】,我們從簡單的開發板之 Linux 驅動程式架構入手,進而至 Character Device 的撰寫(分別以 LED SEG-7裝置實作),並剖析 Linux 驅動程式與硬體間的運作,再深入 Linux 驅動程式撰寫的各個層面,同時搭配各種不同的周邊裝置,如 LEDLCDKeypadSEG-7Network 裝置等一般嵌入式系統常用之硬體。


修課條件: 應具備C程式語言能力與計算機基礎概念


課程日期:


10061289151622232930日及767日,18302130(每週三、四晚上)


課程大綱:


A.嵌入式 Linux操作實務:


1. How to Build an Effective Embedded Linux Environment.


2. Create Embedded System GNU Development Toolchain.


3. Boot Loader Brief Introduction.


4. How to Porting the Linux to a New ARM11 Board.


 


B. Linux Programming先修班-GNU Make


1. An Introduction to Makefiles


2. How to Writing Makefile Rules and Writing the Commands in Rules


3. How to Use Variables


4. Conditional Parts of Makefiles


5. How to Run Make


6. Using Implicit Rules


 


C.Embedded Linux 程式設計


1. What is Needed Lib for Embedded System? ( System Calls & Library)


2. Embedded Linux File I/O:★【LabSTDIO/STDOUT Programming


3. Embedded Linux Files and Directories:★【Labopen/create/read/ write/lseek/fcntl/close


4. Embedded Linux Standard I/O Library


LabBuffering I/OReading and Writing a StreamBinary I/OFormatted I/O


5. Embedded Linux Termios:★【LabRS232 Programming


 


D.Embedded Linux Device Driver


1. 嵌入式Linux 驅動程式程式架構


2. 嵌入式Linux 驅動程式之程式設計流程:Building and Running Module


LABHello World on ARM 開發板


3. 嵌入式Linux字元驅動程式


LABA Simple LED Device Driver on ARM 開發板


4. 除錯技術:Debugging Techniques


LABCreate a /Proc Entry File system on ARM 開發板


5. 進階Linux字元驅動程式


LABThe LED Device Driver Using IOCTL on ARM 開發板


6. Getting Hold of Memory and Hardware Management


LABARM BSP I/O Operations on ARM 開發板


7. Flow of Time: Current TimeDelaying ExecutionTask QueuesKernel Timers


LABARM BSP Experiment for LCM(or LED) Device on ARM 開發板(Current TimeDelaying ExecutionTask QueuesKernel Timers)


8. 嵌入式Linux Interrupt Handling


LABARM BSP Interrupt Example on ARM 開發板


9. 嵌入式Linux Memory Mapped I/O


LABFrame Buffer on ARM 開發板


10. 嵌入式Linux 區塊驅動程式


11. 網路卡驅動程式(以網路晶片DM9KS為例)DM9KS ICs Network Device Driver Tracing


12. Embedded Linux-USB Device Driver(USB驅動程式)


LABA Simple USB Drive Tracing


13. Add your Device Driver into Kernel/ How to Porting Device Drivers to the 2.6 Kernel


LABOn ARM 開發版 Experiment: 1.Add a LED Driver into Kernel 2. Make Kernel 3.Testing 


 



 

沒有留言:

張貼留言

FPGA Verilog 的學習經驗,提供給要入門的新手

今天簡單說說 FPGA Verilog 的學習經驗,提供給要入門的新手: 1.對自己寫的FPGA Verilog程式,所生成的數位電路要心中有數。 這一點個人認為很重要,就正如寫 C語言,心中要能生成對應的組合語言一樣,我是這樣要求自己的。 雖然 FPGA Verilog語言...