![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
2024年程序员学习
文章平均质量分 89
普通网友
这个作者很懒,什么都没留下…
展开
-
stm32F103C8T6基于FreeRTOS操作系统的多任务_stm32f103c8t6 freertos(1)
我们看一下FreeRTOS的名字,可以分为两部分:Free和 RTOS,Free 就是免费的、自由的、不受约束的意思,RTOS全称是RealTimeOperating System,中文名就是实时操作系统。可以看出 FreeROTS就是一个免费的RTOS类系统。这里要注意,RTOS不是指某一个确定的系统,而是指一类系统。比如UCOS,FreeRTOS,RTX,RT-Thread等这些都是RTOS类操作系统。操作系统允许多个任务同时运行,这个叫做多任务,实际上,一个处理器核心在某一时刻只能运行一个任务。原创 2024-05-17 09:16:35 · 453 阅读 · 0 评论 -
STM32F0x HAL库学习笔记(6)片内闪存(Flash)的读写操作_stm32f0 flash读写
在操作Flash之前,我们都需要对Flash进行解锁,对应的,操作完Flash之后,则需要对Flash进行上锁。这里的操作包括擦除,读和写等。原创 2024-05-17 09:16:01 · 479 阅读 · 0 评论 -
STM32CubeMX系列 红外遥控_嵌入式stm32红外遥控按键在哪里
二进制脉冲码目前最广泛使用的是:NEC Protocol的PWM(脉冲宽度调制)和Philips RC-5 Protocol的PPM(脉冲位置调制)。本例程遥控器使用的是NEC协议,其特征如下NEC码的位定义:一个脉冲对应560us的连续载波,一个逻辑1传输需要2.25ms(560us脉冲+1680us低电平),一个逻辑0传输需要1.125ms(560us脉冲+560us低电平)。原创 2024-05-17 09:15:28 · 290 阅读 · 0 评论 -
STM32CubeMX系列 红外遥控_嵌入式stm32红外遥控按键在哪里(2)
引导码由一个9ms的低电平和一个4.5ms的高电平组成,地址码、地址反码、控制码、控制反码均是8位数据格式。而红外接收头在收到脉冲的时候为低电平,在没有脉冲的时候为高电平,这样在接收头端收到的信号为:逻辑1应该是560us低电平+1680us高电平,逻辑0应该是560us低电平+560us高电平。本例程遥控器使用的是NEC协议,其特征如下。由于红外接收头在没有脉冲的时候为高电平,当收到脉冲的时候为低电平,所以可以通过外部中断的下降沿触发中断,在中断内通过计算高电平时间来判断接收到的数据是0还是1。原创 2024-05-17 09:14:53 · 272 阅读 · 0 评论 -
Qt QPushButton按钮用法详解_qpushbutton(1)
QAbstractButton 类是所有按钮控件类的基类,包含很多通用的按钮功能。QPushButton 类专门用来创建可按压的按钮,如图 1 所示。图 1 QPushButton 按钮QPushButton 按钮上除了可以放置一串文本,文本左侧还可以放置图标,必要时还可以在按钮上放置图片。QPushButton 按钮可以作为一个独立的窗口,但实际开发中很少这样用,通常的用法是像图 1 这样将按钮内嵌到某个窗口中,作为一个子控件和其它控件搭配使用。原创 2024-05-17 05:53:25 · 950 阅读 · 0 评论 -
Qt QMessageBox用法详解_qt message
以上 6 种通用的 QMessageBox 对话框,界面上的图片无法修改,按钮上的文字也无法修改(例如无法将 OK、No 改成中文)。如果想修改它们,就需要自定义一个 QMessageBox 对话框。原创 2024-05-17 05:52:51 · 861 阅读 · 0 评论 -
Qt QMessageBox用法详解_qt message(1)
/创建 QMessageBox 类对象 QMessageBox MyBox(QMessageBox::Question,“Title”,“text”,QMessageBox::Yes|QMessageBox::No);原创 2024-05-17 05:52:17 · 1055 阅读 · 0 评论 -
IDEA创建Activiti工作流开发第一篇(Maven项目)_org
如果没有出现图中的按钮,可以按快捷键Ctrl+alt+Shift+U,按了以后,以后这个图标就会出现了。不过如果有中文会出现乱码,需要在这两个文件下的后面都加上-Dfile.encoding=UTF-8。然后重启IDEA,把原来的PNG图片删掉,再生成一次就不会出现乱码了。流程实例运行时 执行对象表。流程实例运行时 身份联系表。流程实例运行时 用户任务表。启动流程实例涉及到的表。原创 2024-05-17 02:15:35 · 289 阅读 · 0 评论 -
IDEA创建Activiti工作流开发第一篇(Maven项目)_org(1)
如果没有出现图中的按钮,可以按快捷键Ctrl+alt+Shift+U,按了以后,以后这个图标就会出现了。不过如果有中文会出现乱码,需要在这两个文件下的后面都加上-Dfile.encoding=UTF-8。(img-vcG4bI4Q-1715883279514)](img-DYbMuc21-1715883279514)]然后重启IDEA,把原来的PNG图片删掉,再生成一次就不会出现乱码了。左键单击节点就会出现左边的修改按钮。原创 2024-05-17 02:15:01 · 362 阅读 · 0 评论 -
I2C操作笔记——以 AT24C04为例
I2C设备有很多种,若掌握基本原理,便可见招拆招,那是I2C总线就不那么难了。既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)如果你需要这些资料,可以戳这里获取1024c (备注嵌入式)**原创 2024-05-17 02:14:27 · 329 阅读 · 0 评论 -
HuggingFace入门教程--环境搭建_拥抱脸
通过上述操作说明我们的虚拟环境已经建好了(截图中的字写错了,应该是激活虚拟环境)。2.3 修改interpreter通过上述操作我们就把新建项目的虚拟环境配置好了。原创 2024-05-17 02:13:53 · 549 阅读 · 0 评论 -
C标准库——string
int main() //测试str 中出现 key 中字符的情况 i i a a e i。*/ //使用跟安全的函数。//str[0] 的字符串长度为 n + 1。int main() //输出s在str中最后一次出现的位置。int main() //用sample 替换 simple。int main() //寻找str中的p位置。int main() //输入apple时跳出循环。int main() // 输出str中所有s的位置。原创 2024-05-16 21:15:36 · 744 阅读 · 0 评论 -
C标准库——string(1)
如果它们彼此相等,它将继续执行以下对,函数结束条件:(1)直到字符不同,(2)直到到达终止的空字符为止,(3)或者直到两个字符串中的num字符匹配为止。(无论哪个是第一个)目标中的终止null字符由源的第一个字符覆盖,而在目标的连接中所形成的新字符串的末尾包含一个空字符。为了避免溢出,目标指向的数组的大小应该足够长,以包含与源相同的char字符串(包括终止的空字符),并且不应该在内存中与源重叠。解释:根据当前语言环境转换源指向的char字符串,并将转换后的字符串的第一个num字符串复制到目标,返回其长度。原创 2024-05-16 21:15:02 · 240 阅读 · 0 评论 -
C操作MYSQL数据库
除了使用API操作MYSQL外,还可以使用MYSQL Connector/C,具体信息就去看MYSQL官方文档吧。收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。如果你需要这些资料,可以戳这里获取需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人。原创 2024-05-16 21:14:27 · 410 阅读 · 0 评论 -
C++QT入门_c++ qt(1)
QMainWindow 是一个为用户提供主窗口程序的类,包含一个菜单栏(menu bar)、多个工具栏(toolbars)、多个铆接部件(dock widgets)、一个状态栏(status bar)及一个中心部件(central widget),是许多应用程序的基础,如文本编辑器,图片编辑器等。原创 2024-05-16 16:14:28 · 295 阅读 · 0 评论 -
C++11智能指针(auto_ptr,unique_ptr,shared_ptr,weak_ptr的详解与模拟实现)
/ 原理就是,node1->_next = node2;// C++11的库中也有一个lock_guard,下面的LockGuard造轮子其实就是为了学习他的原理。// unique_ptr的设计思路非常的粗暴-防拷贝,也就是不让拷贝和赋值。// shared_ptr通过引用计数支持智能指针对象的拷贝。// 注意这里必须使用引用,否则锁的就不是一个互斥量对象。class unique_ptr //取消赋值和拷贝。class auto_ptr //交换管理权。// 仿函数的删除器。原创 2024-05-16 16:13:54 · 384 阅读 · 0 评论 -
C++ 自定义排序顺序详解,优先级队列 + lambda 表达式_c+
当容器里面不是int类型时,就不能直接使用greater进行排序此时可以使用lambda// lambda 表达式作为 Campare,当返回 true 时,left 先进入,后输出,即在优先级队列(堆)的下方优先级队列里面存放的是pair,我们定义,当时,返回true,即second值较小的排在优先级队列的下方,可以理解为大顶堆既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!原创 2024-05-16 16:13:20 · 346 阅读 · 0 评论 -
C++ 自定义排序顺序详解,优先级队列 + lambda 表达式_c+(1)
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)如果你需要这些资料,可以戳这里获取获取:vip1024c (备注嵌入式)**如果你需要这些资料,可以戳这里获取。原创 2024-05-16 16:12:45 · 228 阅读 · 0 评论 -
51单片机项目(25)——基于51单片机电子秒表的protues仿真_51单片机电子表proteus(1)
根据LED的颜色、尺寸和显示方式的不同,LED数码管可以分为七段数码管、共阳数码管和共阴数码管。丰富的外设:51单片机提供了多种外设接口,如GPIO(通用输入输出)、定时器/计数器、串行通信接口(如UART、SPI和I2C)、PWM(脉冲宽度调制)等。成熟的开发工具和软件支持:由于51单片机的广泛应用和历史悠久,它拥有成熟的开发工具和丰富的软件支持。由于其简单、稳定和易于开发的特点,51单片机广泛应用于各种嵌入式系统,如智能家居、自动化控制、电子仪器、汽车电子、工业控制等领域。,但一群人才能走的更远!原创 2024-05-16 13:11:47 · 333 阅读 · 0 评论 -
51单片机项目(24)——基于51单片机的温控风扇protues仿真_单片机温度超过阈值电分扇运转
测温我用了 DHT11:DHT11是一种低成本的数字温湿度传感器模块,常用于测量环境的温度和湿度。它由一个温度传感器和一个湿度传感器组成,内部集成了模数转换器和信号调理电路,能够直接输出数字信号。DHT11模块的工作原理是通过感测周围空气的热散射来测量温度,湿度则是通过感测周围空气的电导率来测量的。它具有以下特点:高准确性:DHT11模块提供的温度测量精度为±2℃,湿度测量精度为±5%RH。低成本:DHT11模块价格低廉,适合应用于成本敏感的项目。原创 2024-05-16 13:11:12 · 303 阅读 · 0 评论 -
51单片机项目(23)——基于51单片机的电子秤仿真_hx711电子秤仿真图
数字接口:HX711模块通过数字接口与微控制器通信,通常使用串行接口(如SPI)进行数据传输。这使得可以方便地将模块连接到各种微控制器上,如Arduino、Raspberry Pi等。增益和偏置校准:HX711模块内置了增益和偏置校准电路,可以通过软件设置进行校准。这样可以消除传感器和电路的非线性特性和偏差,提高测量的准确性和可靠性。低功耗:HX711模块在待机模式下具有较低的功耗,有助于延长电池寿命或减少能耗。HX711模块通常用于各种测量应用,如电子秤、压力传感器、力传感器等。原创 2024-05-16 13:10:38 · 345 阅读 · 0 评论 -
51单片机项目(23)——基于51单片机的电子秤仿真_hx711电子秤仿真图(1)
HX711模块具有以下主要特点和功能:高精度放大:HX711模块内部集成了高精度的模拟信号放大器,能够放大传感器输出的微弱信号,并将其转换为数字信号。通常,HX711模块的放大倍数可达到128倍或更高,从而实现高精度的测量。双通道输入:HX711模块具有两个输入通道,分别用于连接传感器的正负引脚。这使得可以同时测量两个传感器的信号,比如用于制作双轴电子秤。内部低噪声滤波:HX711模块内部采用了低噪声滤波技术,能够抑制传感器输出信号中的噪声干扰,从而提高测量的准确性和稳定性。原创 2024-05-16 13:10:03 · 321 阅读 · 0 评论 -
v4l2_field理解
一些驱动可能允许选择不同的序,终端应用可以在调用VIDIOC_S_FMT前初始化struct v4l2_pix_format的 field成员。然而因为field是一个跟着一个拍的,争论帧是由top还是bottom开始的是没意义的,任何两个相邻的top bottom场, 或者 bottom top场都可以组成一个有效的帧。与直觉相反,top 场不一定排在bottom前面, top和bottom到底谁先谁后,是由video标准决定的。ip1024c (备注嵌入式)**下面列出了可能的field类型。原创 2024-05-16 01:40:15 · 557 阅读 · 0 评论 -
USB OTG的工作原理_piq otgupgrade
OTG定义了一个叫做MiniAB的袖珍插孔,他能直接接入MiniA或者MiniB插口,MiniAB有一个ID引脚 上拉至电源端,MiniA插头有一个与地连接好的ID(R100 kΩ)。当2个OTG设备连接到一起的时候 ,MiniA插头边的ID引脚会注入一个“0”状态,MiniB插头边的ID引脚为 “1”,ID为0的OTG设备默认为主机(Adevice),ID为1的OTG设备默认为从机(B device)。(7)复位/列举/使用Adevice。原创 2024-05-16 01:39:41 · 584 阅读 · 0 评论 -
uniapp路由拦截_uniapp 路由拦截
我们小程序是采用uni-app开发的,uni-app是vue风格的所以开发起来效率很高,但是有个缺陷就是没有路由钩子,就这一点还蛮不方便的。一般来讲,路由钩子的一个最常见的应用场景就是权限校验,恰好我们项目中就有很多需要校验权限的页面,所以在开发中也遇到了这个难题。原创 2024-05-16 01:39:07 · 362 阅读 · 0 评论 -
Uniapp引入vant-weapp_vant weapp uniapp
app.vue引入@import “/wxcomponents/vant/common/index.wxss”;在page.json的globalStyle中引入要用的组件。原创 2024-05-16 01:38:32 · 538 阅读 · 0 评论 -
HC-05与JDY-09蓝牙模块对比与使用(1)
首先要先用CH340与蓝牙模块连接起来,我们要通过串口工具来对蓝牙模块进行设置。每个模块都有它对应的一个串口调试工具能够一键发送命令什么的,当然用通用的一些串口工具例如XCOM也可以,只不过要手敲指令。这里的波特率是要和单片机串口的波特率相同才能进行通讯哦。原创 2024-05-15 23:28:29 · 1105 阅读 · 0 评论 -
Hard Fault 异常调试方法_go to infinite loop when hard fault exception occu
Cortex-M3/4的Fault异常是由于非法的存储器访问(比如访问0地址、写只读存储位置等)和非法的程序行为(比如除以0等)等造成的。常见的4种异常及产生异常的情况如下:**Bus Fault:**在fetch指令、数据读写、fetch中断向量或中断时存储恢复寄存器栈情况下,检测到内存访问错误则产生Bus Fault。**Memory Management Fault:**访问了内存管理单元(MPU)定义的不合法的内存区域,比如向只读区域写入数据。原创 2024-05-15 23:27:55 · 1078 阅读 · 0 评论 -
H264 编解码协议详解_h264编解码流程框图
人眼可察觉到的电视视频图像刷新中的闪烁为 0.02 秒,即当电视系统的帧率低于 50 帧/秒,人眼可感觉得出画面的闪烁。H.264 引入 IDR 帧是为了解码的重同步,当解码器解码到 IDR 帧时,立即将参考帧队列清空,将已解码的数据全部输出或抛弃,重新查找参数集,开始一个新的序列。视频的一场和一帧用来产生一个编码图像,一帧通常是一个完整的图像,当采集视频信号时,如果采用隔行扫描(奇、偶数行),则扫描下来的一帧图像就被分成了两个部分,这每一部分都被称为 [场],根据次序,分为 [顶场] 和 [底场]。原创 2024-05-15 23:27:21 · 917 阅读 · 0 评论 -
GStreamer源码编译安装脚本化_gstreamer-plugins 交叉编译
脚本功能是在Linux上源码安装Gstreamer,仅仅是将手动安装过程脚本化,将手动安装过程遇到的问题处理掉写成脚本,并非所有版本都正常通过,测试的版本比较少其它版本有可能遇到不一样的问题。安装依赖下载源码编译安装验证Gstreamer源码主页: https://gitlab.freedesktop.org/gstreamer源码列表(按顺序安装)gstreamerorc只有过程中遇到错误就退出安装。目前测试的版本比较有限,有些版本可能无法一步成功。原创 2024-05-15 23:26:46 · 869 阅读 · 0 评论