
hi3861鸿蒙开发
文章平均质量分 78
andylauren
嵌入式爱好者
展开
-
Hi3861 OpenHarmony嵌入式应用入门--华为 IoTDA 设备接入
华为云物联网平台(IoT 设备接入云服务)提供海量设备的接入和管理能力,可以将自己的 IoT 设备 联接到华为云,支撑设备数据采集上云和云端下发命令给设备进行远程控制,配合华为云物联网平台的服 务实现设备与设备之间的控制,设备与物联网平台之间的数据信息交互。在写代码之前先准备好华为云的环境。注册华为云账号,这里就不介绍了,有手机就行,需要进行实名认证。在控制台选择北京四,因为其他的可能需要企业才能使用,作为个人开发者就用北京四吧。创建设备实例。能看到设备实例的信息我们要是用的接入方式-mqtt。原创 2024-07-11 13:51:51 · 1667 阅读 · 1 评论 -
Hi3861 OpenHarmony嵌入式应用入门--HTTPD
httpd 是 Apache HTTP Server 的守护进程名称,Apache HTTP Server 是一种广泛使用的开源网页服务器软件。本项目是从LwIP中抽取的HTTP服务器代码;`Hi3861 SDK`中已经包含了一份预编译的lwip,但没有开启HTTP服务器功能(静态库无法修改);原创 2024-07-11 13:40:08 · 631 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--SNTP
sntp(Simple Network Time Protocol)是一种网络时间协议,它是NTP(Network Time Protocol)的一个简化版本。本项目是从LwIP中抽取的SNTP代码;`Hi3861 SDK`中已经包含了一份预编译的lwip,但没有开启SNTP功能(静态库无法修改);需要保证模块连接的热点能够访问网络的。原创 2024-07-05 10:00:50 · 776 阅读 · 10 评论 -
Hi3861 OpenHarmony嵌入式应用入门--MQTT
MQTT 是机器对机器(M2M)/物联网(IoT)连接协议。它被设计为一个极其轻量级的发布/订阅消息传输 协议。对于需要较小代码占用空间和/或网络带宽非常宝贵的远程连接非常有用,是专为受限设备和低带宽、 高延迟或不可靠的网络而设计。这些原则也使该协议成为新兴的“机器到机器”(M2M)或物联网(IoT)世界 的连接设备,以及带宽和电池功率非常高的移动应用的理想选择。例如,它已被用于通过卫星链路与代理 通信的传感器、与医疗服务提供者的拨号连接,以及一系列家庭自动化和小型设备场景。原创 2024-07-05 09:57:25 · 1358 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--UDP Client
本篇使用的是lwip编写udp客户端。需要提前准备好一个PARAM_HOTSPOT_SSID宏定义的热点,并且密码为PARAM_HOTSPOT_PSK。还需要准备一个udp服务,服务ip为PARAM_SERVER_ADDR宏定义,端口为PARAM_SERVER_PORT宏定义。原创 2024-07-04 15:00:14 · 757 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--UDP Server
本篇使用的是lwip编写udp服务端。需要提前准备好一个PARAM_HOTSPOT_SSID宏定义的热点,并且密码为PARAM_HOTSPOT_PSK。原创 2024-07-04 14:58:19 · 393 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--TCP Client
本篇使用的是lwip编写tcp客户端。需要提前准备好一个PARAM_HOTSPOT_SSID宏定义的热点,并且密码为PARAM_HOTSPOT_PSK。还需要准备一个tcp服务,服务ip为PARAM_SERVER_ADDR宏定义,端口为PARAM_SERVER_PORT宏定义。原创 2024-07-03 16:11:59 · 546 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--TCP Server
本篇使用的是lwip编写tcp服务端。需要提前准备好一个PARAM_HOTSPOT_SSID宏定义的热点,并且密码为PARAM_HOTSPOT_PSK原创 2024-07-03 16:08:04 · 1048 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--wifi sta
本文介绍wifi从机,连接电脑的热点,在电脑上可以看到模块的信息原创 2024-07-02 10:09:00 · 1106 阅读 · 1 评论 -
Hi3861 OpenHarmony嵌入式应用入门--wifi hotspot
本文介绍模块作为热点,使用手机可以进行连接,并输出mac地址原创 2024-07-02 10:00:37 · 521 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--LiteOS MessageQueue
CMSIS 2.0接口中的消息(Message)功能主要涉及到实时操作系统(RTOS)中的线程间通信。在CMSIS 2.0标准中,消息通常是通过消息队列(MessageQueue)来进行处理的,以实现不同线程之间的信息交换。原创 2024-06-25 16:27:12 · 664 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--LiteOS Semaphore做计数
可以将其初始化为一个特定的值(比如你想要计数的最大值),然后每次计数增加或减少时,就调用 Semaphore 的 release() 或 acquire() 方法。但请注意,这样做可能不是最直观的,因为 acquire() 方法的调用可能会阻塞,直到 Semaphore 的内部计数器大于零。原创 2024-06-25 16:15:56 · 519 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--LiteOS Semaphore做同步使用
创建一个Semaphore对象,并指定一个初始的计数值(通常称为“许可”或“令牌”的数量)。这个计数值表示当前可用的资源数量或可以同时访问共享资源的线程数。当一个线程需要访问共享资源时,它会尝试从Semaphore对象中获取一个许可。如果Semaphore的当前计数值大于0,线程会立即获得一个许可,并且计数值减1。线程现在可以安全地访问共享资源。如果Semaphore的当前计数值为0(表示没有可用的许可),线程会被阻塞(挂起),直到有其他线程释放一个许可。原创 2024-06-25 16:14:42 · 498 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--LiteOS semaphore作为锁
CMSIS 2.0 接口中的 Semaphore(信号量)是用于嵌入式系统中多线程或中断服务例程(ISR)之间同步和共享资源保护的重要机制。Semaphore 是一种用于控制对多个共享资源访问的同步机制。它可以被看作是一个计数器,用于跟踪可用资源的数量。原创 2024-06-25 16:13:00 · 1108 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--LiteOS Mutex
CMSIS 2.0接口中的Mutex(互斥锁)是用于在多线程环境中保护共享资源的访问机制。Mutex(互斥锁)是一种特殊的信号量,用于确保同一时间只有一个线程可以访问特定的共享资源。在嵌入式系统或多线程应用中,当多个线程需要访问同一资源时,如果没有适当的同步机制,可能会导致数据不一致或其他问题。Mutex就是用来解决这类问题的。这些函数通常不能在中断服务程序(ISR)中调用,因为中断的上下文可能与这些函数的设计不符。在使用Mutex时,必须确保正确地获取和释放锁,以避免死锁或其他同步问题。原创 2024-06-24 11:12:21 · 362 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--LiteOS Event
CMSIS 2.0接口使用事件标志是实时操作系统(RTOS)中一种重要的同步机制。事件标志是一种轻量级的同步原语,用于任务间或中断服务程序(ISR)之间的通信。每个事件标志对象可以包含多个标志位,通常最多为31个(因为第31位通常保留)。原创 2024-06-24 11:10:44 · 993 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--LiteOS Timer
LiteOS Timer(定时器)是LiteOS操作系统中的一个重要组件,它提供了一种基于软件模拟的定时器功能,用于满足在硬件定时器数量不足时的定时需求。原创 2024-06-21 15:11:30 · 882 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--LiteOS Thread
hi3861使用的实时系统主要是基于Huawei LiteOS-M,这是华为针对物联网领域推出的轻量级物联网操作系统内核。LiteOS-M是Huawei LiteOS的一个分支,专为IoT领域构建,主要面向没有MMU(内存管理单元)的处理器。它具备轻量级、低功耗、组件丰富、快速开发等关键能力,为开发者提供“一站式”完整软件平台。技术特点:轻量级:LiteOS-M内核小巧,适合在资源受限的设备上运行。低功耗:针对IoT设备的特点,LiteOS-M优化了功耗管理,使设备在运行时更省电。原创 2024-06-21 14:25:31 · 932 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--0.96寸液晶屏 iic驱动ssd1306
使用iic驱动ssd1306,代码来源hihope\hispark_pegasus\demo\12_ssd1306是从musl libc中抽取的 sin和 cos的实现;可用于将gif动图中的帧分离出来;可用于将图片转为C数组,每个字节表示8个像素;原创 2024-06-20 19:24:21 · 1179 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--PWM 三色灯
这篇文章是讲解的pwm控制三色灯的部分,这部分也是后续全彩智能灯的基础。硬件原理如下IO管脚定义在hi-12f_v1.1.2-规格书-20211202.pdf文档中。原创 2024-06-20 16:24:17 · 732 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--ADC
本篇讲解使用ADC进行采样,并使用API将采样值转为电压。电路原理图通过hi-12f_v1.1.2-规格书-20211202.pdf 找到IO9对应的ADC通道。原创 2024-06-18 15:30:13 · 642 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--中断按键
本篇讲解gpio的中断使用方式。硬件原理图如下,与上一篇一样的电路。原创 2024-06-18 13:52:18 · 818 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--轮询按键
本篇介绍使用轮询方式读取gpio状态来判断按键状态。原理图如下。原创 2024-06-18 13:49:22 · 425 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--点灯
本篇实现对gpio的控制,通过控制输出进行gpio的点灯操作。原创 2024-06-17 15:31:18 · 679 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--hello world
开发板hello world原创 2024-06-17 15:18:37 · 717 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--总引导连接
这篇没有内容,只是根据内容先后顺序进行连接汇总。原创 2024-06-17 14:58:01 · 742 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--启动流程
Hi3861 的引导程序分为两部分,一部分是在芯片出厂时已经固定在 ROM,这部分的代码主要实现的功能是:芯片上电后,如果没有被打断(没有执行烧录过程)时会检验 flashboot,检验成功后跳转到flashboot 代码处运行;芯片上电后如果被打断(复位操作并执行烧录过程)时,下载 loaderboot,下载完之后校验成功跳转到 loaderboot 运行,汇编代码跳转到 C 代码,再下载其他镜像(burn、boot、signed)并烧录到 flash,结束后,按复位键,芯片启动。原创 2024-06-17 14:43:28 · 632 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--基于HI-12F开发板烧写程序
首先需要一个开发板,我已经在嘉立创上进行了开源,基于安信可hi-12f模块的开发板,集成了两个按键,一个三色灯,一个滑动变阻器,可外接一个0.96寸液晶。这篇文章先讲一下流程,如果你已经有了能下载的代码,就可以进行下载了。如果你还没有代码,是跟着我文章进行学习的,这篇可以先了解一下,等下一篇我们点灯了再进行下载操作。下载串口需要链接IO3,IO4.原创 2024-06-17 11:04:15 · 619 阅读 · 0 评论 -
Hi3861 OpenHarmony嵌入式应用入门--鸿蒙开发环境搭建
本篇将进行hi3861开发环境的搭建,并能够编译默认工程。原创 2024-04-02 16:08:12 · 2957 阅读 · 14 评论