Hi3861

基于 OpenHarmony 的 Hi3861 嵌入式开发项目,覆盖红绿灯、炫彩灯、环境监测与 AT 指令四大模块。

01

红绿灯板开发

三色 LED 与 S3 按钮协同,完成灯控、并发与按钮交互综合实验。

02

炫彩灯板开发

蜂鸣器、RGB 灯、光敏与人体红外传感器融合,实现音乐可视化与感应照明。

03

环境监测板开发

基于 MQ 2、AHT20、OLED 的环境参数采集、显示与阈值报警。

04

AT 指令开发

扩展自定义 AT 命令,完成开发板串口通信与计算结果返回。

项目结构

目录组织遵循模块化设计,功能分区清晰,便于逐步激活与验证。

Hi3861/
├── rayawa/
│   ├── hello/
│   ├── traffic_light/
│   ├── colorful_light/
│   ├── environment/
│   └── at_command/
├── demolink/
├── iothardware/
├── samgr/
└── startup/
01

模块一 | 红绿灯板开发

聚焦 GPIO 输出与按键输入协同,形成从基础灯控到状态机联动的完整实验链路。

硬件配置

  • 三色 LED:GPIO_10 红灯,GPIO_11 绿灯,GPIO_12 黄灯
  • 控制按键:GPIO_8,S3 按钮

开发项目

  1. light.c:基础灯控,单灯开关与组合控制
  2. traffic.c:交通灯时序循环与任务调度
  3. ability.c:多线程并发与任务同步
  4. button.c:按键检测、消抖与输入处理
  5. control.c:按钮控制红绿灯综合项目

学习路径

light.c → traffic.c → ability.c → button.c → control.c

02

模块二 | 炫彩灯板开发

围绕声音、灯光与感知融合,构建从器件驱动到场景联动的实验体系。

硬件配置

  • 三色 LED:PWM1 红色,PWM2 绿色,PWM3 黄色
  • 蜂鸣器:PWM0
  • 人体传感器:ADC 通道 3
  • 光敏电阻:ADC 输入

开发项目

  1. beep.c:蜂鸣器频率与音效控制
  2. music.c:旋律播放与节奏控制
  3. led.c:音乐与三色灯同步显示
  4. human_sensor.c:人体红外热释电传感器采样
  5. photosensitive.c:光敏采样与环境光判断
  6. human_sensor_light.c:夜晚感应人体自动亮灯

学习路径

beep.c → music.c → led.c → human_sensor.c → photosensitive.c → human_sensor_light.c

03

模块三 | 环境监测板开发

通过多传感器协同与 OLED 可视化,完成环境参数监测与超阈值告警。

硬件配置

  • MQ 2 燃气传感器:ADC 通道 5
  • AHT20 温湿度传感器:I2C
  • OLED 显示屏:SSD1306,I2C
  • 火焰传感器与蜂鸣器告警模块

开发项目

  1. mq2_demo.c:燃气浓度采样
  2. aht20.c/.h:温湿度驱动实现
  3. aht20_demo.c:温湿度采集演示
  4. oled_ssd1306.c/.h:OLED 显示驱动
  5. oled_demo.c:显示渲染演示
  6. enrionment_demo.c:综合监测与报警

技术特性

  • I2C 总线复用:AHT20 与 OLED 协同通信
  • ADC 采样:可燃气体与环境信号数字化
  • 实时显示:OLED 周期刷新关键参数
  • 阈值报警:参数超限触发蜂鸣器告警
04

模块四 | AT 指令开发

在 OpenHarmony AT 框架上扩展命令,形成参数解析、执行与结果回传闭环。

开发项目

  1. cal.c:自定义 AT+CALC=a,b 指令
  2. 支持和、差、积、商四类结果输出
  3. 包含参数校验与除零保护逻辑

通信示例

输入命令:

AT+CALC=12,3

返回结果:

+CALC:Sum=15 +CALC:Diff=9 +CALC:Prod=36 +CALC:Quot=4 OK

编译与使用流程

  1. 编辑 rayawa/BUILD.gn 激活目标模块
  2. 编辑模块内部 BUILD.gn 激活目标源码
  3. 在 OpenHarmony 根目录执行 hb build
  4. 使用 HiBurn 烧录到 Hi3861 开发板
  5. 串口参数设置为 115200,8N1,观察运行输出

技术栈

  • 硬件接口:GPIO、PWM、I2C、ADC
  • 系统框架:OpenHarmony、CMSIS RTOS2、HiAT Framework
  • 构建工具:GN、Ninja、hb
  • 调试与烧录:HiBurn、串口终端
  • 版本管理:Git