1. 程式人生 > >零基礎Android手機嵌入式開發實戰教程 Android嵌入式開發

零基礎Android手機嵌入式開發實戰教程 Android嵌入式開發

《零基礎Android手機嵌入式開發實戰課程(網咖計費系統、多功能播放器、驅動開發)》
課程講師:老夫子 
適合人群:初級
課時數量:174課時
用到技術:Bootloader開發、裸板開發
涉及專案:網咖計費系統、多功能播放器、驅動開發等
諮詢QQ:1364314410
 
       本套課程從最礎的C語言和資料結構起步,一步步學習ARM裸機開發、Linux應用開發、Linux系統移植、Linux裝置驅動開發、Android應用開發、Android系統移植、Android裝置驅動開發。

       本課程包括了ARM9和Cortex A8兩種硬體平臺、Linux 2.6和3.0兩種核心、Android1.5和4.x兩種系統。通過全套課程的學生,學生完全可以從入門到精通,進入到“錢途”無限的Android嵌入式開發。包括應用開發和驅動開發,都足以勝任。

       本套課程融合了國內Andriod培訓和嵌入式培訓的精華課程,並加入最新的Android4.x驅動開發,是國內首創的全套Android應用和驅動開發課程,成為國內大學生學習Andriod嵌入式開發的入門首選!
        本課程總共分為八部分,零基礎起步,由淺入深,全面系統的介紹了Android系統從應用開發、系統移植、再到裝置驅動開發的全過程,總課時預計174講!


適合人群:
1 希望往嵌入式底層學習的工程師
2 熟悉Android應用和框架開發,希望從上到下走通Android系統的工程師
3 不希望侷限在上層,希望做驅動,做系統移植的工程師
4 基礎良好的在讀研究生或者即將畢業的應屆畢業生
5 有手機硬體維修基礎,希望走向軟體開發的特殊愛好者


課程目標:
瞭解作業系統原理,編譯原理,資料結構,電路基礎,數控模電相關知識
熟練掌握Linux作業系統使用,包括命令,Shell,系統配置
熟練進行Linux下應用程式設計及系統呼叫
掌握ARM體系結構以及基礎裸板開發,Bootloader開發,掌握Android應用開發
掌握Linux核心原理,熟悉Linux系統開發,核心裁減,除錯
掌握Linux常用介面驅動開發及系統移植和Android常用驅動開發及系統移植


課程職業目標:
具備Android應用開發的能力,可以從事Android應用開發
學完後具備相當於1-2年Linux及Android底層開發的經驗
Linux及Android驅動開發工程師
Linux及Android系統工程師


課程價值所在:
1. 史上最全的嵌入式即涉及Android應用又側重於手機驅動開發課程,零基礎入門
2. 課程使用的專案案經典,有代表性,稍加改造就可以用到自己的專案,實用性超強.
3. 絕大多數程式碼手工敲入,授課深入淺出,杜絕理論,絕對實戰
4. 課程首次採用ARM9面向初學者教學,同時採用較新的Cortex A8面向工程師生產,如此組合,國內首部
5. 講師曾擔任過技術總監與教學總監,講師本著深入淺出,剖析原理的風格 ,不僅僅講操作,更側重於理解與自我創新


以下是課程大綱:


第一部分 嵌入式C與資料結構篇 (20講)
1)課程概述、變數與資料型別
2)運算子與嵌入式位運算
3)分支結構
4)迴圈結構
5)陣列
6)指標
7)函式
8)字串
9)結構體
10)檔案
11)資料結構1--單鏈表1
12)資料結構2--單鏈表2
13)資料結構3--迴圈連結串列和雙向連結串列
14)資料結構4--棧
15)資料結構5--佇列
16)資料結構6--查詢
17)資料結構7--排序
18)綜合專案:網咖計費系統1
19)綜合專案:網咖計費系統2
20)綜合專案:網咖計費系統3


第二部分ARM裸機開發篇 (43講)
21)嵌入式系統概述
22)ARM硬體開發平臺介紹
23)ARM體系結構
24)ARM工作狀態、工作模式
25)ARM工作暫存器、異常處理
26)ARM指令集
27)ARM偽指令
28)ATPCS規則
29)ARM啟動程式碼分析
30)GPIO原理
31)流水燈實驗
32)按鍵實驗
33)蜂鳴器實驗
34)中斷原理
35)中斷實驗
36)串列埠原理
37)串列埠實驗
38)PWM原理
39)PWM實驗
40)RTC原理
41)RTC實驗
42)ADC原理
43)ADC實驗
44)觸控式螢幕原理
45)觸控式螢幕實驗
46)LCD原理
47)Sony X35 LCD晶片規格書解讀
48)LCD實驗1、顯示影象
49)LCD實驗2、影象特效及顯示文字
50)IIC原理
51)AT24c08晶片規格書解讀
52)IIC實驗
53)DMA原理
54)DMA實驗
55)IIS原理
56)UDA1341晶片規格書解讀
57)IIS實驗1
58)IIS實驗2
59)ARM裸機開發綜合專案:多功能播放器1
60)ARM裸機開發綜合專案:多功能播放器2
61)ARM裸機開發綜合專案:多功能播放器3
62)ARM裸機開發綜合專案:多功能播放器4
63)ARM裸機開發綜合專案:多功能播放器5


