avatar

松果工作室

欢迎光临

  • 首页
  • freeRTOS
  • ESP
  • 开发手册
  • 快速笔记
  • 个人收藏
  • 工具
Home
松果工作室

ESP32(八) 简单的webserver

#include <esp_wifi.h> #include <nvs.h> #include <sys/param.h> #include "

2025-03-18

ESP32(七) NVS

基本概念 命名空间(Namespace):NVS 数据按命名空间分组,避免键名冲突。 键值对(Key-Value):支持存储整数、字符串、二进制数据等类型。 存储限制:每个键值对最大 1984KB,单个命名空间总大小取决于分区表配置(默认约 24KB)。 示例代码 #include <stdio.h

2025-03-18

ESP32(四) STA & AP

STA 对官方示例进行了代码精简,方便自己随时取用 # Name, Type, SubType, Offset, Size, Flags # Note: if you have increased the bootloader size, make sure to update the off

2025-03-16

多级菜单

使用方法 以下四个函数分别放进各自按键的回调中,点击一次调用相关函数 void menu_up(); void menu_down(); void menu_confirm();

2025-02-13

ESP32(五) ESP32 OTA

注意事项 修改于native_ota_example,并删除HTTPS证书的验证 固件上传于 gitee, 不会跑路白嫖的服务器 使用双分区, 默认例子使用3分区,太浪费,其实双分区也可以 程序验证固件版本,升级的固件版本与运行的版本相同,不予以升级 自诊断以判断IO为依据 固件初始化结束,按下按键

2025-01-14

其他笔记

EC800K AT连接移远云 配置过程 # 配置产品信息(初次连接需配置) AT+QIOTCFG="productinfo","pxxxxt","cDVTxxxxxxxxWGVB" # 连接开发者中心 AT+QIOTREG=1 # 查询当前连接状态(+QIOTSTATE: 8为正常) AT+QI

2024-12-23 坑和笔记

[STM32] 2.PWM DMA

CubeMX 配置 Channel2 -- PWM Generation CH2 DMA Setting -- TIM CH2 通用配置(内存到外设) 参数配置 -- Prescaler(决定占空比调节的精细度),Counter period(和前者一起,决定了周期) PWM DMA #includ

2024-12-22

[STM32] 1. 串口

CubeMX配置 串口全局中断 DMA 普通配置(Normal Mode/TX RX DMA Request/全字节) 单字接收与buff 接收 注意事项: 单字接收每接收一个字节触发一次回调。 buff接收是等到空闲才触发回调。 理论上中断也能做buff接收。 freeRTOS的优先级只能管理 5

2024-12-21

ESP32(六) ESP-IDF Simple POST/GET

最简单的POST GET用法 实现效果: 利用POST链接Wi-Fi:curl -X POST -H "Content-Type: application/json" -d '{"ssid":"ChinaNet-2xueyQ","password":"88888888"}' http://192.1

2024-12-08

CURL 的 POST/GET/PUT 方法

GET 请求 一个简单的 Get 请求 curl -X GET http://192.168.2.35/hello 添加请求头的 Get 请求 curl -X GET -H "Host: example.com" http://192.168.2.35/hello 添加查询的 Get 请求 curl

2024-12-08 ESP-BLE

Lora

芯片手册 SX1278-data-cn.pdf 代码 SX1278.c #include "SX1278.h" #include <string.h> [SX1278-data-cn.pdf](/upload/SX1278-data-cn.pdf) uint8_t SX1278_SPIRead(S

2024-10-18

BLE MESH (二)

来自沁恒低功耗蓝牙MESH软件开发参考手册.pdf WCH BLE MESH 常识 所有节点均带有中继功能 所有例程均带有app_mesh_config.h,可以修改所有 mesh 协议栈内使用的参数 MESH 节点层级结构: 设备 -> 元素 -> 模型 设备:mac 地址 + 广播UUID 元素

2024-10-04

(四) 两种乙类放大电路

第一种乙类放大电路 略有失真,利用二极管把电压抬高0.7V以消除交流源从0~0.7V的失真,但二极管的电压不一定完全等于Vbe 第二种乙类放大电路 利用了第三章的:基级上拉加上耦合电容,可以不考虑交越失真,具体不知道什么原理。 经测试,小信号没有交越失真,大信号会有。 共同点 不放大电压信号,只提供

