- 博客(161)
- 资源 (54)
- 收藏
- 关注
原创 非接触式红外测温MLX90614
MX90614是一款由迈来芯公司提供的低成本,无接触温度计。输出数据和物体温度呈线性比例,具有高精度和高分辨率。TO-39金属封装里同时集成了红外感应热电堆探测器芯片MLX81101(温度是通过PTC或是PTAT元件测量)和信号处理专用集成芯片MLX90302,专门用于处理红外传感器输出信号。用以阻碍可见光和近红外光辐射的光学滤波器(可传播长波)集成在封装内提供对环境和日光的免疫。滤波器的波长通带为5.5到14μm。
2024-01-05 20:30:33 1321
原创 定时器PWM控制RGB彩灯案例
必须设置TIMx_CCMRx寄存器OCxPE位以使能相应的预装载寄存器,最后还要设置TIMx_CR1 寄存器的ARPE位, (在向上计数或中心对称模式中)使能自动重装载的预装载寄存器。根据硬件接口,接下来需要完成对定时器3的CH1和CH2配置,定时器4的CH3的配置。将通道配置为PWM输出模式。在定时器2中断服务函数中,没进一次中断,即改变一次RGB颜色值,RGB颜色变化效果为:红—绿—蓝三种颜色逐渐转换。为了实现呼吸灯效果,这里通过定时器2实现,设置周期时间为50ms,CNT+1时间为0.1ms。
2024-01-03 20:09:40 1536
原创 腾讯物联网平台之规则引擎
腾讯云物联网开发平台(IoT Explorer)为客户提供便捷的物联网开发工具与服务,助力客户更高效的完成设备接入,并为客户提供物联网应用开发及场景服务能力,帮助客户高效、低成本构建物联网应用。该平台支持设备连接、设备管理、数据分析和应用开发等功能的实现,并具有丰富的API和SDK,方便开发者快速开发应用。同时,该平台还提供安全可靠的连接和数据传输服务,保障设备与应用之间的通信安全。腾讯云物联网开发平台还提供了丰富的行业解决方案和最佳实践案例,帮助客户快速实现物联网应用。
2023-12-11 19:03:00 1434
原创 c++之函数对象与内建函数
STL中提供了一些内建函数对象:算术仿函数、关系仿函数、逻辑仿函数 --头文件;大于等于:templatebool greater_equal。函数对象使用重载()时,其行为类似函数调用,也叫仿函数;不等于: templatebool not_equal_to。逻辑非: templatebool logical_not。小于等于:templatebool less_equal。函数对象(仿函数)本质是一个类,不是一个函数。等于: templatebool equal_to。函数对象可以作为函数形参。
2023-11-09 16:43:07 231
原创 C++之List容器
list是序列容器,允许在序列中的任何位置执行固定O(1)时间复杂度的插入和删除操作,并在两个方向进行迭代。list容器是一个双向循环链表。list容器与vector容器区别:①list中空间是随机的,通过指针域保存下一个成员地址;vector容器空间是连续的;② list容器数据插入和删除方便,能合理的利用空间;vector容器则是没法实时分配资源;
2023-11-09 16:12:31 104
原创 c++值deque容器
deque 是 double-ended queue 的缩写,又称双端队列容器。deque容器支持从头部和尾部双端插入、删除数据。与vector容器不同的是,vector容器是一段连续的空间,而deque没有所谓容量的概念,因为它是动态的以分段连续空间组合而成,随时可以增加一段新的空间并连接起来。不会像vector那样,因为空间不足而扩容,复制元素到新的空间,再释放旧的空间。因此deque没有必要提供所谓的扩容(reserve)的功能。deque容器可以看做是一个双端数组,可以从头或者尾之间插入数据。
2023-11-03 16:00:31 147
原创 C++之栈容器
stack ,栈(堆栈),是一种先进后出(First In Last Out,FILO)的数据结构,先插入的数据在栈底,后放入的数据在栈顶,所有的数据只能从栈顶取出。在生活中先进后出的例子友很多,例如我们在桌子上摞书,先放的在最下面,后放的在最上面。在取书的时候也是先取最后放的,最才能取到第一个放的。栈容器中,只有栈顶数据才可以被外界访问,因此stack不存在遍历。
2023-11-03 14:41:38 202
原创 C++之队列queue
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。队列只需要从对尾插入数据(入队,push_back),对头取数据(出队,pop_front);先进先出的原则、First In Fist Out,FIFO(跟栈是反的,栈是后进先出)队列只能访问对头和队尾数据,其他数据需要出队才能访问,所以不存在遍历队列;队头(front):只能从队头移除元素,一般焦作deQueue,出队。
2023-11-02 21:26:48 180
原创 C语言队列实现
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。相反,一个非环形队列(例如一个普通的队列)在用掉一个数据元素后,其余数据元素需要向前搬移。队列可以采用数组或者链表方式实现,数组方式实现存在局限性,数据类型单一,空间大小一开始就需要固定,链表方式实现则比较灵活。先进先出的原则、First In Fist Out,FIFO(跟栈是反的,栈是后进先出)例如火车站排队买票,银行排队办理业务。
2023-11-02 16:04:42 252
原创 c++之vector容器
向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。
2023-11-01 16:13:17 226
原创 智慧灌溉平台
本次硬件主控MCU选择的是ST公司的基于Cortex-M3架构的STM32F103C8T6,供电部分是12V转5V,采用MP2359实现,5V转3.3V则采用AMS1117-3.3实现。本次水泵选择的是3W USB接口抽水电机,通过继电器控制水泵启动和关闭,配合上位机软件和水位传感器实时监测水位值实现电机自动启动和停止工作。水位传感器实时检测当前水位状态,通过APP启动水泵抽水,当前水位值超过设定是阈值,则水泵自动停止工作。基于STM32的主控制器,USB接口水泵、稻田模型、水位监测传感器。
2023-11-01 15:39:24 1110
原创 Windows下Qt环境搭建
Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。
2023-10-31 14:41:43 478 1
原创 STM32CubeMX之DMA辅助串口数据接收
直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。两个DMA控制器有12个通道(DMA1有7个通道,DMA2有5个通道),每个通道专门用来管理来自于一个或多个外设对存储器访问的请求。还有一个仲裁器来协调各个DMA请求的优先权。DMA控制器和Cortex™-M3核心共享系统数据总线,执行直接存储器数据传输。
2023-10-18 10:20:22 681 1
原创 基于STM32的格力空调红外控制
在光谱中波长自760nm至400um的电磁波称为红外线,它是一种不可见光。目前几乎所有的视频和音频设备都可以通过红外遥控的方式进行遥控,比如电视机、空调、影碟机等,都可以见到红外遥控的影子。这种技术应用广泛,相应的应用器件都十分廉价,因此红外遥控是我们日常设备控制的理想方式。
2023-08-02 23:09:23 2004 6
原创 C++字符串string
string是C++编程语言中的字符串。在C++中字符串处理可以使用c语言字符串形式char *,也可以使用string类格式。string 是一个类,类内有char *指针,通过容器方式管理字符串。使用string类型需要需要包含头文件string。
2023-07-21 19:23:21 904
原创 C语言排序算法实现
所谓排序, 就是使一串记录, 按照其中的某个或某些关键字的大小, 递增或递减的排列起来的操作。 排序算法, 就是如何使得记录按照要求排列的方法。排序算法在很多领域得到相当地重视, 尤其是在大量数据的处理方面。 一个优秀的算法可以节省大量的资源。 在各个领域中考虑到数据的各种限制和规范,要得到一个符合实际的优秀算法, 得经过大量的推理和分析。
2023-06-29 14:40:09 1526
原创 基于stm32物联网开发板(3)--SYN6288语音模块
SYN6288-A语音合成模块是一款性价比更高,效果更自然的一款中高端语音合技术 。 SYN6288-A通过异步串口接收待合成的文本,实现文本到声音(TTS)的转换。 国内首款语音合成评估板SYN6288-A的推出继承了OSYNO6188-A模块的优秀特点:最小体积,硬件接口简单,极高的性价比;除此之外,SYN6288-A文本识别更智能,语音合成更自然,语音合成效果和智能识别效果大幅度提高,是一款面向中高端应用领域的语音合技术。
2023-05-15 22:24:48 2880 11
原创 基于stm32物联网开发板(2)--LCD屏幕
屏幕尺寸为1.3寸,分辨率240*240,颜色格式RGB565,驱动IC:ST7789VW;超大可视角度:大于160°(显示屏中可视角度最大的一种屏幕);宽电压供电(3V~5V),兼容3.3V和5V电平逻辑,无需电平转换芯片;采用7线制SPI接口;工作温度范围为工业级(-20℃~60℃);军工级工艺标准,长期稳定工作;
2023-05-14 15:52:19 2172
原创 基于stm32物联网开发板(1)
本开发板采用了STM32F103RET6作为核心CPU,72MHZ工作频率,512KB flash,64KB Sram。本开发平台外设模块有ESP8266 WIFI模块、1.3寸LCD彩屏、SYN6288语音模块、MAX30102心率血氧传感器、AD8232心电图监测模块、BH1750环境光传感器、RGB全彩灯和3个按键。本开发平台支持串口自动下载电路和ST_Link下载接口。
2023-05-09 23:27:32 1746 7
原创 基于N32G45智能家居平台
本次项目采用腾讯物联网平台+微信小程序腾讯连连实现远程控制。本地采集温度数据和湿度数据,设置温湿度报警阈值,超过设定值即可通过蜂鸣器报警。微信小程序可远程控制开发板的硬件设备。OLED屏幕实时显示采集到的数据显示,采用两页显示方式,第一页显示实时时间,第二页显示环境温湿度数据,可通过按键切换。板子上电即可自动完成WIFI连接,在WIFI密码修改的情况下课实现手机一键配网,从而实现腾讯云平台接入。连接成功后屏幕界面默认显示当前实时时间。时间校准可现在网络校时或串口校时。
2023-03-28 20:59:29 627 2
原创 基于阿里云MQTT物联网平台视频监控
本项目基于物联量平台远程的视频监控项目,通过MQTT协议实现两个设备间的数据上报与订阅。通过这个项目来演示,两个MQTT设备如何互相订阅,进行消息流转。在阿里云服务器上创建2个设备,分为为设备A和设备B;设备A负责采集本地摄像头画面上传,设备B负责接收设备A上传的数据然后解析显示出来。在阿里云服务器上需要配置云产品流转,让设备A的数据上传后自动发送给设备B。这样就完成了视频画面数据的流转。不过因为阿里云的最大数据限制,每次最大发送10240字节的数据。
2023-03-14 11:24:50 6351 9
原创 TCP编程之网卡信息获取和域名解析
TCP/IP传输协议,即传输控制/网络协议,也叫作网络通讯协议。它是在网络的使用中的最基本的通信协议。TCP/IP传输协议对互联网中各部分进行通信的标准和方法进行了规定。并且,TCP/IP传输协议是保证网络数据信息及时、完整传输的两个重要的协议。TCP/IP传输协议是严格来说是一个四层的体系结构,应用层、传输层、网络层和数据链路层都包含其中。
2023-02-20 10:46:12 1139
原创 告别猛虎,迎接宏兔
岁月更迭,四季轮回。盘点2022这一年,汗水与苦累相伴,收获与喜悦缠绵。惟其艰难,更显勇毅;惟其艰难,更彰初心。回首一年来的奋斗历程,真可谓千磨万击还坚劲,越是艰险越向前!
2023-01-13 20:36:24 194
原创 Linux下时间处理相关函数
Linux 系统下包含两个时间:系统时间和RTC 时间。是由主芯片的定时器进行维护的时间, 一般情况下都会选择芯片上最高精度的定时器作为系统时间的定时基准, 以避免在系统运行较长时间后出现大的时间偏移。特点是掉电后不保存。是指系统中包含的 RTC 芯片内部所维护的时间。RTC 芯片都有电池+系统电源的双重供电机制, 在系统正常工作时由系统供电, 在系统掉电后由电池进行供电。因此系统电源掉电后 RTC 时间仍然能够正常运行。
2023-01-10 20:48:35 947
原创 Linux下命令(2)
Linux 是一套免费使用和自 由传播的类 Unix 操作系统, 是一个基于 POSIX 和 UNIX 的多用户、 多任务、 支持多线程和多 CPU 的操作系统。 它能运行主要的 UNIX 工具软件、 应用程序和网络协议。 它支持 32 位和 64 位硬件。 Linux 继承了 Unix 以网络为核心的设计思想, 是一个性能稳定的多用户网络操作系统。
2023-01-06 10:50:28 572 1
原创 linux 下命令
Linux 是一套免费使用和自 由传播的类 Unix 操作系统, 是一个基于 POSIX 和 UNIX 的多用户、 多任务、 支持多线程和多 CPU 的操作系统。 它能运行主要的 UNIX 工具软件、 应用程序和网络协议。 它支持 32 位和 64 位硬件。 Linux 继承了 Unix 以网络为核心的设计思想, 是一个性能稳定的多用户网络操作系统。
2022-12-31 13:40:47 870 1
原创 基于N32G45的RTC电子钟
RTC,英文全称:Real-time clock,中文名称:实时时钟,是指可以像时钟一様输出实际时间的电子设备,一般会是集成电路,因此也称为时钟芯片。实时时钟芯片是日常生活中应用最为广泛的消费类电子产品之一。它为人们提供精确的实时时间,或者为电子系统提供精确的时间基准,目前实时时钟芯片大多采用精度较高的晶体振荡器作为时钟源。
2022-12-07 22:51:50 819 2
原创 基于N32G45的OLED驱动
OLED显示技术与传统的LCD显示方式不同,无需背光灯,采用非常薄的有机材料涂层和玻璃基板(或柔性有机基板),当有电流通过时,这些有机材料就会发光。而且OLED显示屏幕可以做得更轻更薄,可视角度更大,并且能够显著的节省耗电量。 OLED也被称之为第三代显示技术。OLED不仅更轻薄、能耗低、亮度高、发光率好、可以显示纯黑色,并且还可以做到弯曲,如当今的曲屏电视和手机等。
2022-12-06 13:00:32 787
原创 N32G45之串口+DMA数据收发
接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。 DMA 控制器总共可以访问 8 个 AHB 从机: Flash、 SRAM、 ADC、 SDIO、 QSPI、 ETH、 ABP1 和 APB2。 DMA 控制器由 CPU 控制以执行从源到目的的快速数据移动。配置完成后,无需 CPU 干预即可传输数据。
2022-12-04 15:13:11 2025
原创 基于N32G45的按键驱动
N32G45系列集成了最新一代嵌入式ARM Cortex™-M4F处理器,在Cortex™-M3内核的基础上强化了运算能力、新增加了浮点运算处理单元(FPU)、DSP和并行计算指令,提供1.25DMIPS/MHz的优异性能。同时其高效的信号处理能力与Cortex-M系列处理器的低功耗,低成本和易于使用的优点组合,用以满足需要控制和信号处理混合能力且易于使用的应用场景。ARM Cortex™-M4F 32位精简指令集处理器具有优异的代码效率,通常采用8位和16位器件的存储器空间即可发挥ARM内核的高性能。
2022-12-04 10:34:18 782
原创 观世界赛事,品足球人生--2022世界杯
2022年卡塔尔世界杯(英语:FIFA World Cup Qatar 2022)是第二十二届世界杯足球赛,是历史上首次在卡塔尔和中东国家境内举行、也是第二次在亚洲举行的世界杯足球赛。除此之外,卡塔尔世界杯还是首次在北半球冬季举行、首次由从未进过世界杯决赛圈的国家举办的世界杯足球赛。
2022-11-27 15:40:47 1770 5
原创 tslib库编译与移植
tslib 是电阻式触摸屏用于校准的一个软件库,是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口。
2022-11-19 15:55:41 904
原创 物联网协议MQTT
MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个消息中间件。MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。由IBM在1999年发布。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,作为一种低开销、低带宽占用的即时通讯协议。
2022-11-17 19:03:01 1715
原创 工业通讯总线RS485和RS232
S-232 标准接口(又称 EIA RS-232) 是常用的串行通信接口标准之一, 它是由美国电子工业协会(Electronic Industry Association, EIA)联合贝尔系统公司、 调制解调器厂家及计算机终端生产厂家于 1 970 年共同制定, 其全名是“数据终端设备( DTE)和数据通信设备(DCE)之间串行二进制数据交换接口技术标准”。
2022-11-11 20:48:18 3034
原创 Linux下基于GTK人脸识别界面设计
人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行脸部识别的一系列相关技术,通常也叫做人像识别、面部识别。
2022-11-01 20:17:13 1227 2
原创 GTK渲染摄像头图像数据
绘图工具集(GDK,Graphics Drawing Kit)是在GTK+ 和特定操作系统的应用编程接口(API,Application Program Interface)之间的低级绘图制层—— Linux的API是Xlib。由于GTK和机器的API之间没有直接接口,移植GTK+就成为移植GLIB和GDK的问题。GDK提供像元的绘制能力以及低层的窗口建立和处理能力。对许多应用来说,使用构件时最方便的,但是,如果你想用GTK+编写模拟时钟的应用程序,由于它没有绘制时钟表面的能力,实现这样的任务就有困难了。
2022-10-28 14:54:07 972 2
原创 GTK构件之微调按钮
微调按钮(Spin Button)构件通常用于让用户从一个取值范围你选择一个值。它由一个文本输入框和旁边的向上和向下两个按钮组成。点击某一个按钮会让文本输入框里的数值大小在一定范围你改变。文本输入框里也可以直接输入一个特定值。 微调按钮构件允许其中的数值没有小数位或具有指定的小数位,并且数值可以按一种可配置的方式增加或减小。在按钮较长时间呈按下状态时,构件的数值会根据工具按下时间的长短加速变化。
2022-10-25 19:51:40 546
基于STM32智慧灌溉平台
2023-11-01
基于N32G45智能家居平台
2023-03-28
基于阿里云MQTT物联网平台视频监控
2023-03-14
Ubuntu下gtk图像渲染示例
2022-11-27
基于STM32手势检测设计
2022-06-17
基于STM32直流电压电流测量
2022-06-01
基于STM32简易计算器
2022-05-27
基于STM32电子钟语音报时
2022-05-25
基于STM32音频播放器
2022-04-12
STM32之数码相册示例
2022-03-24
STM32CubeMx之SD卡驱动
2022-03-23
STM32CubeMx之FSMC灵活静态存储器控制器
2022-03-21
基于Cortem-M3平台小说阅读器
2022-03-18
STM32之LWIP网络协议栈连接腾讯云
2022-03-01
STM32之LWIP网络协议栈移植
2022-02-24
DM9000有线网卡驱动编写
2022-02-24
STM32驱动W5500连接腾讯云
2022-02-22
STM32驱动W5500动态分配IP
2022-02-22
基于百度智能云人脸属性分析.tar
2022-01-05
基于SDL库贪吃蛇游戏.rar
2021-12-03
SDL显示时间和天气.rar
2021-12-02
SDL显示yuv图像.rar
2021-12-02
SDL图片显示.rar
2021-12-02
STM32CubeMx之RTC实时时钟.zip
2021-06-30
美的空调红外线协议解码.zip
2021-06-25
SDIO驱动SD卡移植文件系统.zip
2021-06-22
STM32CubeMx外部中断配置.zip
2021-06-03
STM32CubeMX之ADC采集烟雾值
2021-05-26
MQTT连接腾讯云示例(softap配网).zip
2021-05-18
MQTT连接腾讯云(smart配网).zip
2021-05-18
MQTT连接腾讯云示例(smart配网).zip
2021-05-16
MQTT连接腾讯云示例.zip
2021-05-15
数字光照强度获取GY30.zip
2021-04-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人