嵌入式開發 寫在這裡作為參照

2022-04-03 09:41:56 字數 4392 閱讀 5705

第一部分:linux平台搭建與環境熟悉

了解linux系統;區分各種版本的linux系統,以便於拓展 linux視野。

1、linux 簡介;

2、linux 系統的主要特點;

3、linux 的組成;

4、主要的 linux 版本;

5、嵌入式 linux簡介與發展

第二部分虛擬機器安裝和linux系統安裝

1、虛擬機器安裝;

2、linux系統的安裝;

3、linux系統的常用軟體的安裝;

4、linux快速入門

5、 熟悉運用 linux環境下,常用命令的操作與系統設定,如常用的 shell;掌握基本的 shell 應用

第三部分:嵌入式linux環境搭建

1、 建立嵌入式 linux開發環境

2、 熟悉嵌入式開發平台

3、 嵌入式 linux開發工具

4、 linux下的除錯技巧

5、 make工程管理器

6、 硬體環境的搭建;arm-linux-gcc與 gcc安裝配置

第四部分: u-boot: 了解 u-boot 的作用及工作流程;了解bootloader 的**結構、編譯過程;移植u-boot;掌握常用的u-boot命令。

1、 bootloader介紹

2、 u-boot工程介紹

3、 u-boot的編譯使用

4、 u-boot原始碼分析

5、 u-boot資源分配

6、 配置編譯u-boot

7、 u-boot移植過程

8、 u-boot常用命令操作

9、 新增u-boot新命令

10、設定u-boot環境變數

11、 u-boot驅動新增如網絡卡:dm9000

1、linux核心介紹

2、linux核心特點

3、linux核心源**結構

4、linux核心選項解析

5、linux核心編譯鏈結

6、核心模組編譯、使用方法

第六部分:linux根檔案系統

1、busybox 包移植、編譯

2、linux跟檔案系統製作過程

3、根檔案系統介紹

4. nfs檔案伺服器系統搭建

第七部分:linux驅動開發

第八部分:linux應用學習

第九部分:qt移植與開發

了解嵌入式linux下的幾種常見gui及其特點,重點能掌握qt的有關內容,具備qt程式設計能力。了解嵌入式資料庫的配置與開發

1 、嵌入式linux gui介紹

2、嵌入式qt開發包移植

3、qt介紹及其訊號插槽機制

4、 qt圖形介面程式設計技術

5、qt應用程式與linux驅動的銜接

6、 qt在實際專案中具體應用

第十部分:無線通訊應用

1、無線wifi模組應用

2、3g模組應用

第十一部分:嵌入式系統應用程式,驅動程式除錯

1、linux基本工具除錯使用。gdb,insight除錯等

2、linux應用程式的程式設計

3、嵌入式產品程式打包與發布

第十二部分:嵌入式專案綜合除錯,產品發布

了解真實專案的開發流程,掌握如何將所學知識應用到專案開發中。將模擬真實專案的管理過程,培養學員專案團隊協同開發能力,專案文件編寫能力和新知識的學習能力,為下一步就業做好知識上和心理上的充分準備

一、嵌入式lininx開發第一學習階段,主要打好基礎,學好c程式設計,linux系統程式設計。

1、c語言程式設計基礎

2、嵌入式開發基礎:linux概述安裝,shell命令,vim編輯器,gcc,gdb,makefile,交叉開發環境構建

3、嵌入式linux系統程式設計:shell程式設計,檔案程式設計,串列埠程式設計,程序程式設計,執行緒程式設計,網路程式設計

4、嵌入式專案開發:資料採集控制系統,串列埠伺服器

二、嵌入式lininx開發第二學習階段,掌握arm彙編程式設計,驅動程式設計。

1、arm體系結構:arm體系,arm指令,thumb指令,彙編程式設計,邏輯程式開發

2、linux核心移植:bootloader,核心配置,檔案系統

3、驅動程式開發:驅動架構模型,字元裝置驅動,塊裝置驅動,網路驅動

三、嵌入式lininx開發第三學習階段,掌握c++物件導向程式設計,qt程式設計。

1、c++語言程式設計基礎

2、qt程式設計開發:qt開發基礎,qt布局與控制項,qt繪圖,qt事件,qt網路通訊,qt資料庫,qt移植

3、嵌入式專案開發:車載監控管理系統,工業能源管理系統

1、linux 基礎

安裝linux作業系統 linux檔案系統 linux常用命令 linux啟動過程詳解 熟悉linux服務能夠獨立安裝linux作業系統 能夠熟練使用linux系統的基本命令 認識linux系統的常用服務安裝linux作業系統 linux基本命令實踐 設定linux環境變數 定製linux的服務 shell 程式設計基礎使用vi編輯檔案 使用emacs編輯檔案 使用其他編輯器

2、shell 程式設計基礎

shell簡介 認識後台程式bash程式設計熟悉linux系統下的編輯環境 熟悉linux下的各種shell 熟練進行shell程式設計熟悉vi基本操作 熟悉emacs的基本操作 比較不同shell的區別 編寫乙個測試伺服器是否連通的shell指令碼程式 編寫乙個檢視程序是否存在的shell指令碼程式 編寫乙個帶有迴圈語句的shell指令碼程式