2024-09-16

(三) 三极管放大电路元件数值配置

电压放大器 条件 VCC = 12V 三极管放大倍数 :100 电压源:50mV/AC 配置过程 假设集电极电流:这里假设为100mA 在集电极电流为100mA时,定Vce = 1/2Vcc,为了输出波形以6V为中心 集电极&发射极两个电阻和:6V/100mA = 60欧姆,分配应集电极远大于发射极

2024-09-16

运算放大器(二)运算放大

基本知识 标题的虚断虚短具有极其强的迷惑性,只需要记住本质 虚断本质:理想运放输入阻抗无穷大 虚短本质:当给运算放大器引入负反馈的时候,Un = Up 电路分析 同向比例运算 I2 = Uin/R2 I1 = (Uout-Uin)/R1 I1 = I2 综上: Uin/R2 = (Uout -Uin

2024-08-24

运算放大器(一)两个基本用法

基本知识 电源可以接双电源,也可以接单电源,一般单电源多一些 正负输入得到它应得的电压,那输出就是正,否则反之。 正负输入相近:Uout = A(Up - Un) + 2.5(A可达到几十万) 比较器 这里只用到了饱和区

2024-08-24

负压发生电路

以MT3608为例 这个负压发生电路依附于boost升压电路 流程 MT3608在反馈的作用下输出了+15V,在+15V的开关占空比下,我们同样只能输出-15v,不能输出-12V或者其他电平 SW为高电平时: 电流依然保持原有的流向,流向为 L2 - C18 - D9 - 地 ,直到C18充满. 当

2024-08-07

Boost 升压电路

示例 MT3608升压电路 核心元件 : 电感 做一个小实验,不停开关图中的轻触开关,电感两端在释放开关的瞬间会产生一个高压,这个高压有时候为正值,有时候是负值 以下是我的实验截图

2024-08-07

一个未验证的查找陆地角度算法

#include <stdio.h> #include <math.h> #include <float.h> // 定义图像大小 #def

2024-07-30

CH573(四) TMOS

注意事项 每个任务包含16个事件,包括一个消息事件和15个自定义事件 事件以位的方式作ID bit0 bit1 bit2 ... bit15 0/1 0/1 0/1 ... 0/1 禁止中断中调用事件 如果使用了ble,建议不要在单个任务中执行超过连接间隔一半时长的任务,否则将影响蓝牙通讯 任务执行

2024-07-16

Airtag Tag

使用单一公钥进行广播 此程序使用了单一公钥广播,但可以使用多个公钥进行广播 每次广播使用不同的公钥,可以减少被跟踪的风险。若某个公钥被追踪或认为不安全,可以轻松切换到另一个公钥,从而增强设备的安全性和隐私性。 以下只是C代码原理实现,具体根据不同蓝牙芯片进行程序编写 源工程链接 #include <

2024-07-16

LVGL UI 代码格式

UI初始化 void ui_init(void){ lv_disp_t * dispp = lv_disp_get_default(); lv_theme_t * theme = lv_theme_default_init(dispp, lv_palette_main(LV_PALETTE_

2024-07-03

结构体指针传参

具名结构体创建结构体 struct uart_config_me { uart_port_t uart_num; QueueHandle_t xQueue; }uart_config_me; void create_uart_event_task(struct uart_conf

2024-06-27

samba

设置root用户 smbpasswd -a root 修改配置文件 nano /etc/samba/smb.conf [myshare] comment = Public Stuff #path = /home/myshare path = /root/file/pans

2024-06-26

Docker添加 HTTP 代理

创建或编辑 Docker 服务的 systemd 配置文件: 打开 Docker 服务的 systemd 配置文件 sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf 在文件中添加代理配置: [Service] Environ

2024-06-22

简单的A类放大器 - 1969

翻译自链接 简单的 A 类放大器 一种 10 瓦的设计,在主观上比 B 类晶体管放大器能提供更好的效果 作者:J. L. 林赛·胡德,M.I.E.E. 日期:1969 年 4 月,发表于《无线世界》 在过去的几年里,已经发表了许多关于家用音频放大器的优秀设计。然而,由于元件可用性的变化,其中一些设计

2024-06-21 三极管

环形滤波算法

#include <stdio.h> #include <stdlib.h> #define BUFFER_SIZE 10 // 缓冲区大小 #define THRESHOLD 180

2024-06-21 坑和笔记

STM32 ADC采集的三种方式

采样周期 单个采集模式 ADC_Settings: 程序使用 uint16_t ADC_Read(

2024-06-17 坑和笔记

ESP32(三) LEDC

初始化 #define LEDC_OUTPUT_IOA (7) #define LEDC_MODE LEDC_LOW_SPEED_MODE #define LEDC_CHANNEL_A LEDC_CHANNEL_0 void led

2024-06-16 坑和笔记

(一) 三极管面向应用的原理

三极管的等效原理 三极管中住着一个三极管人,他唯一的工作就是让: 输出电流 = β*输入电流 三极管人左边二极管的压降其实并不是恒定的,而是: I[b]增加 -> V[b]增加 回路: 可以看到图中的两条回路,这很重要 集电极(接正极收集电的那个极) 发射极(把基极电流和集电极电流发射出去的极) 以

2024-06-15 三极管

结构体创建的 3 种方式

标准方式 #include <stdio.h> struct student //结构体类型的说明与定义分开。声明 { int age; /*年龄*/ float score; /*分数*/

2024-06-07

CH573(三) 代码结构

概览 #include "config.h" #include "HAL.h" #include "gattprofile.h" #include

2024-06-02

CH573(二) 蓝牙

低功耗蓝牙手册链接 这个手册以最基本的外围设备Peripheral讲述了程序执行的流程. 核心是 TMOS , 这个 OS 本质是一个事件驱动的其实也不算是 OS. 但是简单又牛逼, 只要一步一步看手册, 跟着手册看函数, 就能读懂整个例子. 例子文件 ├── BLE_UART ├── BLE_US

2024-05-29

CH573(一) 基础外设

教程来自链接 不得不吐槽一下, 沁恒的库真的很浅, 和 STM 的 HAL 库比,通过两个跳转就能看见它的寄存器操作,麻了. 好吧好处就是能让我知道原理, 坏处就是调用草率,不容易懂. (一) 点灯 #include "CH57x_common.h" int main(){

2024-05-29

ESP32(二) ADC

理论 ESP32c3 的 ADC 分为两个单元, 我们这里使用了单元 1 . 步骤 设置 ADC 位宽 设置 ADC 通道衰减 为使用的 ADC 单元设置 ADC 矫正 取得 ADC 数值 ADC 转化电压 代码 至于esp_adc_cal_characterize()的 3300 这个数值其实没有

2024-05-25

ESP32(一) GPIO

点灯方法(一) #include <stdio.h> #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include</

2024-05-24 坑和笔记

F1C200S (二) Uboot

交叉编译工具链 F1C200s内核ARM9 使用 ARMv5 架构,因此支持 ARMv5 的工具链都能编译,一般使用arm-linux-gnueabi- 开发环境使用 Ubuntu16.04 解压编译器到/usr/local/arm-linux-gcc/ 添加环境变量nano /etc/profil

2024-05-13 坑和笔记

F1C200s (一) 硬件原理图

来源:[https://widora.cn/tiny200] 原理图 外设

2024-05-12

峰值查询算法

这是来源[https://zhuanlan.zhihu.com/p/549588865] 他用了 python, 于是我就用 ChatGPT 转换成了 C 语言, 试验了下, 还算好用 这么牛逼的代码, 我这辈子写不出来了 不求甚解, 会用就行 #include <stdio.h> #include

2024-05-10 坑和笔记

freeRTOS 高精度定时任务

vTaskDelayUntil()能精确地在每 50ms 调用这个函数 void TASKF(void *ptr) { TickType_t xLastWakeTime; xLastWakeTime = xTaskGetTickCount(); while (1) { vTask

2024-05-09 重学 freeRTOS

Ubuntu Server 上网

Netplan 是 Ubuntu 18.04 及以后版本的默认网络配置工具,用于配置网络接口的基本设置,如静态 IP 地址、DHCP、DNS 等。 在Ubuntu22.04安装时,配置网络信息会通过Subiquity 网络配置工具,写入/etc/netplan/00-installer-config

2024-05-08 坑和笔记

用串口中断解析Modbus数据

状态机解析 Modbus 协议数据帧 原理: 中断接收到设备地址 0x01, 进入阶段 2 中断接收到寄存器地址, 进入阶段 3 中断接收到数据域长度, 进入阶段 4 往buf 存接收到的数据域字符,直到接收到应有的数据域长度加上 CRC 如果计算的 CRC 和接收到的 CRC 一致就发送信号通知任

2024-05-08 坑和笔记

CRC校验

具体原理: https://blog.csdn.net/resilient/article/details/117368600 Modbus int16 CRC uint16_t crc16(uint8_t *addr,uint8_t num) { int i,j,te

2024-05-07 坑和笔记

电子管

电子管内部结构 阴极: 发射电子的源泉, 利用电子的热发射发射电子 灯丝: 用来加热阴极. 直热式的灯丝就是阴极, 旁热式的灯丝只负责加热阴极 阳极: 接收阴极发射的电子,外接电源正极 栅极: 控制到达阳极的电子数量; 抑制栅极加负电压,屏栅极加正电压 芯柱: 把各个电极引出管外 云母片: 固定电机

2024-05-05 电子技术

(二) 三极管基本放大电路

https://zhuanlan.zhihu.com/p/549377896 三极管 简单的技巧: 箭头朝内 PNP 箭头一方发射极 E(发射极)B(基极)C(集电极) 共 X 极放大电路,值得是 X 端接地 共射极放大电路

2024-05-04 三极管

少年晶体管收音机(三)有一级低频放大的晶体管收音机

实物图 放大部分原理 R2 为可变电阻,为三极管基极提供偏置电流,由于三极管基极只有在特定电流下才在放大区间.因此要把可变电阻调整到合适的值. 当然,基极电位始终是固定的 0.7V.R2 分到的电压始终是 E-0.7V. 前端部分原理 信号经过调谐回路流向地,特定频率经过线圈耦合进第二个电感. 信号

2024-05-03 电子技术

Makefile 文件的编写

例子 #交叉编译工具链绝对路径,去掉首个 / 为相对路径 CC = /root/OpenWrt-Toolchain-ramips-for-mipsel_24kec+dsp-gcc-4.8-linaro_uClibc-0.9.33.2/toolchain-mipsel_24kec+dsp_gcc-4.

2024-04-30 坑和笔记

少年晶体管收音机(二)能选电台的收音机

本章实物图 本章原理图 重点 LC 调谐回路:f = 1/(2*pi*Squa(L*C))。在并联谐振电路下,[高频/低频]会通过[电容/电感]直接到达地,并联谐振两端电压小,无法给 L2 以感应电压驱动耳机发出声音,只有谐振频率下,两端阻抗最大,电压最大,感应出电压驱动耳机发声 电容阻抗Z = 1

2024-04-21 电子技术

少年晶体管收音机(一)最简单的收音机

少年晶体管收音机.pdf 前言 本书出版于 1978 年 9 月。少年晶体管收音机,第一句话:少年们喜欢自己动手装置收音机。 最简单的收音机 相信看到这图头脑里就很明确了。 天线接收电磁波,高频信号正半轴无法经过二极管,因为这里是反接的,于是绕过二极管从耳机流过,驱动耳机发出声音,负半轴则直接经过二

2024-04-21 电子技术

电子技术讲座

电子技术讲座(四)晶体管开关电路 电子技术讲座(三)晶体管收音机 电子技术讲座(二) 晶体管放大与振荡电路 电子技术讲座(一) 晶体管整流电路

2024-04-21 电子技术
  • 1
  • 2

Recently Updated

  • ESP32(八) 简单的webserver
  • ESP32(七) NVS
  • ESP32(四) STA & AP
  • 多级菜单
  • ESP32(五) ESP32 OTA

Trending Tags

WCH Linux Elec freeRTOS STM ESP Flutter Others SwiftUI

©2025 松果工作室. Some rights reserved.

Using the Halo theme Chirpy