《LiteOS輕量級物聯網作業系統實戰(微課視頻版)》是2023年清華大學出版社出版的圖書,作者是魏傑。
基本介紹
- 中文名:LiteOS輕量級物聯網作業系統實戰(微課視頻版)
- 作者:魏傑
- 出版時間:2023年11月1日
- 出版社:清華大學出版社
- ISBN:9787302641759
- 定價:89 元
內容簡介,圖書目錄,
內容簡介
本書借鑑PBL式教學模式,以案例Demo為主線,將基礎知識、核心技能打造成小型案例,通過案例來學習LiteOS。LiteOS可以在Windows、Linux、macOS等平台進行開發,核心基礎主要包含任務、中斷、IPC通信等。在深層次的知識中,可以進行LiteOS組件開發、系統移植。最後在綜合項目中穿插用到了基礎核心及LiteOS支持的物聯網協定開發、物聯網平台使用,能夠讓讀者快速進行大型項目開發。
本書共13章,分別為快速入門篇(第1章和2章)、核心基礎篇(第3~6章)、核心進階篇(第7~9章)、綜合項目實戰篇(第10~13章)。快速入門篇主要講述LiteOS基本架構、基於VS Code的開發環境搭建。核心基礎篇從任務、中斷、IPC通信、時間管理等知識帶讀者詳細了解LiteOS的核心工作方法。進階篇講解Sensor和GUI兩個擴展組件,最後進行LiteOS系統的移植。綜合項目篇搭建了一個基於華為IoT平台的智慧型家居項目,從項目角度鞏固基礎知識,掌握LiteOS系統支持的MQTT、CoAP等常用物聯網協定。
書中通過對LiteOS系統進行拆分,力圖實現知識的**解耦,既適合初學者進行快速入門,也適合有經驗的開發者當工具書。使用本書進行LiteOS學習時,無論有無開發經驗都可以按照自己的需求進行跳躍學習。在某些章節後有一些實用Tips,幫助開發者更好地進行項目的開發。
圖書目錄
目錄
本書源碼
工具包
快速入門篇
第1章LiteOS快速入門(105min)
1.1LiteOS全貌
1.1.1LiteOS簡介
1.1.2套用生態
1.2代碼倉庫
1.3LiteOS開發工具鏈
1.3.1代碼編輯器
1.3.2交叉編譯工具
1.3.3下載調試工具
1.4Windows系統下的VS Code開發環境
1.4.1關於VS Code
1.4.2IoT Link外掛程式
1.4.3安裝Python輔助工具
1.4.4實戰案例: Hello World
1.5基於Ubuntu+VS Code的開發環境
1.5.1安裝VS Code
1.5.2ARM交叉編譯器
1.5.3STLink下載調試器
1.5.4JLink下載調試器
1.5.5串口驅動
1.5.6實戰案例: Hello World
1.6基於macOS+VS Code的開發環境
1.6.1ARM交叉編譯器
1.6.2下載和調試工具
1.6.3安裝Kconfig
1.6.4修改工程配置檔案
1.6.5實戰案例: 測試Hello World
1.7本章小結
第2章Qemu模擬開發(19min)
2.1Qemu概述
2.2安裝Qemu
2.2.1Windows系統下的Qemu安裝
2.2.2Ubuntu下的Qemu安裝
2.2.3macOS下的Qemu安裝
2.3實戰案例: ARM下的Hello World
2.4淺嘗VS Code利器
2.4.1簡單的配置
2.4.2快捷按鈕
2.5本章小結
核心入門篇
第3章核心基礎(199min)
3.1LiteOS核心架構
3.1.1基礎核心
3.1.2代碼結構
3.1.3核心啟動流程
3.2任務
3.2.1任務的概念
3.2.2創建和刪除任務
3.2.3任務調度
3.2.4實戰案例: 簡單任務控制
3.3中斷
3.3.1LiteOS的中斷機制
3.3.2創建中斷
3.3.3中斷控制
3.3.4實戰案例: 獨立中斷
3.3.5實戰案例: 共享中斷
3.4記憶體
3.4.1靜態記憶體
3.4.2動態記憶體
3.5錯誤碼和異常處理
3.5.1錯誤碼
3.5.2異常處理
3.6認識Makefile
3.6.1基礎語法
3.6.2高級語法
3.6.3實戰案例: 簡單計算器
3.7本章小結
第4章IPC機制(184min)
4.1信號量
4.1.1信號量概念
4.1.2信號量運行機制
4.1.3信號量API
4.1.4實戰案例: 消費者和生產者
4.2互斥鎖
4.2.1互斥鎖概念
4.2.2互斥鎖運行機制
4.2.3互斥鎖API
4.2.4實戰案例: 生產者和消費者
4.3佇列
4.3.1佇列運行機制
4.3.2佇列API
4.3.3實戰案例: 通信案例
4.4事件
4.4.1事件運行機制
4.4.2事件API
4.4.3實戰案例: 智慧型窗簾
4.5本章小結
第5章其他組件(69min)
5.1時間模組
5.1.1時間轉換
5.1.2軟體定時器
5.2原子操作和位操作
5.2.1計算機中的原子
5.2.2位操作
5.3雙向循環鍊表
5.3.1工作原理
5.3.2實戰案例: 學生管理系統
5.4程式設計師利器Git
5.4.1Git工具
5.4.2代碼管理
5.5本章小結
第6章標準接口(13min)
6.1POSIX接口
6.1.1POSIX概述
6.1.2實戰案例: POSIX任務接口
6.2CMSIS接口
6.2.1CMSIS概述
6.2.2實戰案例: CMSIS任務接口
6.3本章小結
核心進階篇
第7章感測器框架(86min)
7.1感測器框架結構
7.1.1框架概述
7.1.2運行原理
7.1.3開發流程
7.2實戰案例: 基於DHT11的溫濕度採集
7.2.1板級驅動
7.2.2基於框架的感測器管理
7.3圖形配置工具Kconfig
7.3.1Kconfig簡介
7.3.2基礎語法
7.3.3實戰案例: 使用Kconfig配置項目
7.4本章小結
第8章GUI框架(67min)
8.1LVGL簡介
8.2LVGL運行原理
8.2.1源碼結構
8.2.2配置檔案
8.2.3顯示接口
8.2.4輸入接口
8.2.5LVGL滴答
8.2.6LVGL定時任務
8.2.7日誌
8.2.8開發步驟
8.3實戰案例: 移植LVGL
8.4LVGL模擬器
8.4.1模擬器簡介
8.4.2基於VS Code+SDL的模擬器
8.5本章小結
第9章LiteOS移植實戰(52min)
9.1移植概述
9.2準備工作
9.2.1開發環境
9.2.2裸機工程
9.3移植適配
9.3.1板級驅動適配
9.3.2連結適配
9.3.3添加目標板配置
9.3.4測試案例
9.4模組化編程
9.4.1基本原理
9.4.2實戰案例: 自定義demo模組
9.5實戰案例: 智慧型家居終端
9.5.1項目概述
9.5.2感測數據
9.5.3用戶界面
9.5.4運行結果
9.6本章小結
綜合項目實戰篇
第10章IoT雲平台(38min)
10.1華為IoT雲平台
10.1.1華為IoT雲概述
10.1.2設備接入服務
10.2華為IoTDA快速入門
10.2.1創建實例
10.2.2創建產品
10.2.3產品模型
10.2.4定義外掛程式
10.2.5線上調試
10.2.6添加真實設備
10.3實戰案例: 基於CoAP的華為IoT雲端
10.3.1產品
10.3.2編解碼外掛程式
10.3.3線上調試
10.4本章小結
第11章CoAP設備端開發(145min)
11.1CoAP協定
11.1.1CoAP協定概述
11.1.2報文結構
11.1.3報文選項
11.1.4實戰案例: WireShark抓包
11.2LiteOS之網路模組
11.2.1AT框架
11.2.2SAL組件
11.3實戰案例: LiteOS之CoAP組件
11.3.1配置LwM2M Demo
11.3.2連線測試
11.4實戰案例: CoAP數據傳輸
11.4.1上報數據
11.4.2命令控制
11.5本章小結
第12章MQTT設備端開發(172min)
12.1MQTT協定
12.1.1MQTT概述
12.1.2MQTT報文結構
12.1.3MQTT通配符
12.2MQTT報文詳解
12.2.1CONNECT報文
12.2.2CONNACK報文
12.2.3PUBLISH報文
12.2.4其他報文
12.3實戰案例: 華為雲MQTT產品
12.3.1MQTT產品
12.3.2MQTT調試
12.4實戰案例: LiteOS之MQTT組件
12.4.1配置MQTT Demo
12.4.2上報數據
12.4.3接收命令
12.5實戰案例: 移植MQTT協定棧
12.5.1Paho MQTT
12.5.2移植Paho MQTT
12.6本章小結
第13章體驗套用開發(57min)
13.1微信小程式概述
13.1.1獲取賬號信息
13.1.2開發工具
13.1.3實戰案例: Hello World
13.2微信小程式入門
13.2.1目錄結構
13.2.2小程式框架
13.2.3實戰案例: 智慧型家居App
13.3華為IoT雲套用接口
13.3.1IAM服務
13.3.2查詢設備屬性
13.3.3同步命令下發
13.4實戰案例: 小程式與設備互動
13.4.1小程式HTTPS接口
13.4.2獲取Token
13.4.3查詢屬性
13.4.4命令下發
13.5本章小結
參考文獻