陳鍾誠 | 教材 | 程式 | 文章 | 留言版


嵌入式系統

嵌入式系統


課本

  • 現代嵌入式系統開發專案實務--菜鳥成長日誌與專案經理的私房菜, 作者:邱毅凌, 出版商 : 知迅科技有限公司, 出版日期: 2007-06-30.
    1. 該書的布落格 -- http://tw.myblog.yahoo.com/embedded_system_book

    參考書

    1. 嵌入式系統:使用eForth, 作者:丁陳漢蓀, 出版社:歐萊禮, 出版日期:2003年12月10日.
    2. ARM9 S3C2410嵌入式SOC原理, 出版社:全華
    3. ARM9 S3C2410嵌入式SOC實作,出版社:全華
    4. EMBEDDED LINUX在ARM9 S3C2410(PRESOCES)上實作, 出版社:全華,

    教材內容

    主題 投影片 範例程式
    系統程式 - 第1章 SystemProgramming1.ppt
    C 語言入門 C語言簡介.ppt
    嵌入式系統入門 嵌入式系統入門.ppt Polling.c BigLoop.c Polling.zip BigLoop.zip
    嵌入式系統進階 嵌入式系統進階.ppt
    實驗一 ARM9_S3C2410實驗版的用法-使用超級終端機
    實驗二 ARM9_S3C2410實驗版的用法-使用ICE除錯
    實驗三 系統初始化與中斷向量的配置
    實驗四 小鍵盤(Keypad)原理與程式追蹤
    實驗五 小銀幕 LCD 輸出範例

    相關課程

  • C 語言 | 嵌入式系統 | 系統程式 | 作業系統 | C語言程式設計

  • 網路資源

  • 新華電腦
  • UCR CS122A: Embedded System Design - http://www.cs.ucr.edu/~vahid/courses/122a_f99/index.html
  • Programming Embedded Systems - http://www.le.ac.uk/engineering/mjp9/pttesguide.htm

  • 課程內容

    0. 系統.嵌入.硬體:嵌入式系統概論與參考書目。
    1. 嵌入式系統專案的生命週期(上):介紹嵌入式系統開發專案的啟動與規劃階段。
    2. 嵌入式系統專案的生命週期(下):介紹嵌入式系統開發專案的設計、執行與結案階段。
    3. 震撼教育-第一個嵌入式系統:實際描述一個嵌入式系統的開發流程。
    4. 嵌入式系統平台設計:內容包含嵌入式系統平台的定義、系統架構設計、API與程式
       風格設計、嵌入式作業系統簡介、Source Tree設計、以及程式風格典範等。
    5. 建構嵌入式系統開發環境:描述如何建構嵌入式系統開發環境及相關注意事項。
    6. 上電之後-Boot Loader: Boot-loader(啟動程式)的原理介紹與實務。
    7. 驅動程式:介紹在嵌入式系統上開發驅動程式的原理、注意事項與實例。
    8. 記憶體管理:介紹在嵌入式系統中記憶體管理的原理、注意事項與實例。
    9. 模擬器:介紹何謂模擬器以及模擬器對嵌入式系統開發專案的原理、注意事項與實例。
    10.系統整合:內容包含進行第一次整合的最佳時間點、導致整合失敗的原因、開發時程
       重新檢討、以及程式移植時的注意事項,在本章的最後則會提到bug管理系統。
    11.Testing、Debugging and Tuning:本章內容包含嵌入式系統的測試概論、bug的管理
       原則、debug基本技巧、以及如何進行系統效能的最佳化。
    12.結案前的煎熬:介紹嵌入式系統開發專案結案之前的工作項目。
    

    第一章 Embedded Linux
    1-1 SOC嵌入式系統簡介	1-2
    1-2 SOC嵌入式系統機會	1-4
    1-3 SOC嵌入式系統考量和困難處	1-8
    1-4 SOC前段嵌入式系統平台的作為	1-11
    1-5 常見的嵌入式作業系統	1-14
    1-6 常見的嵌入式硬體	1-17
    1-7 嵌入式Linux的應用範圍	1-18
    1-8 Embedded Linux structure	1-19
    1-9 完整的嵌入式系統發展工具解決方案	1-19
    第二章 Embedded Linux
    2-1 Embedded System開發環境	2-2
    2-2 Embedded System的軟體要求	2-2
    2-3 編譯器-GCC的使用	2-3
    2-4 函式庫的管理	2-5
    2-5 Makefile的撰寫	2-7
    2-6 程式的概念	2-16
    2-6-1 Shell的概念	2-16
    2-6-2 Process的概念	2-18
    2-6-3 Thread的概念	2-21
    2-6-4 Modules的概念	2-21
    2-7 CVS-原始碼控制系統	2-23
    2-8 GDB的使用	2-24
    2-9 Domingo for Linux-系統整合開發除錯環境	2-28
    2-10 Domingo for Linux 除錯工具介紹實習	2-30
    第三章 Embedded Linux的系統建置實習
    3-1 建立Embedded Linux系統	3-2
    3-2 Red Hat9 Linux作業系統的介紹	3-2
    3-3 安裝Red Hat9 Linux作業系統	3-3
    3-3-1 額外PC安裝Red Hat9 Linux作業系統	3-4
    3-3-2 在Windows上安裝Red Hat9 Linux作業系統	3-4
    3-4 編譯核心實習	3-5
    3-5 安裝及驗證Linux Kernel Image	3-14
    3-5-1 Linux Samba伺服器的設定	3-14
    3-5-2 將Linux kernel image下載到RAM的驗證方式	3-15
    3-5-3 將Linux kernel image燒錄到NAND Flash的驗證方式	3-22
    第四章 Embedded Linux的指令集及範例說明
    4-1 開機和關機	4-2
    4-2 檔案管理	4-3
    4-3 文書編輯	4-12
    4-4 掛載檔案系統	4-13
    4-5 程式管理(RPM)	4-15
    4-6 增加使用者	4-18
    4-7 模組(Module)	4-20
    4-8 壓縮及解壓縮	4-21
    4-9 系統觀測	4-25
    第五章 Embedded Linux
    5-1 Linux的檔案系統種類	5-2
    5-2 檔案系統的目錄結構	5-8
    第六章 驅動程式原理
    6-1 Linux驅動程式	6-2
    6-2 字元設備	6-4
    6-3 區塊設備	6-5
    6-4 網路設備	6-6
    6-5 Creator-S3C2410驅動程式範例	6-7
    6-5-1 Creator-S3C2410周邊I/O驅動程式:LCD、LED、DIP_SWITCH、7-SEGMENT與KEY_PAD	6-7
    6-5-2 Creator-S3C2410 CODEC驅動程式	6-36
    第七章 Creator-S3C2410的模組與使用者應用程式實習
    7-1 Creator-S3C2410支援的模組	7-2
    7-2 使用者應用程式範例	7-19
    7-3 編譯Device Driver與使用者應用程式實習	7-30
    7-4 Creator-S3C2410 DeviceDriver及使用者應用程式的執行實習	7-37
    7-5 CCM之Color Image Processing	7-47
    第八章 Domingo for Linux
    8-1 除錯方式	8-2
    8-2 GDB的除錯實習	8-3
    8-2-1 GDB的使用方法	8-3
    8-2-2 GDB的範例實習	8-4
    8-3 Domingo for Linux的除錯實習–發展環境及執行步驟介紹	8-5
    8-4 Domingo for Linux的除錯實習–Linux kernel的除錯方式	8-7
    8-4-1 以ram boot的方式debug linux kernel:	8-9
    8-4-2 以ram boot但Root Filesystem燒錄到NAND Flash的方式debug linux kernel:	8-18
    8-4-3 以nand boot的方式debug linux kernel:	8-24
    8-5 Domingo for Linux針對device driver的除錯實習–利用NFS的除錯	8-29
    8-6 Domingo for Linux針對debug kernel的除錯工具介紹	8-33
    第九章 MP3 Play實習
    9-1實習基礎	9-2
    9-1實習基礎	9-2
    9-1-1 實習目的	9-2
    9-1-2 何謂MP3	9-2
    9-1-3 MP3撥放系統	9-3
    9-1-4 實習架構	9-3
    9-2 架構圖	9-4
    9-3 架構圖說明	9-4
    9-3-1 Madlld說明	9-5
    9-3-2 libmad說明	9-5
    9-4 操作步驟	9-5
    9-4-1 編譯playmp3應用軟體	9-5
    9-4-2 執行playmp3操作步驟	9-6
    附錄A:NFS的安裝與移除
    A-1需求	A-2
    A-2Linux端安裝NFS伺服器	A-2
    A-3Creator-S3C2410端提供NFSsupport	A-4
    附錄B:Samba伺服器的安裝
    附錄C:Nroot File System的
    C-1 建立ext2 file system	C-3
    C-2 建立jffs2 file system	C-4
    附錄D:VMware的安裝與說明
    D-1 系統需求	D-2
    D-2 安裝說明	D-2
    D-3 如何達到編譯及除錯的功能	D-8
    

    ARM9 S3C2410 新華實驗版簡介

    ARM9 TDMI : (T:Thumb, D:Debugger, M:Multiplier, I:Embedded ICE Logic)
    
    ARM920T : 核心為 ARM9 TDMI, 哈佛架構之處理器 (ARM7 為馮紐曼架構) 1. 內建 16KB 指令 cache, 16KB 資料 cache. 2. 有增強型 ARM 結構 V2MMU 以支援指令或資料位址之轉變。 3. 採用 ARM 之 AMBA 匯流排協定。
    S3C2410 : 韓國三星 Samsung 以 ARM920T 為核心所製造的 16/32 bit RISC CPU。 1. 採用1.8 V核心電壓, 1.8, 2.5, 3.3V 記憶體電壓, 3.3V 外部 I/O 電壓。

    常用詞彙

    JTAG : Joint Test Action Group
    ICE : In-Circuit Emulator
    PCM : Peripheral Configuration Manager
    MCU : Memory Control Unit ??
    MMU : Memory Management Unit
    STN-LCD : 
    TFT-LCD : 
    




    作者:陳鍾誠 E-mail:ccc@kmit.edu.tw
    Creative Commons License

    本著作係採用創用 CC 「姓名標示─相同方式分享 2.5 台灣版」授權條款釋出。

    大學課程網 | 手機入口網