OpenHarmony轻量设备开发理论与实战

OpenHarmony轻量设备开发理论与实战

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书系统地介绍了OpenHarmony轻量设备开发的知识。

内容简介

本书注重知识间的关联性、连贯性和阶梯性,将计算机理论知识和OpenHarmony实践紧密结合,更加注重实践内容对理论理解的反哺,同步培养知识和能力,“授人以鱼,并且授人以渔”。本书的内容支持目前所有在用的OpenHarmony版本,并且有能力支持未来的新版本,注重教/学效率,创立了“OpenHarmony轻量设备教/学全家桶”。

全书共分10章,包括OpenHarmony及其开发套件、搭建OpenHarmony开发环境、OpenHarmony开发入门、OpenHarmony内核编程接口、控制I/O设备、感知环境状态、OLED显示屏的驱动和控制、控制Wi-Fi、网络编程及MQTT编程。

作者简介

江苏润开鸿数字科技有限公司,江苏润开鸿数字科技有限公司(简称“润开鸿”)于2022年成立于南京,是由江苏润和软件股份有限公司(简称“润和软件”)投资成立的全资子公司。润开鸿聚焦于OpenHarmony 国产化数字底座,面向以垂直行业为代表的千行百业提供深度融合行业特征与业务场景的终端商用设备操作系统发行版及解决方案。

章节目录

版权信息

内容简介

第1章 OpenHarmony及其开发套件

1.1 初识OpenHarmony

1.1.1 OpenHarmony是什么

1.1.2 OpenHarmony的重要性

1.1.3 OpenHarmony南向开发与北向开发

1.1.4 OpenHarmony的版本

1.1.5 OpenHarmony官网

1.1.6 OpenHarmony官网文档获取

1.1.7 本书内容概述

1.1.8 学习本书需要的基础知识

1.2 润和Pegasus智能家居开发套件简介

1.2.1 海思Hi3861V100芯片简介

1.2.2 核心板

1.2.3 底板

1.2.4 交通灯板

1.2.5 炫彩灯板

1.2.6 环境监测板

1.2.7 OLED显示屏板

1.2.8 NFC扩展板

1.2.9 开发套件的组装

1.2.10 轻量系统开发快速入门

第2章 搭建OpenHarmony开发环境

2.1 搭建开发环境(Windows系统)

2.1.1 安装虚拟机工具

2.1.2 安装CH340芯片驱动

2.1.3 安装串口调试工具

2.1.4 安装开发工具

2.1.5 安装烧录工具

2.1.6 首次烧录运行

2.2 搭建编译环境(Ubuntu系统)

2.2.1 安装Ubuntu系统

2.2.2 配置编译环境

2.2.3 使用预搭建的编译环境

2.3 下载和编译OpenHarmony源码

2.3.1 获取OpenHarmony源码

2.3.2 源码目录简介

2.3.3 编译源码

2.3.4 烧录固件

2.3.5 在智能家居开发套件上运行

2.3.6 OpenHarmony的系统架构

2.4 构建开发网络

2.4.1 物联网

2.4.2 构建适用于个人和团队的开发网络

2.4.3 构建适用于学校机房的开发网络

2.4.4 AT命令介绍

2.4.5 使用AT命令建立网络连接

2.4.6 使用MobaXterm脚本快速联网

第3章 OpenHarmony开发入门

3.1 HelloWorld

3.1.1 编写程序源码

3.1.2 编译源码

3.1.3 烧录固件

3.1.4 通过串口调试工具查看程序的运行结果

3.1.5 OpenHarmony系统启动的8个阶段

3.1.6 VS Code的IntelliSense设置

3.1.7 VS Code解析.gn文件

3.1.8 屏蔽OpenHarmony内置的XTS

3.1.9 快速查找文件和代码

3.1.10 快速重复烧录和测试最佳实践方案

3.2 轻量系统的编译构建

3.2.1 OpenHarmony的编译构建系统

3.2.2 编译构建系统的配置规则

3.3 编译构建系统的使用

3.3.1 案例:新增组件

3.3.2 案例:新增产品解决方案

3.3.3 案例:组件/模块开发

3.4 轻量系统的数据持久化

3.4.1 数据持久化概述

3.4.2 键值存储

3.4.3 键值存储案例程序

3.4.4 文件操作

3.4.5 文件操作案例程序

第4章 OpenHarmony内核编程接口

4.1 OpenHarmony内核简介

4.1.1 内核子系统

4.1.2 轻量系统内核简介

