- 博客(81)
- 收藏
- 关注
原创 C++学习 - 03(单例模式)
BuiltinLed& BuiltinLed::GetInstance() 是一个典型的单例模式(Singleton Pattern)的实现方法。单例模式确保一个类只有一个实例,并提供一个全局访问点。在 C++ 中,单例模式通常通过静态成员函数 GetInstance 来实现,该函数返回类的唯一实例。1. 单例模式的目的确保唯一性:确保一个类只有一个实例。提供全局访问点:提供一个全局访问点,使得任何地方都可以访问这个唯一的实例。2. BuiltinLed 类的定义。
2024-11-19 23:30:40
536
原创 C++学习 - 02(数据类型转换)
在 C++ 中,数据类型转换是将一种类型的数据转换为另一种类型的数据。C++ 提供了多种类型转换的方式,包括隐式类型转换、C 风格的类型转换、以及 C++ 风格的类型转换操作符(如 static_cast、dynamic_cast、reinterpret_cast 和 const_cast)。每种方式都有其适用的场景和特点。
2024-11-18 00:56:39
941
原创 C++学习 - 01(lambda 表达式)
C++ 中的 lambda 表达式是一种内联定义的小型匿名函数,可以用于各种需要函数对象的场合。lambda 表达式提供了一种简洁的方式来定义和使用函数对象,特别适用于需要临时定义函数的情况,如回调函数、排序算法中的比较函数等。
2024-11-17 22:20:51
394
原创 ESP32 (经典蓝牙 SPP)-蓝牙学习(9)
提示:本博客作为学习笔记,有错误的地方希望指正 绪论:这里主要讲解一些关于ESP32的经典蓝牙,蓝牙是一个比较庞大的体系,需要又一些基础知识才可以更好的学习,这里有一些写的比较好的关于蓝牙的文章。吐血推荐历史最全的蓝牙协议栈介绍Bluetooth GAP介绍蓝牙设备配对的四种方式ESP32 蓝牙开发:开发指南ESP32学习笔记十七之蓝牙通信-Bluetooth文章目录一、ESP32蓝牙介绍二、硬件三、实现代码四、串口实验演示结果五、ESP32 蓝牙API5.1、esp_spp_api.h文
2022-05-22 10:07:32
8858
5
原创 ESP32 (Sleep Modes)-睡眠模式学习(8)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、ESP32 Sleep Modes概述1、Sleep模式1.1.1、 Light-sleep 模式1.1.2、 Deep-sleep 模式1.2、睡眠模式下的 Wi-Fi 和 Bluetooth 功能1.3、唤醒源1.3.1、定时器唤醒1.3.2、触摸传感器唤醒1.3.3、外部唤醒 (ext0)唤醒1.3.4、外部唤醒 (ext1)1.3.5、ULP 协处理器唤醒1.3.6、GPIO 唤醒(仅适用于 Light-sleep 模式)1.3.7、UAR
2022-05-21 23:38:40
7956
7
原创 从零开始编写一个上位机(串口助手)QT Creator + C++
提示:本博客作为学习笔记,有错误的地方希望指正,此文可能会比较长,作为学习笔记的积累,希望对来着有帮助。 绪论:笔者这里使用的是QTCreator和C++来实现一个简单的串口上位机的开发的简单过程,使用到C++,主要是为了后面使用Python开发上位机打下基础。这里主要分为初识C++的一些基本知识,其次是QT Creator的使用。特别声明感谢【北京迅为】嵌入式学习之QT学习篇的学习视频,这里的学习笔记就是根据视频中的内容实战记录下来的。文章目录一、C++知识1、初识C++2、C++输入输出控制2.1
2022-05-21 17:39:35
37652
10
原创 ESP32 (Timer)-定时器学习(7)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、ESP32定时器介绍1.1、概述1.2、使用esp_timer api1.3、回调函数1.4、esp_timer在浅睡眠期间1.5、处理回调1.6、获取当前时间二、硬件设计三、实现代码四、定时器实验演示结果五、ESP32 Timer函数API5.1、esp_timer.h文件中的内容的API一、ESP32定时器介绍1.1、概述 尽管FreeRTOS提供了软件计时器,但这些计时器有一些限制:最大分辨率等于RTOS周期定时器回调从低优先级
2022-04-24 08:36:21
5101
原创 ESP32 (LEDC)-LEDC学习(6)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、ESP32LEDC介绍1.1、概述1.2、功能概览1.2.1、LEDC定时器配置1.2.2、LEDC通道配置1.3、LEDC改变 PWM 信号1.3.1、使用软件改变 PWM 占空比1.3.2、使用硬件改变 PWM 占空比1.4、改变 PWM 频率1.5、控制 PWM 的更多方式1.6、使用中断1.7、LED PWM 控制器高速和低速模式1.8、频率和占空比分辨率支持范围二、硬件设计三、实现代码3.1、实现LEDC基本控制-13.2、实现LEDC硬
2022-04-23 18:00:54
2473
4
原创 ESP32 (GPIO)-GPIO学习(5)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、ESP32GPIO介绍二、硬件设计三、实现代码四、演示结果五、ESP32串口函数API5.1、gpio_types.h文件中的内容的API5.2、在uart.h文件中的内容的API一、ESP32GPIO介绍 ESP32 芯片有 34 个物理 GPIO pad。每个 pad 都可用作一个通用 IO,或连接一个内部的外设信号。IO_MUX、RTCIO_MUX 和 GPIO 交换矩阵用于将信号从外设传输至 GPIO pad。这些模块共同组成了芯片的
2022-04-22 20:26:53
6845
2
原创 ESP32 (UART 接收发送)-串口之接收发送通讯(4)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、ESP32串口介绍二、硬件设计三、实现代码四、串口实验演示结果五、ESP32串口函数API5.1、uart_types.h文件中的内容的API5.2、在uart.h文件中的内容的API一、ESP32串口介绍 UART 是一种以字符为导向的通用数据链,可以实现设备间的通信。异步传输的意思是不需要在发送数据上添加时钟信息。这也要求发送端和接收端的速率、停止位、奇偶校验位等都要相同,通信才能成功。 一个典型的 UART 帧开始于一个起始位,紧接
2022-04-19 12:54:02
12376
3
原创 ESP32 (UART 485通讯)-串口之485通讯(3)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、ESP32串口介绍二、硬件设计三、实现代码四、串口实验演示结果五、ESP32串口函数API5.1、uart_types.h文件中的内容的API5.2、在uart.h文件中的内容的API一、ESP32串口介绍 UART 是一种以字符为导向的通用数据链,可以实现设备间的通信。异步传输的意思是不需要在发送数据上添加时钟信息。这也要求发送端和接收端的速率、停止位、奇偶校验位等都要相同,通信才能成功。 一个典型的 UART 帧开始于一个起始位,紧接
2022-04-19 12:20:13
22190
3
原创 ESP32 (UART ECOH)-串口串口回声虫学习(2)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、ESP32串口介绍二、硬件设计三、实现代码;四、串口实验演示结果五、ESP32串口函数API5.1、uart_types.h文件中的内容的API5.2、在uart.h文件中的内容的API一、ESP32串口介绍 UART 是一种以字符为导向的通用数据链,可以实现设备间的通信。异步传输的意思是不需要在发送数据上添加时钟信息。这也要求发送端和接收端的速率、停止位、奇偶校验位等都要相同,通信才能成功。 一个典型的 UART 帧开始于一个起始位,紧
2022-04-19 11:12:15
2851
原创 ESP32 (UART EVENT)-串口事件学习(1)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、textarea 简介1.1概述 Overview1.2部分和风格 Parts and Styles1.3使用 Usage1.3.1 添加文字 Add text1.3.2 占位符 Placeholder1.3.3 删除字符 Delete character1.3.4 移动光标 Move the cursor### 1.3.5 隐藏光标 Hide the cursor1.3.6 一行模式 One line mode1.3.7 密码模式 Passwor
2022-04-18 21:51:18
7598
原创 ESP32 LVGL8.1 ——msgbox 消息框 (msgbox 28)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、textarea 简介1.1概述 Overview1.2部分和风格 Parts and Styles1.3使用 Usage1.4事件 Events1.5按键 Keys二、msgbox API三、示例3.1示例实现数字按键输入一、textarea 简介1.1概述 Overview 消息框充当弹出窗口。它们是由背景Container,Label和Button的Button矩阵构建的。 文本将自动分成多行(具有LV_LABEL_LONG_MOD
2022-03-22 16:14:05
5360
2
原创 ESP32驱动编码器--SIQ-02FVS3 (Vscode + IDF)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、编码器简介二、硬件设计三、实现代码四、显示结果一、编码器简介 编码器一般分为霍尔式的和光栅式的编码器,我这里使用的式SIQ-02FVS3这种迷你编码器,和EC11的驱动方法差不多,但是这种编码器体积比较小,但是价格比价贵。下面是编码器的实物图。SIQ-02FVS3还带有按压按键,实现多功能。 那么我们该怎样去使用这个编码器呢,从给出的数据手册上面我们看到一个波形,我们就是通过这个波形去判断编码器是否转动以及编码器转动的方向,可以从图中可
2022-03-21 16:50:08
8810
15
原创 ESP32 LVGL8.1 M5Stack + LVGL + IDF 详细的移植教程 (27)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、btn 简介1.1概述 Overview1.2部分和风格 Parts and Styles1.3使用 Usage1.4事件 Events1.5按键 Keys二、Label API2.1 Btn API2.2 LVGL的状态标志位的处理API和Flags2.3 LVGL的事件回调函数2.4 LVGL事件API以及事件分类三、示例3.1示例实现按键回调显示3.2示例实现动画显示3.3示例实现按键果冻显示一、btn 简介1.1概述 Overvie
2022-03-05 12:17:15
4177
4
原创 ESP32 LVGL8.1 ——textarea 文本区域 (textarea 26)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、textarea 简介1.1概述 Overview1.2部分和风格 Parts and Styles1.3使用 Usage1.3.1 添加文字 Add text1.3.2 占位符 Placeholder1.3.3 删除字符 Delete character1.3.4 移动光标 Move the cursor1.3.5 隐藏光标 Hide the cursor1.3.6 一行模式 One line mode1.3.7 密码模式 Password mo
2022-01-27 15:23:37
6482
原创 ESP32 LVGL8.1 ——Calendar 日历 (Calendar 25)
提示:本博客作为学习笔记,有错误的地方希望指正文章目录一、Calendar 简介1.1概述 Overview1.2部分和风格 Parts and Styles1.3使用 Usage1.3.1当前日期 Current date1.3.2高亮显示天数 Highlighted days1.3.3天的名称 Name of the days1.4事件 Events1.5按键 Keys1.6页眉 Headers1.6.1 箭头按键 Arrow buttons1.6.2 下拉 Drop-down二、Calendar
2022-01-01 09:58:11
2698
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人