LiteOS輕量級物聯網操作系統實戰(微課視頻版)

魏傑

  • 出版商: 清華大學
  • 出版日期: 2023-11-01
  • 售價: $534
  • 貴賓價: 9.5$507
  • 語言: 簡體中文
  • 頁數: 340
  • 裝訂: 平裝
  • ISBN: 7302641757
  • ISBN-13: 9787302641759
  • 相關分類: Operating-system物聯網 IoT
  • 立即出貨 (庫存 < 3)

  • LiteOS輕量級物聯網操作系統實戰(微課視頻版)-preview-1
  • LiteOS輕量級物聯網操作系統實戰(微課視頻版)-preview-2
  • LiteOS輕量級物聯網操作系統實戰(微課視頻版)-preview-3
LiteOS輕量級物聯網操作系統實戰(微課視頻版)-preview-1

商品描述

本書借鑒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.3STLink下載調試器

 

1.5.4JLink下載調試器

 

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本章小結

 

參考文獻