4.1.3 小型系统内核简介

4.1.4 标准系统内核简介

4.1.5 CMSIS简介

4.1.6 CMSIS-RTOS2

4.2 线程管理

4.2.1 线程

4.2.2 API介绍

4.2.3 内核编程的VS Code IntelliSense设置

4.2.4 案例程序1

4.2.5 案例程序2

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 互斥锁管理

4.5.1 互斥锁

4.5.2 API介绍

4.5.3 案例程序

4.6 信号量管理

4.6.1 信号量

4.6.2 API介绍

4.6.3 案例程序

4.7 消息队列管理

4.7.1 消息队列

4.7.2 API介绍

4.7.3 案例程序

第5章 控制I/O设备

5.1 GPIO输出电平

5.1.1 GPIO

5.1.2 轻量设备的IoT接口现状

5.1.3 相关API介绍

5.1.4 核心板的可编程LED灯介绍

5.1.5 IoT编程的VS Code IntelliSense设置

5.1.6 案例程序

5.1.7 给未知函数或库增加IntelliSense

5.2 GPIO按键输入

5.2.1 轮询与中断

5.2.2 相关API介绍

5.2.3 核心板的按键介绍

5.2.4 案例程序:轮询方式

5.2.5 案例程序:中断方式

5.2.6 案例程序:中断方式低能耗

5.3 PWM输出方波

5.3.1 PWM

5.3.2 相关API介绍

5.3.3 交通灯板的蜂鸣器介绍

5.3.4 案例程序:控制蜂鸣器发声

5.3.5 案例程序:控制蜂鸣器播放音乐

5.3.6 案例程序:控制蜂鸣器的音量

5.3.7 交通灯板的三色灯介绍

5.3.8 案例程序:交通灯演示

5.3.9 炫彩灯板的三色灯介绍

5.3.10 案例程序:控制三色灯的亮度

第6章 感知环境状态

6.1 使用ADC获取模拟传感器的数据

6.1.1 ADC

6.1.2 相关API介绍

6.1.3 炫彩灯板的光敏电阻介绍

6.1.4 案例程序:通过光敏电阻感知环境光

6.1.5 炫彩灯板的人体红外传感器介绍

6.1.6 案例程序:通过人体红外传感器感知人体靠近

6.1.7 案例程序:智能夜灯

6.1.8 OLED显示屏板的按键介绍

6.1.9 案例程序:使用ADC值区分同一个引脚的不同按键

6.2 使用ADC获取可燃气体传感器的数据

6.2.1 可燃气体传感器

6.2.2 环境监测板的MQ-2可燃气体传感器介绍

6.2.3 案例程序:使用可燃气体传感器感知空气状态

6.2.4 案例程序:可燃气体报警器

6.3 使用I2C获取数字温湿度传感器的数据

6.3.1 I2C

6.3.2 相关API介绍

6.3.3 环境监测板的AHT20数字温湿度传感器介绍

6.3.4 案例程序:实现AHT20数字温湿度传感器的驱动程序

6.3.5 案例程序:获取AHT20数字温湿度传感器的状态

第7章 OLED显示屏的驱动和控制

7.1 I2C驱动OLED显示屏

7.1.1 OLED简介

7.1.2 OLED显示屏板介绍

7.1.3 OLED的初始化

7.1.4 在OLED显示屏上绘制画面

7.1.5 案例程序:实现OLED显示屏简化版驱动程序

7.1.6 在OLED显示屏上绘制ASCII字符

7.1.7 案例程序:在OLED显示屏上显示西文字符

7.2 在OLED显示屏上显示汉字

7.2.1 中文字体

7.2.2 定义中文字库

7.2.3 显示汉字

7.2.4 案例程序

7.3 第三方OLED显示屏驱动库

7.3.1 驱动库简介

7.3.2 驱动库的源码结构

7.3.3 驱动库API介绍

7.3.4 增强驱动库功能

7.3.5 驱动库的接入方法

7.3.6 案例程序

7.4 二维码生成器模块

7.4.1 模块简介

7.4.2 模块的源码结构

7.4.3 模块API介绍

7.4.4 模块的接入方法

7.4.5 案例程序

第8章 控制Wi-Fi

8.1 Wi-Fi的基本概念

8.1.1 Wi-Fi简介

8.1.2 Wi-Fi的连接过程

8.1.3 Wi-Fi工作模式简介

8.2 Wi-Fi STA模式编程

8.2.1 Wi-Fi编程的VS Code IntelliSense设置

8.2.2 相关API介绍

