IoT · 嵌入式系统2023独立开发者

HarmonyOS 智能小屋

基于 BearPi-HM Nano 与 Hi3861,将 HarmonyOS 设备驱动、环境数据、Wi-Fi/TCP 通信和手机控制整合为可运行的智能小屋原型。

HarmonyOSBearPiHi3861IoTWi-Fi / TCPDevice Control
ARCHIVE / 2023从系统到现实控制

手机、网络、嵌入式设备与物理世界形成一条可运行链路。

HARMONYOS APP
MOBILE CONTROL
↕WI-FI / TCP↕BEARPI-HM NANO
Hi3861 · HarmonyOS
↕SENSORS / ACTUATORS
Lux · Temp/Humidity · Light · Motor
根据 2023 年原始课程报告中的 Smart Home 模块与设备控制流程重绘。

01 / 项目快照

角色

独立开发者

日期

2023

平台

HarmonyOS 1.1.0

硬件

BearPi-HM Nano · Hi3861

核心范围

嵌入式系统 · 设备驱动 · IoT 网络 · 硬件控制 · 移动应用

技术能力

GPIO · I2C · UART · PWM · ADC · Wi-Fi · KV Storage · TCP

BearPi-HM Nano development board used in the HarmonyOS course project
原始课程报告中的 BearPi-HM Nano 开发板与 Type-C 连接实物照片。

02 / 问题

一次手机操作,如何真正改变开发板上的物理状态?

项目聚焦四层真实工程问题:设备运行 HarmonyOS、系统读取传感器并控制硬件、开发板通过 Wi-Fi 通信,以及手机显示状态并发送控制命令。

03 / 从底层能力到完整系统

课程能力与最终综合应用,明确区分。

APPLICATION
HarmonyOS Mobile App
NETWORK
Wi-Fi / TCP
SYSTEM
Threads · Semaphore · Mutex · Queue · Event · Timer · KV Storage
DEVICE
GPIO · I2C · UART · PWM · ADC
HARDWARE
BearPi-HM Nano · Hi3861

这些来自完整课程训练;最终 Smart Home 明确整合了设备初始化、Wi-Fi、TCP Server、状态上报与命令处理,而非宣称每项基础实验都直接构成最终架构。

04 / 系统机制

综合应用之前,先理解任务与资源如何协同。

CONCURRENCY

线程与任务

SYNCHRONISATION

Semaphore / Mutex

COMMUNICATION

Message Queue

SCHEDULING

Timer / Event

05 / 让软件影响物理世界

驱动让状态跨过屏幕边界。

SOFTWARE ↓ HARMONYOS DRIVER ↓ GPIO / PWM / ADC / I2C / UART ↓ SENSOR / ACTUATOR ↓ PHYSICAL WORLD

课程覆盖 GPIO、按键、LED、PWM、ADC、光照与气象检测,以及 I2C / UART 基础。最终智能小屋远程控制的是灯和风扇;页面不将所有驱动能力误写为最终模块的直接接口。

06 / 从设备到网络

Wi-Fi 与 TCP,把板端状态连接到应用。

HARMONYOS APP
MOBILE CONTROL
↕WI-FI / TCP↕BEARPI-HM NANO
Hi3861 · HarmonyOS
↕SENSORS / ACTUATORS
Lux · Temp/Humidity · Light · Motor

报告记录 Wi-Fi 网络连接、TCP Server 与 KV Storage 基础实践。KV Storage 在此只作为网络相关配置或状态持久化能力的基础,不包装为云端配置平台。

07 / 智能小屋

以模块拆分一套灯与风扇远程控制系统。

app_maininitialise peripherals · TCP server · tasksapp_report_messagesensor and state reportingapp_deal_commandremote command handlingsensor / wifi / profile_packageenvironment data · connection · message packaging

报告中的 app_main.c 完成外设初始化、创建 TCP Server,并创建命令处理和数据上报任务。

08 / 状态上报

设备状态不是单向读数,而是应用可理解的数据。

LuxTemperatureHumidityMotorLight

Smart_Home 服务实际打包并发送 Lux、Temperature、Humidity、Motor 与 Light 字段;页面不虚构具体传感器数值。

09 / 从按钮到现实世界

Device → App 上报,App → Device 控制。

User taps mobile UI ↓ TCP command ↓ Hi3861 receives message ↓ HarmonyOS task parses it ↓ Motor_StatusSet / Light_StatusSet ↓ Physical state changes ↓ Updated status reports back

app_deal_command.c 处理 Motor ON/OFF 与 Light ON/OFF:接收字符串后分别调用 Motor_StatusSet 或 Light_StatusSet,并更新状态。

10 / Mobile Control

输入开发板 IP 与端口后建立连接。

报告记录 HarmonyOS 本地模拟器、真机调试,以及手机端输入开发板 IP 与开放端口、点击 OK 后自动连接的流程。为避免公开网络信息,页面以系统流程说明而非截图展示。

11 / 技术价值

EMBEDDED OS

HarmonyOS 中任务、同步、消息与事件机制。

HARDWARE INTERFACE

驱动能力连接环境数据与 LED / Motor 等物理设备。

IOT NETWORKING

Wi-Fi / TCP 连接开发板与应用。

SYSTEM INTEGRATION

将传感器、状态、网络与手机组合为 Smart Home 原型。

12 / 我的收获

操作系统、嵌入式硬件、网络与应用必须同时成立,用户才能看到一个真正可用的功能。

这是我第一次较系统地把 Operating System、Embedded Device、Network 与 Application 组合成完整系统。今天重做时,我会加入更清晰的 Device / Service 抽象、统一数据协议、连接状态与命令确认、retry / timeout、telemetry schema、自动化测试、状态同步和异常处理,并改善 App UI;这些属于今天的改进方向,不是 2023 年的既有实现。

下一个案例

音乐之家 APP

↗