杭州嵌入式系統課程大綱
學習嵌入式系統開發,能夠勝任嵌入式崗位要學習哪些內容呢?
沒有基礎去學習嵌入式系統可能就像一個無頭蒼蠅一樣亂撞,想要有條理和思路去學習,那麼一套完整的嵌入式課程大綱很有必要,有了學習大綱,我們可以有更清晰的學習課程去借鑑,能讓我們瞭解自己學到了什麼,掌握了哪些課程內容。
對於很多同學都需要嵌入式課程大綱分享,今天就把嵌入式課程大綱內容分享給大家,很詳細,適合所有想要學習嵌入式的同學。
1、嵌入式高階C語言
Linux系統
Linux Ubuntu作業系統安裝、使用、Linux常用命令、samba伺服器、SSH遠端登入GCC編譯器、GDB偵錯程式、VI編輯器
1、嵌入式C語言高階程式設計
1、C資料型別、控制語句
2、C程式結構設計、陣列、函式、預處理:
3、指標及字串操作
4、結構體、共用體、巨集、列舉
5、檔案I/O操作
資料結構及演算法
1、資料結構之單向連結串列、雙向連結串列
2、資料結構之佇列、棧
3、資料結構之樹、圖
4、演算法之各種排序(選擇法、冒泡法、插入法等)
5、遞迴
6、演算法之二分查詢
階段練習專案:《檔案系統目錄掃描專案》
2、嵌入式裝置及GUI開發
嵌入式環境配置與開發工具學習
1、Linux下專案管理工具Make以及Makefile工作原理及其編寫
2、Linux下shell指令碼相關知識及其編寫
3、嵌入式開發環境的基本概念及其搭建
4、A53開發板介紹、裝置使用、A53開發板與電腦通訊、交叉編譯
GUI圖形介面開發
1、常用控制元件——button、label、text edit等
2、常用佈局方式——水平佈局、垂直佈局、固定佈局、網格佈局、相對佈局等
3、常用事件及訊號處理技術——資訊回撥、滑鼠、鍵盤事件等
4、時間程式設計、資料儲存、繪圖機制、定時器處理、多工處理等
3、嵌入式Linux高階程式設計
嵌入式Linux系統程式設計
1、Linux系統呼叫概念
2、程序相關概念、多程序實現多工開發
3、程序間通訊:無名管道、命名管道、訊號、訊息佇列、共享記憶體等
4、多執行緒實現多工開發
5、多工的同步互斥開發:互斥鎖、訊號量
4、Linux高階網路程式設計
Linux高階網路程式設計
1、網路相關概念及網路發展
2、TCP/IP協議
3、socket程式設計、TCP網路程式設計、UDP網路程式設計、Web程式設計開發等
4、Linux網路應用程式開發,Linux網路程式設計相關API
5、TCP協議伺服器的程式設計方法和併發伺服器的實現
6、HTTP協議及其實現方法,熟悉UDP廣播、多播的原理及程式設計方法,掌握混合C/S架構網路通訊系統的設計
7、IPv6與IPv4協議,及其程式設計介面
8、網路資料通訊過程
9、網路原始套接字概念及程式設計介面
5、資料庫開發
資料庫開發
1、資料庫概念、資料庫型別、常見資料庫
2、SQLite資料庫介紹及其安裝與移植
3、SQL資料庫語言( 資料定義語言(DDL)、資料操作語言(DML)、資料查詢語言(DQL)、資料控制語言(DCL) )
4、sqlite資料庫C語言程式設計中的各種SQL指令執行函式完成對資料庫的控制。
階段練習專案:《學生資訊管理系統》
6、C++面向物件高階語言程式設計
C++語言高階語言開發
1.熟悉面向物件的語言概述
2.熟練掌握c++語言的基本知識和類與物件及其高階應用
3、作用域運算子、行內函數、強制型別轉換
4、new、delete記憶體管理
5、物件成員、成員函式
6、建構函式、解構函式、拷貝建構函式、函式過載
7、物件陣列、this指標、列舉、
8、靜態成員、靜態成員函式
9、物件成員
10、友元
11、封裝、繼承、多繼承、多型
12、虛擬函式、純虛擬函式、抽象類、虛解構函式 等
階段練習專案:《使用者管理系統》、《貪吃蛇遊戲》
7、物聯網
物聯網開發
1、瞭解物聯網、泛在網、網際網路基本要領及其關係
2、熟悉RFID從低頻段到高頻段的基本工作原理,以及RFID標籤的種類與行業應用,讀卡器原理與通訊過程
3、熟悉TI的cc2530的基本應用,包含基本硬體資源,協議棧相關介面使用,以及點對點通訊、星形通訊、廣播通訊、繫結通訊,三種網路結構star、tree、mesh,掌握zibgee相關微控制處理晶片
4、瞭解zigbe協議棧組成,以及zigbee在通訊、組網、搖控等領域的不同應用
5、通過Bluetooth、wifi和zigbee技術對比各自的優缺點,並重點介紹zigbee的各種應用
6、掌握溫度、溼度、光照、PH值、二氧化碳等感測器的工作原理及通訊介面
7、瞭解NB-IOT基本概念及移運BC95模組
8、熟悉CoAP協議在NB-IOT中的應用
9、掌握常用AT指定集
8、CotexA53 Linux平臺驅動開發
Linux平臺驅動開發
1、瞭解ARM處理器基本特徵及工作原理
2、掌握ARM裸機程式開發以及裸機編譯工具的使用
3、嵌入式Bootloader原理分析及其移植
4、嵌入式Linux核心結構分析及其移植
5、掌握嵌入式Linux根檔案系統組成分析及其製作過程
6、掌握嵌入式Linux三大類裝置驅動基本概念
7、掌握Linux字元驅動框架及GPIO輸入輸出驅動
8、Linux中斷機制處理及響應過程
9、Linux下SPI/IIC/UART序列通訊技術驅動編寫與應用
10、Linux下input裝置驅動框架介紹
11、Linux下platform機制裝置驅動框架介紹
12、Linux下kfifo緩衝機制、併發與競態(如互斥鎖與資訊號等)講解
13、Linux驅動中的阻塞與非阻塞
14、Linux下塊裝置驅動框架——RAMdisk驅動例項編寫
15、USB裝置硬體設計原理、驅動協議架構、驅動開以流程
16、瞭解Linux裝置驅動模型(kobject、kset、子系統、底層sysfs操作、虛擬匯流排等)
想要學好嵌入式系統開發,跟著這份嵌入式課程大綱學習吧。