8.2.3 扫描Wi-Fi热点

8.2.4 案例程序:扫描Wi-Fi热点

8.2.5 连接Wi-Fi热点

8.2.6 案例程序:连接Wi-Fi热点

8.3 Wi-Fi AP模式编程

8.3.1 相关API介绍

8.3.2 创建Wi-Fi热点

8.3.3 提供DHCP服务

8.3.4 案例程序:创建Wi-Fi热点

8.4 EasyWiFi模块

8.4.1 EasyWiFi模块简介

8.4.2 EasyWiFi模块的源码结构

8.4.3 EasyWiFi模块的API介绍

8.4.4 模块的接入方法

8.4.5 案例程序

第9章 网络编程

9.1 TCP客户端编程

9.1.1 LwIP开源项目简介

9.1.2 相关API介绍

9.1.3 网络编程的VS Code IntelliSense设置

9.1.4 TCP客户端的工作流程

9.1.5 网络工具netcat

9.1.6 案例程序

9.2 TCP服务端编程

9.2.1 相关API介绍

9.2.2 TCP服务端的工作流程

9.2.3 案例程序

9.3 UDP客户端编程

9.3.1 相关API介绍

9.3.2 UDP客户端的工作流程

9.3.3 案例程序

9.4 UDP服务端编程

9.4.1 相关API介绍

9.4.2 UDP服务端的工作流程

9.4.3 案例程序

第10章 MQTT编程

10.1 MQTT简介

10.1.1 MQTT

10.1.2 MQTT的应用场景

10.1.3 MQTT的技术特性

10.1.4 广义上的发布/订阅模式

10.1.5 MQTT的订阅与发布模型

10.2 Paho-MQTT

10.2.1 Paho-MQTT简介

10.2.2 Paho-MQTT源码的结构

10.2.3 Paho-MQTT编程的VS Code IntelliSense设置

10.2.4 Paho-MQTT的编译

10.2.5 MQTT代理Mosquitto

10.2.6 在设备端发布消息

10.2.7 在设备端订阅消息

10.3 MQTT客户端编程

10.3.1 对Paho-MQTT进行封装

10.3.2 Paho-MQTT模块的接入方法

10.3.3 案例程序

10.4 案例:灯光控制

10.4.1 灯光控制案例项目简介

10.4.2 实现灯光控制案例项目

10.5 案例:环境光采集

10.5.1 环境光采集案例项目简介

10.5.2 实现环境光采集案例项目

10.6 案例:人体感应

10.6.1 人体感应案例项目简介

10.6.2 实现人体感应案例项目

10.7 案例:可燃气体报警

10.7.1 可燃气体报警案例项目简介

10.7.2 实现可燃气体报警案例项目

10.8 案例:温湿度收集

10.8.1 温湿度收集案例项目简介

10.8.2 实现温湿度收集案例项目

10.9 案例:广告屏

10.9.1 广告屏案例项目简介

10.9.2 实现广告屏案例项目

OpenHarmony轻量设备开发理论与实战是2023年由电子工业出版社出版,作者江苏润开鸿数字科技有限公司 编著。

得书感谢您对《OpenHarmony轻量设备开发理论与实战》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
AppInventor开发实战 电子书
App Inventor是MIT开发的流行的可视化编程工具,编程爱好者可以在短时间学会创建炫目的安卓手机应用。
UI交互设计与开发实战 电子书
用户界面在当下的网络世界中无处不在,是人与计算机进行交流的窗口。《UI交互设计与开发实战》从软件工程的角度出发,以软件周期开发模型为参考,深入讲解了用户界面设计中各环节的具体内容,并以丰富的图片案例形式介绍用户界面设计如何将交互体验与视觉美观融为一体,也使用了大量可读代码展示用户界面是如何实现的。《UI交互设计与开发实战》分为三部分:第壹部分(第1章)主要介绍用户界面历史及界面设计的相关概念,阐述
Flutter跨平台开发入门与实战 电子书
本书共分十四章,内容包括:Flutter概述、Flutter快速入门、Dart基础、Flutter组件基础、Flutter页面布局、高级组件、事件处理、动画、路由与导航、网络与通信、数据持久化、混合开发、插件开发与热更新、新冠肺炎疫情应用。
ReactNative移动开发实战 电子书
React native入门书籍,打造高品质移动用户体验。
鸿蒙应用开发实战 电子书
本书为华为鸿蒙系统HarmonyOS开发图书,以JavaScript为开发语言,提供完整源代码。