本书是一本基础入门加实战的书籍,既有基础知识,又有丰富示例,同时还加入了Qemu、Makefile、Kconfig等嵌入式开发常用工具。本书即可作为入门的学习资料,也可作为项目过程中的工具书籍。书中每个知识点都配有案例,每个案例都提供完成的代码。
快速入门篇
第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本章小结