## 一、嵌入式開發用到哪些知識
1、編程語言: 第一層次(C語言),第二層次(ARM匯編、shell腳本、C++、Java);
2、操作系統: 第一層次(linux),第二層次(Android、RTOS(一類實時操作系統,如ucos、uclinux等,一般用在需要操作系統的單片機上));
3、硬件方面: 會看原理圖,懂得串口、I2C、USB等常見通信設備的原理及編程、懂得LCD、觸摸屏等常見元件原理及編程。
## 二、嵌入式開發需要什么技能
1、以軟件為主,但是需要對硬件有一定了解;
2、重在調試,需要有修改和調試程序的能力;
## 三、學習體系
1、嵌入式核心課程
2、Android擴展
3、物聯網擴展
4、各種實訓項目
## 總結:
①嵌入式是處理“軟硬結合”部分的;
②嵌入式軟件開發并不需要會設計硬件電路和自己畫PCB板;
③嵌入式軟件開發以C語言和linux系統為核心,學習的關鍵和入口點就在這里;
④嵌入式開發涉及面極廣,學習周期長,學習難度大。
## 四、嵌入式核心課程(5大模塊)
1、linux基礎? +? C語言;
2、linux應用程序開發(系統編程、網絡編程);
3、ARM編程(ARM體系架構、ARM匯編、開發板常見外設裸機編程);
4、linux系統移植(uboot移植、kernel移植、rootfs制作);
5、linux驅動開發。
## 五、Android擴展(3大模塊)
1、Android HAL驅動;
2、Android系統定制;
3、Android應用開發;
## 六、物聯網擴展(無線擴展)
1、GPS和地圖查詢服務;
2、wifi;
3、藍牙4.0;
4、Zigbee;
5、RFID.
講座內容來自朱有鵬老師的 《嵌入式工程師養成計劃--嵌入式軟件工程師完全學習指南》,在此感謝^_^