OpenHarmony轻量设备开发理论与实战
¥149.00定价
作者: 齐耀龙
出版时间:2023-06
出版社:电子工业出版社
- 电子工业出版社
- 9787121456770
- 1-1
- 524936
- 48253848-5
- 平塑勒
- 16开
- 2023-06
- 576
- 计算机科学与技术
- 本科
内容简介
本书系统地介绍了OpenHarmony轻量设备开发的必备知识。在本书完稿时,相关课程已经在高校完成了三个学期的教学,并持续优化迭代。 本书的学习门槛低、内容深入浅出、知识结构合理。本书注重知识间的关联性、连贯性和阶梯性,将计算机理论知识和OpenHarmony实践紧密结合,更加注重实践内容对理论理解的反哺,同步培养知识和能力,“授人以鱼,并且授人以渔”。本书的内容支持目前所有在用的OpenHarmony版本,并且有能力支持未来的新版本,注重教/学效率,创立了“OpenHarmony轻量设备教/学全家桶”。 全书共分10章,包括OpenHarmony及其开发套件、搭建OpenHarmony开发环境、OpenHarmony开发入门、OpenHarmony内核编程接口、控制I/O设备、感知环境状态、OLED显示屏的驱动和控制、控制Wi-Fi、网络编程及MQTT编程。
目录
目 录__eol__第1章 OpenHarmony及其开发套件 | 1__eol__1.1 初识OpenHarmony | 2__eol__1.1.1 OpenHarmony是什么 | 2__eol__1.1.2 OpenHarmony的重要性 | 3__eol__1.1.3 OpenHarmony南向开发与北向开发 | 4__eol__1.1.4 OpenHarmony的版本 | 5__eol__1.1.5 OpenHarmony官网 | 7__eol__1.1.6 OpenHarmony官网文档获取 | 8__eol__1.1.7 本书内容概述 | 8__eol__1.1.8 学习本书需要的基础知识 | 9__eol__1.2 润和Pegasus智能家居开发套件简介 | 10__eol__1.2.1 海思Hi3861V100芯片简介 | 11__eol__1.2.2 核心板 | 12__eol__1.2.3 底板 | 14__eol__1.2.4 交通灯板 | 15__eol__1.2.5 炫彩灯板 | 16__eol__1.2.6 环境监测板 | 17__eol__1.2.7 OLED显示屏板 | 18__eol__1.2.8 NFC扩展板 | 19__eol__1.2.9 开发套件的组装 | 20__eol__1.2.10 轻量系统开发快速入门 | 23__eol__第2章 搭建OpenHarmony开发环境 | 26__eol__2.1 搭建开发环境(Windows系统) | 26__eol__2.1.1 安装虚拟机工具 | 26__eol__2.1.2 安装CH340芯片驱动 | 31__eol__2.1.3 安装串口调试工具 | 31__eol__2.1.4 安装开发工具 | 35__eol__2.1.5 安装烧录工具 | 37__eol__2.1.6 首次烧录运行 | 39__eol__ __eol__2.2 搭建编译环境(Ubuntu系统) | 43__eol__2.2.1 安装Ubuntu系统 | 43__eol__2.2.2 配置编译环境 | 56__eol__2.2.3 使用预搭建的编译环境 | 63__eol__2.3 下载和编译OpenHarmony源码 | 67__eol__2.3.1 获取OpenHarmony源码 | 67__eol__2.3.2 源码目录简介 | 73__eol__2.3.3 编译源码 | 73__eol__2.3.4 烧录固件 | 75__eol__2.3.5 在智能家居开发套件上运行 | 78__eol__2.3.6 OpenHarmony的系统架构 | 79__eol__2.4 构建开发网络 | 81__eol__2.4.1 物联网 | 81__eol__2.4.2 构建适用于个人和团队的开发网络 | 82__eol__2.4.3 构建适用于学校机房的开发网络 | 83__eol__2.4.4 AT命令介绍 | 90__eol__2.4.5 使用AT命令建立网络连接 | 91__eol__2.4.6 使用MobaXterm脚本快速联网 | 93__eol__第3章 OpenHarmony开发入门 | 95__eol__3.1 HelloWorld | 95__eol__3.1.1 编写程序源码 | 95__eol__3.1.2 编译源码 | 98__eol__3.1.3 烧录固件 | 98__eol__3.1.4 通过串口调试工具查看程序的运行结果 | 98__eol__3.1.5 OpenHarmony系统启动的8个阶段 | 99__eol__3.1.6 VS Code的IntelliSense设置 | 100__eol__3.1.7 VS Code解析.gn文件 | 102__eol__3.1.8 屏蔽OpenHarmony内置的XTS | 103__eol__3.1.9 快速查找文件和代码 | 104__eol__3.1.10 快速重复烧录和测试最佳实践方案 | 105__eol__3.2 轻量系统的编译构建 | 107__eol__3.2.1 OpenHarmony的编译构建系统 | 107__eol__3.2.2 编译构建系统的配置规则 | 111__eol__3.3 编译构建系统的使用 | 122__eol__3.3.1 案例:新增组件 | 122__eol__3.3.2 案例:新增产品解决方案 | 125__eol__3.3.3 案例:组件/模块开发 | 129__eol__3.4 轻量系统的数据持久化 | 135__eol__3.4.1 数据持久化概述 | 135__eol__3.4.2 键值存储 | 136__eol__3.4.3 键值存储案例程序 | 139__eol__3.4.4 文件操作 | 142__eol__3.4.5 文件操作案例程序 | 142__eol__第4章 OpenHarmony内核编程接口 | 146__eol__4.1 OpenHarmony内核简介 | 146__eol__4.1.1 内核子系统 | 146__eol__4.1.2 轻量系统内核简介 | 148__eol__4.1.3 小型系统内核简介 | 150__eol__4.1.4 标准系统内核简介 | 152__eol__4.1.5 CMSIS简介 | 153__eol__4.1.6 CMSIS-RTOS2 | 154__eol__4.2 线程管理 | 155__eol__4.2.1 线程 | 156__eol__4.2.2 API介绍 | 156__eol__4.2.3 内核编程的VS Code IntelliSense设置 | 158__eol__4.2.4 案例程序1 | 159__eol__4.2.5 案例程序2 | 162__eol__4.3 通用等待功能 | 166__eol__4.3.1 时间管理 | 167__eol__4.3.2 API介绍 | 169__eol__4.3.3 案例程序 | 172__eol__4.4 定时器管理 | 176__eol__4.4.1 软定时器 | 176__eol__4.4.2 API介绍 | 177__eol__4.4.3 案例程序 | 179__eol__4.5 互斥锁管理 | 183__eol__4.5.1 互斥锁 | 183__eol__4.5.2 API介绍 | 190__eol__4.5.3 案例程序 | 192__eol__4.6 信号量管理 | 196__eol__4.6.1 信号量 | 197__eol__4.6.2 API介绍 | 200__eol__4.6.3 案例程序 | 202__eol__ __eol__4.7 消息队列管理 | 210__eol__4.7.1 消息队列 | 211__eol__4.7.2 API介绍 | 213__eol__4.7.3 案例程序 | 214__eol__第5章 控制I/O设备 | 220__eol__5.1 GPIO输出电平 | 220__eol__5.1.1 GPIO | 220__eol__5.1.2 轻量设备的IoT接口现状 | 221__eol__5.1.3 相关API介绍 | 223__eol__5.1.4 核心板的可编程LED灯介绍 | 225__eol__5.1.5 IoT编程的VS Code IntelliSense设置 | 225__eol__5.1.6 案例程序 | 226__eol__5.1.7 给未知函数或库增加IntelliSense | 228__eol__5.2 GPIO按键输入 | 229__eol__5.2.1 轮询与中断 | 229__eol__5.2.2 相关API介绍 | 230__eol__5.2.3 核心板的按键介绍 | 231__eol__5.2.4 案例程序:轮询方式 | 231__eol__5.2.5 案例程序:中断方式 | 235__eol__5.2.6 案例程序:中断方式低能耗 | 238__eol__5.3 PWM输出方波 | 241__eol__5.3.1 PWM | 241__eol__5.3.2 相关API介绍 | 246__eol__5.3.3 交通灯板的蜂鸣器介绍 | 247__eol__5.3.4 案例程序:控制蜂鸣器发声 | 247__eol__5.3.5 案例程序:控制蜂鸣器播放音乐 | 250__eol__5.3.6 案例程序:控制蜂鸣器的音量 | 258__eol__5.3.7 交通灯板的三色灯介绍 | 261__eol__5.3.8 案例程序:交通灯演示 | 261__eol__5.3.9 炫彩灯板的三色灯介绍 | 267__eol__5.3.10 案例程序:控制三色灯的亮度 | 269__eol__第6章 感知环境状态 | 275__eol__6.1 使用ADC获取模拟传感器的数据 | 275__eol__6.1.1 ADC | 275__eol__6.1.2 相关API介绍 | 278__eol__6.1.3 炫彩灯板的光敏电阻介绍 | 278__eol__6.1.4 案例程序:通过光敏电阻感知环境光 | 279__eol