开源一个Homekit插座
实物图展示: 一直想制作一个适用于homekit的智能开关用来控制强电设备,原理并不难但是由于各种原因一直鸽了又鸽,苹果开源了homekit的通信协议,又有大佬将其移植到Arduino上,得益于本菜鸟也可以制作适用于苹果家庭的智能设备。已经完成的homekit设备:homekit台灯转接板homekit插座homekit风扇今天来记录一下homekit
实物图展示: 一直想制作一个适用于homekit的智能开关用来控制强电设备,原理并不难但是由于各种原因一直鸽了又鸽,苹果开源了homekit的通信协议,又有大佬将其移植到Arduino上,得益于本菜鸟也可以制作适用于苹果家庭的智能设备。已经完成的homekit设备:homekit台灯转接板homekit插座homekit风扇今天来记录一下homekit
第十四课 二进制信号量#include "freertos/semphr.h" xSemaphoreCreateBinary();SemphoreHandle_t Handle;//二进制信号量Handle = xSemaphoreCreateBinary();//创建xSemaphoreGive(Handle);//释放在任务中:xSemaphoreTake(Handle
第十一课 队列集合多个Task写队列数据,一个Task读取队列数据 Queue Set新建两个消息队列,句柄给两个发送函数,新建一个QSet句柄,使用xQueueAddToSet分别添加两个消息队列到Qset,在接收函数中,算了···这个是用的时候看教程吧第十二课 队列邮箱Queue Mainbox与队列集合相反,一个写,多个读邮箱是保持数据,发送方会覆盖数据,接收方不能移除数据,所有函数使用一个
第八课 Task看门狗中断看门狗:在任务中代码运行时间过长,会触发中断看门狗,中断看门狗使用的是定时器一,需要配置interrupt watchdog 与进行初始化任务看门狗:针对任务,也可以重启整个系统。默认监控idle_task 5s 如果将任务优先级确定到0,则不会触发看门狗,因为与idle任务具有相同的优先级,idle可以持续运行不会造成看门狗触发添加自定义看门狗 添加头文件"esp_ta
以下笔记基于esp32-idf第四课 任务的优先级优先级数值为0~MAX-1 MAX=25如果设定超过最大值,则默认为最大值,设定最大值时最大不能超过32,优先级越大优先级越高,但是并不是越大越好,在某些情况下可能会阻塞其他任务运行,导致其他任务运行不了使用uxTaskPriorityGet获得优先级,传入参数为任务句柄。相同优先级的任务共享相同时间片,谁先创建谁运行不同优先级运行优先级别高的任
本freertos笔记基于esp32-idf开发第一课 系统启动流程第一阶段 bootloader第二阶段 bootloader第三阶段 应用程序入口在components文件夹下有bootloader两个阶段的源代码、也有freertos的源代码 启动流程://esp_system ENTRY(call_start_cpu0) SYS_START_FN g_startup_fn start_cp
在单片机上模拟重力小球硬件主控:esp32屏幕:ILI9341重力传感器:MPU6050软件屏幕驱动:#include <TFT_eSPI.h>MPU6050驱动:#include <MPU6050_tockn.h>要求可以实现屏幕上的小球跟随实际重力运行,并且具有释放回收区域,可以通过按键实现小球的增加与减少;程序设计使用链表新建小球: typedef struct Ba
最近有一个开放的QQ机器人,便想着尝试将实现一下QQ发送图片到另一个QQ,通过服务器进行转发,最终通过ESP32进行获取图片URL进行显示1、QQ机器人 机器人使用go-cqhttp实现,可以在多种平台上运行(linux、mac、ARM、windows),大佬已经做了很多工作,甚至在arm-windows上也可以使用,这意味着近期很流行的骁龙平台手机也可以运行,在官网下载
FFT 快速傅里叶变换就是通过计算机运行离散傅里叶变换,将时域信号通过频域展示出来,什么是时域,对连续的信号进行采集,以时间为基础的幅值变化,我们可以使用FFT将时域信号转换为频域信号,在音频处理中最常使用:每段时间内的信号都可以看做成是不同频率不同赋值的正弦信号叠加而来,我们是用的音频灯就是一个很典型的例子,可以实时显示音频的频率与幅值信息。