第三部分 Linux應用開發 (28講)
64)課程介紹、VMware及Linux安裝
65)Linux配置及vi使用
66)Linux shell命令及Shell指令碼
67)Linux程式設計基礎:gcc、g++、gdb、Makefile
68)標準檔案操作
69)不帶快取IO操作
70)fcntl與select 
71)Linux程序原理
72)Linux程序系統呼叫
73)守護程序
74)程序間通訊IPC原理
75)管道通訊
76)訊號
77)共享記憶體
78)資訊佇列
79)Linux多執行緒原理
80)執行緒同步與互斥鎖
81)執行緒同步與訊號量
82)生產者消費者模型
83)Linux網路程式設計原理
84)TCP網路通訊
85)Linux併發網路伺服器
86)UDP網路通訊
87)Linux下MySQL資料庫配置使用
88)Linux下C語言資料庫操作
89)Linux應用開發綜合專案:即時通訊系統1
90)Linux應用開發綜合專案:即時通訊系統2
91)Linux應用開發綜合專案:即時通訊系統3


第四部分 Linux系統移植 (5講)
92)系統移植概述
93)UBoot移植
94)UBoot原始碼導讀
95)核心移植
96)根檔案系統移植


第五部分 Linux裝置驅動 (13講)
97)Linux裝置驅動開發概述
98)裝置驅動開發的基本框架
99)同步、互斥
100)阻塞、睡眠機制
101)Poll和select操作
102) 非同步通知機制
103) 中斷處理程式編寫
104) 驅動程式上/下半部處理與延緩執行機制
105) 核心定時器與延遲機制
106) 核心記憶體管理機制
107) 字元裝置驅動例項
108) 塊裝置驅動例項
109) 網路裝置驅動例項


第六部分 Android應用開發 (38講)
110)基於Android4.x高階應用開發概述
111)Android4應用開發課程概述及環境搭建
112)JAVA語法快速串講1:類與物件
113)JAVA語法快速串講2:繼承
114)JAVA語法快速串講3:異常
115)Android程式結構與介面佈局
116)Activity與事件處理
117)Activity生命週期與引數傳遞
118)專案1:GuessNumber猜數字遊戲
119)常用GUI元件
120)專案2、fingerWinner划拳遊戲
121)Android選單
122)Android繪圖
123)專案3:MyScrawl我的塗鴉
124)Android動畫
125)專案4:RunnigPig奔跑的野豬
126)Android對話方塊
127)Content Providor
128)Android新特性1 Fragment
129)Android新特性2 Action Bar
130)Android通知Notifycation
131)Android服務Service
132)專案5:EyeSaver視力保護程式
133)Android多媒體:MediaPlayer與SurfaceView
134)專案6:MyPMP我的媒體播放器1(音訊播放)
135)專案6:MyPMP我的媒體播放器2(視訊播放)
136)多執行緒與Handler訊息傳遞機制
137)專案7:打地鼠遊戲
138)Android硬體感測器介面
139)專案8:MyCamera我的照相機
140)Android HTTP網路程式設計
141)Android解析JSON資料格式
142)專案9:MyWeather我的天氣預報
143)嵌入式資料庫SQLite
144)綜合專案10:管家婆1—需求分析與介面原型設計
145)綜合專案10:管家婆2—資料庫設計與DAO層程式碼實現
146)綜合專案10:管家婆3—實現收入記賬模組
147)綜合專案10:管家婆4—實現支出記賬模組
148)綜合專案10:管家婆5—系統設定、專案整合與測試


第七部分 Android系統移植 (11講)
149)Android系統移植概述
150)Android 1.5 到Mini2440的移植1
151)Android 1.5 到Mini2440的移植2
152)Android 1.5 到Mini2440的移植3
153)Android 1.5 到Mini2440的移植4
154)Android 1.5 到Mini2440的移植5
155)Android4.x 到tiny210的移植1
156)Android4.x 到tiny210的移植2
157)Android4.x 到tiny210的移植3
158)Android4.x 到tiny210的移植4
159)Android4.x 到tiny210的移植5


第八部分 Android裝置驅動 (14講)
160)Android裝置驅動概述
161)Android裝置驅動開發環境搭建,
162)JNI開發,
163)NDK開發
164)SystemServer
165)ServiceManager,
166)android Binder通訊機制
167)android電源管理,
168)android除錯方法,
169)Android裝置驅動開發例項:LED
170)Android裝置驅動開發例項:按鍵
171)Android裝置驅動開發例項:蜂鳴器
172)Android裝置驅動開發例項:串列埠
173)Android裝置驅動綜合專案