![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
2024年程序员学习
文章平均质量分 87
普通网友
这个作者很懒,什么都没留下…
展开
-
STM32F103C8T6编写简单的程序并烧录到板卡上_stm32f103c8t6写程序(1)
其中HAL_TIM_PWM_Start()函数用于启动PWM波的产生,第一个参数&htim1表示所用的时钟源为TIMER1,第二个参数TIM_CHANNEL_1表示用的通道是Channel1,这也正对应了我们选择的PA8引脚所对应的通道。HAL_GPIO_ReadPin()函数的参数中,第一个参数GPIOA代表选择的引脚为PA引脚,第二个参数GPIO_PIN_5代表选择的引脚序号为5。从图中的TIM1_CH1中可以看出PA8对应的通道是TIMER1中的CHANNEL1,因此后续我们将对这一个通道进行配置。原创 2024-05-17 09:18:59 · 435 阅读 · 0 评论 -
stm32f103c8t6最小系统引脚及功能原理图_stm32f103c8t6引脚图及功能
STM32的烧录方式有几种,实际产品开发一般用SWD接口烧录,占用尺寸空间少,一般只需要5根线,也有些用4根线的,就是vdd不接,不接vdd烧录要单独给板子供电。如果我们要使用串口烧录,也就是ISP,就需要把BOOT0接到电源,BOOT1接到地,烧录完以后再全部接到地,相对麻烦很多。说到数据手册,作为一个英语渣,这里多说一句,不要怕全是英文,不用全看懂,抓关键的地方看,其实来来去去就那几个英文。刚上电的时候电流会通过R19和C20到地,为C20充电,此时NRST的引脚为低电平。原创 2024-05-17 09:18:25 · 847 阅读 · 0 评论 -
stm32f103c8t6最小系统引脚及功能原理图_stm32f103c8t6引脚图及功能(1)
STM32的烧录方式有几种,实际产品开发一般用SWD接口烧录,占用尺寸空间少,一般只需要5根线,也有些用4根线的,就是vdd不接,不接vdd烧录要单独给板子供电。复位电路的作用就是,板子上电的瞬间给单片机复位引脚(NRST)一个短暂的低电平,让单片机程序复位,把除了备份区域寄存器以外所有寄存器状态恢复原始状态。说到数据手册,作为一个英语渣,这里多说一句,不要怕全是英文,不用全看懂,抓关键的地方看,其实来来去去就那几个英文。刚上电的时候电流会通过R19和C20到地,为C20充电,此时NRST的引脚为低电平。原创 2024-05-17 09:17:51 · 1090 阅读 · 0 评论 -
stm32F103C8T6基于FreeRTOS操作系统的多任务_stm32f103c8t6 freertos
我们看一下FreeRTOS的名字,可以分为两部分:Free和 RTOS,Free 就是免费的、自由的、不受约束的意思,RTOS全称是RealTimeOperating System,中文名就是实时操作系统。可以看出 FreeROTS就是一个免费的RTOS类系统。这里要注意,RTOS不是指某一个确定的系统,而是指一类系统。比如UCOS,FreeRTOS,RTX,RT-Thread等这些都是RTOS类操作系统。操作系统允许多个任务同时运行,这个叫做多任务,实际上,一个处理器核心在某一时刻只能运行一个任务。原创 2024-05-17 09:17:17 · 350 阅读 · 0 评论 -
Qt Xlsx使用教程、Qt操作Excel、Qt生成Excel图表、跨平台不依赖Office_qtxlsx
0]i原创 2024-05-17 05:56:23 · 1056 阅读 · 0 评论 -
Qt Xlsx使用教程、Qt操作Excel、Qt生成Excel图表、跨平台不依赖Office_qtxlsx(1)
已复制 1 个文件。…此处省略一万字#includeint main()//![0]//!原创 2024-05-17 05:55:48 · 1089 阅读 · 0 评论 -
Qt TCP实现
/主动和对方断开连接。原创 2024-05-17 05:55:14 · 1006 阅读 · 0 评论 -
Qt QTreeWidget树形控件用法详解_qt 树控件
作为简易版的 QTreeView,QTreeWidget 仅适用于构建简单的树形结构,当实际场景中需要构建数据量大、结构复杂的树形结构时,还是应该选择 QTreeView。原创 2024-05-17 05:54:40 · 1150 阅读 · 0 评论 -
idea快捷键(目前在国内见过最全的)_idea的ctrl+f7怎么用
Ctrl+J,查看更多。Ctrl+Alt+I,将选中的代码进行自动缩进编排,这个功能在编辑 JSP 文件时也可以工作。Ctrl+B/Ctrl+Click,快速打开光标处的类或方法(跳转到定义处)Ctrl+Alt+T,可以把代码包在一个块内,例如:try/catch。Ctrl+/或Ctrl+Shift+/,注释(//或者/**/)Ctrl+F,查找/Shift+F3,向上查找/F3,向下查找。Ctrl+Alt+Shift+S,打开当前项目/模块属性。Ctrl+Shift+Alt+N,查找类中的方法或变量。原创 2024-05-17 02:17:58 · 307 阅读 · 0 评论 -
idea快捷键(目前在国内见过最全的)_idea的ctrl+f7怎么用(1)
Ctrl+J,查看更多。Ctrl+Alt+I,将选中的代码进行自动缩进编排,这个功能在编辑 JSP 文件时也可以工作。Ctrl+B/Ctrl+Click,快速打开光标处的类或方法(跳转到定义处)Ctrl+Alt+T,可以把代码包在一个块内,例如:try/catch。Ctrl+/或Ctrl+Shift+/,注释(//或者/**/)Ctrl+F,查找/Shift+F3,向上查找/F3,向下查找。Ctrl+Alt+Shift+S,打开当前项目/模块属性。Ctrl+Shift+Alt+N,查找类中的方法或变量。原创 2024-05-17 02:17:24 · 335 阅读 · 0 评论 -
IDEA快捷方式及常用插件_idea 点击进入方法插件
类似Eclipse,Intellij的Ctrl+N/Ctrl+Shift+N可以打开类或资源,但Intellij更加智能一些,我们输入的任何字符都将看作模糊匹配,省却了Eclipse中还有输入*的麻烦。最新版本的IDEA还加入了Search Everywhere功能,只需按Shift+Shift即可在一个弹出框中搜索任何东西,包括类、资源、配置项、方法等等。原创 2024-05-17 02:16:51 · 227 阅读 · 0 评论 -
IDEA快捷方式及常用插件_idea 点击进入方法插件(1)
该插件在扫描代码后,将不符合规约的代码按Blocker/Critical/Major三个等级显示在下方,甚至在IDEA上,该插件还基于Inspection机制提供了实时检测功能,编写代码的同时也能快速发现问题所在。对于历史代码,部分规则实现了批量一键修复的功能。这里的快捷键用的频率还是很高的,但是之前用的最多的是Ctrl+F和Ctrl+Shift+F,后面相关的Find Usages基本上没有用过,后面应该多使用,有的时候相对Ctrl+F在文件内按字符串查找,还是更好用一些。最低版本 JDK1.7+原创 2024-05-17 02:16:17 · 379 阅读 · 0 评论 -
C语言 结构体 联合体 嵌套使用_联合体里面嵌套结构体
【代码】C语言 结构体 联合体 嵌套使用_联合体里面嵌套结构体。原创 2024-05-16 21:17:56 · 806 阅读 · 0 评论 -
C语言 标识符 static_static 标识符
在某些条件下,比如说在使用诸如pthread(它不支持类)此类的多线程库时,就必须使用静态的成员函数,因为其地址同C语言函数的地址兼容。C++会区分两种类型的成员函数:静态成员函数和非静态成员函数。这时编译就不会有错误,因为在类的定义时,它静态数据和成员函数就有了它的内存区,它不属于类的任何一个具体对象。还是那个问题,静态成员(函数),不属于任何一个具体的对象,那么在类的具体对象声明之前就已经有了内存区,而现在非静态数据成员还没有分配内存空间,那么这里调用就错误了,就好像没有声明一个变量却提前使用它一样。原创 2024-05-16 21:17:22 · 998 阅读 · 0 评论 -
C语言 标识符 static_static 标识符(1)
在某些条件下,比如说在使用诸如pthread(它不支持类)此类的多线程库时,就必须使用静态的成员函数,因为其地址同C语言函数的地址兼容。C++会区分两种类型的成员函数:静态成员函数和非静态成员函数。这时编译就不会有错误,因为在类的定义时,它静态数据和成员函数就有了它的内存区,它不属于类的任何一个具体对象。还是那个问题,静态成员(函数),不属于任何一个具体的对象,那么在类的具体对象声明之前就已经有了内存区,而现在非静态数据成员还没有分配内存空间,那么这里调用就错误了,就好像没有声明一个变量却提前使用它一样。原创 2024-05-16 21:16:48 · 982 阅读 · 0 评论 -
C++string类的常用方法_c++字符串操作
【代码】C++string类的常用方法_c++字符串操作。原创 2024-05-16 16:16:54 · 369 阅读 · 0 评论 -
C++string类的常用方法_c++字符串操作(2)
例如: 输入: this is a isspace!【例题】利用find函数和replace函数完成字符串的替换。输出: thare a arespace!原创 2024-05-16 16:16:19 · 348 阅读 · 0 评论 -
C++string类的常用方法_c++字符串操作(1)
/比较当前字符串从pos开始的n个字符组成的字符串与s中pos2开始的n2个字符组成的字符串的大小。原创 2024-05-16 16:15:45 · 308 阅读 · 0 评论 -
C++QT入门_c++ qt
public slots: // 添加槽函数private:// 重新更新// 设置 完成之后可以拉伸// 设置固定大小// 设置父亲对象// button->setText("中国红!");// // 按钮移动// // 设置按钮大小QPushButton *button2 = new QPushButton("第二个按钮(关闭)",this);# 定义信号函数delete ui;// 槽函数实现。原创 2024-05-16 16:15:10 · 407 阅读 · 0 评论 -
51单片机项目(26)——基于51单片机的超声波测距protues仿真_protues 超声波模块仿真
HCSR04是一种常用的超声波测距模块,用于测量物体与传感器之间的距离。它由超声波发射器和接收器组成,通过发射一束超声波脉冲并计算接收到的反射信号的时间来测量距离。非接触测量:HCSR04通过发送和接收超声波信号进行测距,无需与被测物体直接接触。宽测距范围:HCSR04的测距范围通常为2cm到4m,并且可以根据具体情况进行调整。高精度:HCSR04的测量精度通常为1mm,可以满足大多数应用场景中的精度要求。原创 2024-05-16 13:14:12 · 355 阅读 · 0 评论 -
51单片机项目(25)——基于51单片机电子秒表的protues仿真_51单片机电子表proteus
根据LED的颜色、尺寸和显示方式的不同,LED数码管可以分为七段数码管、共阳数码管和共阴数码管。共阳数码管在显示数字时,LED段的阳极连接在一起,共阴数码管则是将LED段的阴极连接在一起。通过驱动电路控制数码管的各个片段的亮灭状态,可以显示出各种数字、字符和符号,提供人机交互和信息显示功能。它是一种手动操作Switch(开关)的构件,一般由一个按下式按钮和一系列电子元器件组成,可与电路板相连接,使其特定功能得以操作、调节和控制。它有很高的亮度、对比度和广视角,可以显示大量的字符和符号,并具有较长的寿命。原创 2024-05-16 13:13:38 · 412 阅读 · 0 评论 -
51单片机项目(25)——基于51单片机电子秒表的protues仿真_51单片机电子表proteus(3)
根据LED的颜色、尺寸和显示方式的不同,LED数码管可以分为七段数码管、共阳数码管和共阴数码管。通过在特定的LED段上加电,可以显示特定的数字或字符。通过驱动电路控制数码管的各个片段的亮灭状态,可以显示出各种数字、字符和符号,提供人机交互和信息显示功能。丰富的外设:51单片机提供了多种外设接口,如GPIO(通用输入输出)、定时器/计数器、串行通信接口(如UART、SPI和I2C)、PWM(脉冲宽度调制)等。成熟的开发工具和软件支持:由于51单片机的广泛应用和历史悠久,它拥有成熟的开发工具和丰富的软件支持。原创 2024-05-16 13:13:04 · 383 阅读 · 0 评论 -
51单片机项目(25)——基于51单片机电子秒表的protues仿真_51单片机电子表proteus(2)
根据LED的颜色、尺寸和显示方式的不同,LED数码管可以分为七段数码管、共阳数码管和共阴数码管。通过在特定的LED段上加电,可以显示特定的数字或字符。通过驱动电路控制数码管的各个片段的亮灭状态,可以显示出各种数字、字符和符号,提供人机交互和信息显示功能。丰富的外设:51单片机提供了多种外设接口,如GPIO(通用输入输出)、定时器/计数器、串行通信接口(如UART、SPI和I2C)、PWM(脉冲宽度调制)等。成熟的开发工具和软件支持:由于51单片机的广泛应用和历史悠久,它拥有成熟的开发工具和丰富的软件支持。原创 2024-05-16 13:12:29 · 219 阅读 · 0 评论 -
Visio画图_visio画图灯杆(1)
收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。如果你需要这些资料,可以戳这里获取需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上原创 2024-05-16 01:42:41 · 304 阅读 · 0 评论 -
V4L2驱动框架详解
V4L2是Video for linux2的简称,为linux中关于视频设备的内核驱动。在Linux中,视频设备是设备文件,可以像访问普通文件一样对其进行读写。V4L2在设计之初时,是要支持很多广泛的设备的,如声卡, display, FB, I2C, camera等.它们之中只有一部分在本质上是真正的视频设备,也是造成V4l2源码冗余的原因之一。原创 2024-05-16 01:42:07 · 755 阅读 · 0 评论 -
V4L2框架概述
几乎所有的设备都有多个 IC 模块,它们可能是实体的(例如 USB 摄像头里面包含 ISP、sensor 等)、也可能是抽象的(如 USB 设备里面的抽象拓扑结构),它们在/dev目录下面生成了多个设备节点,并且这些 IC 模块还创建了一些非 v4l2 设备:DVB、ALSA、FB、I2C 和输入设备。正是由于硬件的复杂性,v4l2 的驱动也变得非常复杂。特别是 v4l2 驱动要支持 IC 模块来进行音/视频的混合/编解码操作,这就更加使得 v4l2 驱动变得异常复杂。原创 2024-05-16 01:41:32 · 866 阅读 · 0 评论 -
V4L2框架-videobuf2
videobuf2 用于连接 V4L2 驱动层与用户空间层,提供数据交流的通道,它可以分配并管理视频帧数据。videobuf 层实现了很多 ioctl 函数,包括 buffer 分配、入队、出队和数据流控制。为什么要有videobuf2?因为 videobuf1 存在者下面的问题(原文收录于赫尔欣基峰会会议的 PPT 文档中,摘录如下)不完善的以及错误的内存管理a. 不能停止 streaming(在 streamoff 的时候,buffer 被释放,从而无法灵活地再次开启 stream);原创 2024-05-16 01:40:57 · 1020 阅读 · 0 评论 -
HTML5七夕情人节表白网页制作【樱花雨+爱心3D相册】HTML+CSS+JavaScript_樱花雨代码
代码如下(示例):以下仅展示部分代码供参考~原创 2024-05-15 23:30:54 · 346 阅读 · 0 评论 -
HTML5——Canvas图表插件 chart
【代码】HTML5——Canvas图表插件 chart。原创 2024-05-15 23:30:20 · 282 阅读 · 0 评论 -
hex文件、out文件、bin文件、map文件解析
hex文件包括地址信息(烧写或下载hex文件,一般不需要用户指定地址),bin文件格式只包括数据本身(烧写bin文件时,用户需要指定地址信息)。(后面所有数据地址+线性地址左移16位,将该地址左移16 位后作为基地址,并且表示在下一个04类型行出现之前都要使用该地址作为基地址来使用。例:0xBD = 0x0100 –(0x02 + 0x00 + 0x00 + 0x04 + 0x00 + 0x3D)第①行数据基地址(首行):0x0000 +(0x003D原创 2024-05-15 23:29:46 · 662 阅读 · 0 评论 -
HC-05与JDY-09蓝牙模块对比与使用
(1)我们使用串口调试助手,对于HC-05模块进行AT命令调试,在上电之前,要先按住蓝牙模块上的按钮,然后上电,此时灯是慢闪,进入AT命令模式,默认波特率是38400(不会被设置所影响),此模式叫原始模式。此模式我们叫正常模式。模块角色和连接模式是一样的,选择主从角色,当模块位主角色时,绑定地址为你想要连接模块(从角色)的MAC地址;(3)设置HC-05蓝牙模块的模块角色与连接模式为主角色,密码与从角色相同,绑定地址为第(1)步记录并改写好的XXXX:XX:XXXXXXJDY-09蓝牙模块的MAC地址。原创 2024-05-15 23:29:11 · 703 阅读 · 0 评论