前言在轻量设备里面,我们常常需要获取本地时间,用于时间显示,log记录,帮助RTC芯片纠正时间等等。我们在之前设计了一个智慧时钟,需要使用到本地当前时间,因此本篇文章想在OpenHarmony上实现SNTP获取本地时间,并将此功能集成为一个模块,便于我们的主程序调用。环境OpenHarmony3.1润和hisparkpegasusHi3861开发板DevEcoDeviceTool串口调试助手SNTP介绍SNTP(SimpleNetworkTimeProtocal简单网络时间协议),用于跨广域网或局...
2023-12-27 18:35:19 6074浏览 1点赞 0回复 1收藏
【本文正在参加2023年第一期优质创作者激励计划】LVGL移植系列:[创作者激励【FFH】OpenHarmony轻量化系统的LVGL使用(一)](https:ost.51cto.composts21933)前言在做OpenHarmony的LVGL之前,学习了STM32的LVGL移植,其中遇到了很多问题,也学会了很多知识,为下一步的移植打下了基础。本篇文章主要讲解如何移植LVGL到OpenHarmony轻量化系统上。环境OpenHarmony3.1润和hisparkpegasusHi3861开发板DevEcoDeviceTool串口调试助手SSD...
2023-03-26 21:18:58 8169浏览 4点赞 1回复 1收藏
【本文正在参加2023年第一期优质创作者激励计划】概括LVGL(LightandVersatileGraphicsLibrary)是一个开源轻量级显示框架,支持多类型显示设备&&输入设备,作为一个开源图形库,自带了三十多种小组件供开发者使用。兼容低配置的嵌入式开发,可以以极低的配置要求完成丝滑动画。LVGL其强大的功能,使得它在物联网设备中应用比比皆是。前一阵子开发了润和hisparkpegasusHi3861开发板上的SSD1306,其提供的开发库开发起来还是较为...
2023-03-14 18:42:14 6927浏览 1点赞 1回复 0收藏
【本文正在参加2023年第一期优质创作者激励计划】概括前一阵子想着语音识别作为物联网不可或缺的一部分,前提是获取到语音的声音数据。对于声音收录数字化,stm32有很多现成的样例,而OpenHarmony方面较少该方面的资料。便想着在OpenHarmony实现接收INMP441麦克风模块。本次实现通过I2S接收INMP441模块的PCM数据。环境OpenHarmony3.1润和hisparkpegasusHi3861开发板DevEcoDeviceToolSerialPlotINMP441麦克风模块声音数字化生活...
2023-03-12 19:07:57 5104浏览 2点赞 1回复 1收藏
【本文正在参加2023年第一期优质创作者激励计划】概述ANY功能是一种华为私有的短数据通信功能,允许处于同一信道的2个WiFi设备进行直接的点对点无连接通信。ANY可以应用于智能开关控制灯泡、传感器数据采集、遥控器控制家用电器等无线控制场景。ANY功能特点每个设备可以选择一个接口(例如:wlan0或ap0)用于ANY报文的收发。ANY报文采用接口当前所在信道进行收发,和通信对端需要处于同一信道。单个ANY报文最多可以支持250byte...
2023-03-06 20:31:39 4723浏览 7点赞 7回复 4收藏
gn项目构建工具学习我们为何要使用构建工具?对于一个新手入门简单的helloworld程序而言,我们可以直接使用gcc命令对其进行编译。对于OpenHarmony系统而言,代码规模庞大,再想要直接使用gcc等工具链的命令进行编译自然是不可能的了,这时就出现了项目构建工具间接地调用工具链,使用构建工具定义编译规则便可以简单高效地进行开发。gn即Generateninja,是一种元构建系统(metabuildsystem),用于生成ninja文件。由于ninja文件...
2023-01-21 20:33:22 7552浏览 4点赞 1回复 2收藏
[toc]前言由于嵌入式开发大多数都在Ubuntu上,最近也在想着做一台纯Ubuntu的电脑,但OpenHarmony还是需要Windows上的HiBurn软件进行烧录工作,就想着解决了这个问题,是否就能在Ubuntu上实现一站式开发。准备Ubuntu系统版本:Ubuntu20.04.5LTS64bitOpenHarmony的编译环境步骤,网上已经有了很多教程,本文就不再过多叙述.首先获取HiBurn软件,将HiBurn下载到Ubuntu上。下载地址:[https:ost.51cto.comresource29](https:gitee.coml...
2022-10-25 15:10:15 4632浏览 2点赞 0回复 1收藏
本次以Hi3861芯片,OpenHarmony3.1轻量系统为例问题一:HUAWEIDevEcoDeviceTool没有RemoteDevelopment选项解决方法:1.在DEVECO右上角的菜单里面进行勾选,得以显示。2.在官网进行重新下载安装[华为集成开发环境IDE](https:device.harmonyos.comcndevelopide)问题二:库函数未定义[OHOSERROR]riscv32unknownelfld:ohoslibslibocmqtt.a(libocmqtt.iotcloudocsample.o):infunctiongy906init':[OHOSERROR]iotcloudocsample.c:(.text...
2022-10-24 14:43:11 5332浏览 5点赞 1回复 2收藏
前言本文主要以小熊派Nano上面使用的NT3H1201为例,介绍个人对NFC的一些理解.NT3H12021NFC芯片主要特点:工作频率:13.56MHz;用户读写区:1904bytes;SRAM:64bytes;NT3H1201NFC标签可直接作为标准IIC设备使用;NDEF协议ndef全称nfcdataexchangeformat,是轻量级的紧凑的二进制格式,可带有URL、vCard和NFC定义的各种数据类型。NDEF可以记录多个数据(NFCrecord),而数据(NFCrecord)里面又具体地分为了数据头(NFCrecordheader)和数...
2022-10-23 16:43:11 8663浏览 2点赞 0回复 2收藏
前言智能小车设备可以接收手机发送的操控指令,得以完成手机操控小车。智能小车还实现无感连接,无论哪一个智能小车设备,手机只需要对着智能小车上的标签碰一碰,即可连接到该小车并自动打开相对应的操作软件,对该小车进行控制,操作简单易懂,易于上手。实现方式1.3861遥控小车控制两个电机,并打开热点以供手机连接2.NFC标签写入遥控小车的SSID,PSK,IP地址3.手机碰一碰小车上的NFC标签,即可一键连接小车建立TCP连接,与...
2022-10-22 15:13:23 7977浏览 4点赞 2回复 4收藏
[TOC]前言LWIP全称为LIghtWeightIP,本意便是轻量化的小型TCP协议,旨在保留TCP的功能下尽量减少对系统资源的占用,LWIP多用于轻量化的设备上.当然LWIP功能不只是支持TCP协议传输,还支持了DHCP协议动态分配IP地址,IP协议等等.OpenHarmony轻量化系统连接WIFI便多数都为LWIP协议,本文便主要介绍轻量化系统连接WIFI的分配IP步骤对于小熊派nano而言,lwip的主要头文件都保存在了该地址下:vendorhisihi3861hi3861thirdpartylwipsackinclu...
2022-10-21 09:47:54 7991浏览 4点赞 0回复 3收藏
[toc]前言最近的一个项目需要用到红外温度传感器,便想着能不能在Hi3861上开发这个外设,经过摸索了一阵子,终于把红外温度传感器简单的开起来了,后面还会追加对传感器的使用。本次使用开发板:HiSparkWiFiIoT红外温度传感器介绍红外温度传感器应用广泛,在疫情期间可做体温测量,在汽车上可做空调控制、防雾应用,在家庭中可做家电温度控制等等。MLX90614是一款红外非接触温度计(下文多以gy906简称)。TO39金属封装里同时集成了...
2022-09-28 13:20:44 7189浏览 1点赞 2回复 2收藏
[toc]前言在之前学习了很多新的有趣知识,本次学习了超声波模组,利用已学的知识给遥控小车加上一个简单的自动避障功能.有了超声波模组,以后可以开发更有意思的小实验,例如简单的无人操控小车、简单的量尺....准备创建文件夹和相关的代码文件其中WIFIcar保存网络连接遥控小车的代码,WIFIhcsr04保存超声波模组相关的代码编辑BUILD.gn,加入相关头文件的引用路径(小tips:不知道路径的头文件可以用Ctrl+P搜索)staticlibrary("WIFIcar...
2022-09-27 01:39:45 7979浏览 8点赞 7回复 3收藏
[TOC]前言我们在第一篇文章中讲到了WIFI的STA连接,本文章主要讲轻量化系统的WIFI的AP连接,即是打开WIFI的热点。本文适用于OpenHarmony3.1的轻量化系统设备.设计流程wifiAPTask主线程函数1.注册wifi事件的回调函数RegisterWifiEvent(WifiEventevent)2.初始化wifi热点相关配置SetHotspotConfig(constHotspotConfigconfig)3.启动wifi热点模式EnableHotspot()4.检查热点是否正确地启用IsHotspotActive()5.启动DHCP查找接口:netifa...
2022-09-20 21:59:52 8754浏览 5点赞 4回复 4收藏
[toc]前言当前小熊派Nano官方给的源码是OpenHarmony1.0,而OpenHarmony2.x和3.x都有对轻量化系统增加了新的特性,因此想尝试一下为Nano板烧录OpenHarmony3.1的系统(虽然都没用上新特性emm),并复现串口收发demo.OpenHarmony2.x和3.x新增特性:新增轻量级内核能力增强,包括文件系统增强、内核调试工具增强支持、内核模块支持可配置、三方芯片适配支持、支持ARM9架构等。轻量级图形能力增强支持,包括支持多语言字体对齐、支持显示...
2022-09-14 21:06:10 9731浏览 8点赞 4回复 5收藏
基于TCP开发遥控小车本文主要介绍在hi3861使用TCP进行控制小车,在使用TCP遥控小车之前,需要连接好wifi,连接wifi的步骤可以参考此文章:[OpenHarmony设备开发WIFI连接](https:ost.51cto.composts16671)。TCP传输控制协议,是一种提供可靠的数据传输的协议,是有连接的,按序传输数据的,面向字节流的,可靠稳定的协议.TCP通讯设备分为了客户端和服务端,在本文中,在windows上建立服务端,hi3861作为客户端,两者连接手机的wifi进行...
2022-09-03 00:50:15 9168浏览 4点赞 6回复 3收藏
WIFIwifi在我们的日常开发中必不可少,想要开发鸿蒙小车联网操作,想要使开发板不再局限于终端串口操作,更离不开wifi,本篇文章将详细介绍hi3861的wifi开发步骤及介绍.本文主要介绍如何令hi3861开机自动连接wifi代码介绍第一步先在applications\sample\wifiiot\下路径创建WIFIdemo业务代码文件夹,在文件夹内创建业务代码和BUILD.gn编译脚本.业务代码中的头文件引用hiwifiapi.h和netifapi.h保存了一些wifi的API接口,ipaddr.h则是存...
2022-09-01 23:48:27 1.1w浏览 2点赞 3回复 3收藏
夏日挑战赛【FFH】BearPiMicro南向开发I2C驱动代码深耕[本文正在参加星光计划3.0–夏日挑战赛](https:ost.51cto.composts13641)I2C[toc]I2C驱动结构概括接口层将驱动封装起来,用户可直接调用接口层函数进行驱动的使用,用户便可不再需要配置I2C的具体设置核心层是鸿蒙系统用于操作、控制、管理I2C设备适配层则为鸿蒙系统用于兼容不同芯片设备,开发新芯片驱动时可以在此设置芯片的驱动相关底层数据I2C启动的系统结构启动代码在...
2022-06-19 11:55:54 8397浏览 5点赞 2回复 4收藏
[本文正在参加星光计划3.0–夏日挑战赛](https:ost.51cto.composts13641)PWM介绍PWM的频率是指在1秒钟内,信号从高电平到低电平再回到高电平的次数,也是指一秒钟能有多少个周期。占空比是一个脉冲周期内,高电平的时间与整个周期时间的比例。在一定的频率下,PWM通过不同的占空比得到不同大小的输出模拟电压,通过这种原理实现数字模拟信号转换。如下图第一个计数周期,当CNTCCRx时输出高电平。周期即是(t20)s,占空比是t1t2...
2022-06-14 23:15:23 8668浏览 9点赞 3回复 3收藏
Micro的I2C介绍串行时钟线SCL管脚为GPIOF14,串行数据线SDA管脚为GPIOF15.I2C使用步骤为1.打开I2C2.得知从设备地址3.构建使用的数据4.向设备地址发送此数据操作函数开启、关闭I2CC++include"i2cif.h"staticDevHandlemyi2cHandNULL;myi2cHandI2cOpen(1);正确关闭I2cClose(myi2cHand);myi2cHandNULL;定义I2C数据结构体C++typedefstruct{uint16taddr;I2C设备地址uint8tbuf;数据地址uint16tlen;数据长度uint16tflags;I2C模式}MyIICMsg;I2C的16位flags的每一位定义:位操作使用定义模式:::0Writeflag(0x1
2022-06-05 08:56:57 6979浏览 5点赞 0回复 1收藏