3、linux 下的 c 程式設計基礎

linux c語言環境概述 gcc使用方法 gdb除錯技術 autoconfautomake makefile **優化 熟悉linux系統下的開發環境 熟悉gcc編譯器 熟悉makefile規則編寫hello,world程式 使用 make命令編譯程式 編寫帶有乙個迴圈的程式 除錯乙個有問題的程式

4、嵌入式系統開發基礎

5、嵌入式系統移植

linux核心** 平台相關**分析 arm平台介紹 平台移植的關鍵技術 移植linux核心到 arm平台 了解移植的概念 能夠移植linux核心移植linux2.6核心到 arm9開發板

6、嵌入式 linux 下串列埠通訊

序列i/o的基本概念 嵌入式linux應用軟體開發流程 linux系統的檔案和裝置 與檔案相關的系統呼叫 配置超級終端和minicom 能夠熟悉進行串列埠通訊 熟悉檔案i/o 編寫串列埠通訊程式 編寫多串列埠通訊程式

7、嵌入式系統中多程序程式設計

linux系統程序概述 嵌入式系統的程序特點 程序操作 守護程序 相關的系統呼叫了解linux系統中程序的概念 能夠編寫多程序程式編寫多程序程式 編寫乙個守護程序程式 sleep系統呼叫任務管理、同步與通訊linux任務概述任務排程 管道 訊號 共享記憶體 任務管理 api 了解linux系統任務管理機制 熟悉程序間通訊的幾種方式 熟悉嵌入式linux中的任務間同步與通訊編寫乙個簡單的管道程式實現檔案傳輸 編寫乙個使用共享記憶體的程式

8、嵌入式系統中多執行緒程式設計

執行緒的基礎知識 多執行緒程式設計方法 執行緒應用中的同步問題了解執行緒的概念 能夠編寫簡單的多執行緒程式編寫乙個多執行緒程式

9、嵌入式 linux 網路程式設計

10、gui 程式開發

gui基礎 嵌入式系統gui型別 編譯qt 進行qt開發熟悉嵌入式系統常用的gui 能夠進行qt程式設計使用qt編寫「hello,world」程式 除錯乙個加入訊號/槽的例項 通過過載qwidget 類方法處理事件

11、linux 字元裝置驅動程式

裝置驅動程式基礎知識 linux系統的模組 字元裝置驅動分析 fs_operation結構 載入驅動程式了解裝置驅動程式的概念 了解linux字元裝置驅動程式結構 能夠編寫字元裝置驅動程式編寫skull驅動 編寫鍵盤驅動編寫i/o驅動 分析乙個看門狗驅動程式 對比linux2.6核心與2.4核心中字元裝置驅動的不同linux 塊裝置驅動程式塊裝置驅動程式工作原理 典型的塊裝置驅動程式分析 塊裝置的讀寫請求佇列了解linux塊裝置驅動程式結構 能夠編寫簡單的塊裝置驅動程式比較字元裝置與塊裝置的異同 編寫mmc卡驅動程式 分析乙個檔案系統 對比linux2.6核心與2.4核心中塊裝置驅動的不同

12、檔案系統

虛擬檔案系統 檔案系統的建立 ramfs記憶體檔案系統 proc檔案系統 devfs 檔案系統 mtd技術簡介 mtd塊裝置初始化 mtd塊裝置的讀寫操作了解linux系統的檔案系統 了解嵌入式linux的檔案系統 了解mtd技術 能夠編寫簡單的檔案系統為 arm9開發板新增 mtd支援 移植jffs2檔案系統 通過proc檔案系統修改作業系統引數 分析romfs 檔案系統源** 建立乙個cramfs 檔案系統

GacUI的中文教程就寫在這裡了

隨著gacui 的進一步完善,我覺得是時候來寫寫教程了。最近開了乙個群,有那麼一些使用者覺得tutorial的幾個vcxproj和gacui 的型別參考 不夠用,所以經常有這樣的呼聲。之前之所以一直沒有寫,是因為內部的設計還在不斷的變動。現在看來應該完全定下來了,可以寫了。目前我想到的內容有 gac...

嵌入式開發

經常會有人說嵌入式開發,嵌入式開發千差萬別,我總體上分為4個等級 微電子開發 rtos開發 指令碼開發 富應用開發 這一類產品行為比較固定,比如說電視遙控器,遙控汽車,電飯煲,恆溫燒水壺,溫濕度感測器,智慧型門鎖等。這些裝置行為都比較簡單,通過按鈕可以設定系統功能和行為。量不大,經常會選用flash...

初識嵌入式 嵌入式開發概述

1 什麼是嵌入式技術 1 嵌入式軟體與非嵌入式軟體的區別?答 嵌入式軟體是結合作業系統之上做的開發 非嵌入式軟體是做的裸機開發。裸機 沒有作業系統 2 嵌入式開發與微控制器開發的區別?答 區別 是否有作業系統。拓展 答 優點 解決了軟體的移植性 解決了開發人員的能力的劃分問題。提供了豐富的網路協議 ...