104學習精靈

全部 課程 貼文 教室 證照 影片
軟硬整合相關的課程 (2)
從工作推薦課程
Linux驅動程式
用Raspberry Pi學Linux驅動程式,並且搭配本公司所設計的Raspberry Pi I/O擴充板作為驅動程式實戰演練,實戰GPIO, UART, I2C, SPI等Linux硬體驅動,讓您在學習的過程中能夠快速了解硬體架構及軟體架構。 1.學習Driver撰寫的各個層面,包含核心API、中斷處理、同步、記憶體管理等等。 2.導正學員Linux Device Driver與Linux基本作業系統的觀念,為將來的Driver coding打下良好的基礎。 3.可以了解user-space與kernel-space之間的關係。 4.可以開始研讀及參考kernel裡面或是別人撰寫的device driver source code。 學習目標: 1. 能掌握Linux驅動程式設計概要及學習方法 2. 能看懂drivers目錄中與你要寫的類似驅動程式,並能依此參考並能加以改寫完成你自己的驅動程式 章節架構: ► Linux 驅動程式架構 ► Linux HAL ► Linux Driver開發流程 ► 核心程式碼與Makefile ► Driver 模組編譯與載入 ► 字元裝置Driver ● Character_Driver (1) ● Character_Driver (2) ● Character_Driver (3) ● Udev ► Linux Misc Device ► Linux GPIO Driver Framework ● Linux GPIO Lib ● BCM2835 GPIO 控制說明 ● Linux GPIO Host Controller驅動程式 ► Linux 中斷服務程式 ► Linux中斷控制器HAL層 ► Bottom Halves (Tasklet & Work Queue) ► 進階字元Driver ● Wait Queue ● Completion及非同步通知 ● Kernel Timer List (Jiffies, timer ticks) for LED 閃爍 ► Linux Platform Device & Platform Driver ► Linux Device Tree ► Linux SPI Driver Framework ● SPI簡介 ● SPI Flash 操作 ● Linux SPI Client驅動程式 for SPI Flash ● Linux MTD 驅動程式 ● Linux SPI Bus master驅動程式 ► Device Tree for ADC Driver (MCP3008) ► Linux I2C Driver Framework ● I2C 簡介 ● Linux I2C Framework(1) ● Linux I2C Framework(2) ● Linux I2C Bus master驅動程式 ► Linux UART Driver Framework ► Linux User Space Driver - BCM2835 C I/O Library
艾鍗學院
嵌入式Linux設計開發
「嵌入式系統」是所有電子產品最重要的底層核心技術之一。從工業自動化控制設備、機器人、WiFi路由器、汽車、電動車充電樁,到手機與平板等行動裝置、各種互動式多媒體機台、監控與電信設備、醫療設備等,都採用了嵌入式系統。在半導體技術與人工智慧的發展下,AI與物聯網中各種嵌入式終端整合為AIoT系統,帶動嵌入式應用更加多元、智慧與彈性。儘管科技持續迭代變化,嵌入式技術的重要性仍未動搖,嵌入式Linux開發人才在半導體與電子資訊科技產業依然炙手可熱。 然而,由於學習嵌入式有一定的門檻和難度,學習者普遍面臨著整體概念模糊、實作經驗不足、學習與應用之間的落差,以及相對複雜的軟硬體整合等問題。因此,艾鍗力邀業界資深工程師聯手打造嵌入式系統學程。帶你熟悉Linux系統環境及伺服器安裝,了解Embedded Linux的主要部份包含:Toolchain, Bootloader, Kernel, Root Filesystem。上手Embedded Linux BSP:Buildroot與OpenWrt。 學習目標 1. 能清楚掌握嵌入式Linux的開發流程,並了解業界如何進行嵌入式產品開發與生產。 2. 瞭解如何建構一個完整的嵌入式Linux系統,並能夠進行軟硬體系統的整合、移植與開發。 3. 掌握Embedded Linux開發重點:Toolchain, Bootloader, Kernel, Root Filesystem。 4. 上手Embedded Linux BSP:Buildroot與OpenWrt。 5. 瞭解Open Source Porting與Debug技巧。 6. 學會如何在嵌入式Linux開發多執緒Pthread程式、網路Socket通訊程式。 課程大綱 1. 嵌入式Linux系統簡介與實務開發方式 2. 開發硬體平台說明 3. 軟體開發平台BSP 解說 4. 深入 GNU make 5. 移植 Open Source 6. Linux Frame Buffer Device & GUI 圖形系統 7. Bootlloader (u-boot開發, init SDRAM, Flash, How to write Driver in U-bot....) 8. Linux 檔案系統 (JFFS2, CRAMFS, YAFFS,UBIFS...) 9. Linux MTD 裝置 10. GNU toolchain (Shared vs. Static Library, Linker Script, ELF Format, ar, objcopy, objdump, nm, libtool,etc. GCC Compiler . GDB,..) 11.產品應用 (1)Media Player -Porting MP3 Player (2)NAS -Porting SAMBA (3)Wi-Fi Router -hostapd, dhcpd, bridge, ... (4)IP Camera -Porting Streaming server (5)HTTP Server & CGI -BusyBox
艾鍗學院