自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 蓝桥杯嵌入式第14届模拟题客观题

摘要:STM32定时器的重复计数器(RepetitionCounter)功能仅存在于高级定时器(TIM1/TIM8)中,通用定时器(TIM2-TIM5)不具备该寄存器。开发时需注意定时器型号差异,高级定时器特有的重复计数功能无法在通用定时器上实现。这一硬件差异会影响脉冲计数等功能的实现方案选择。

2026-01-17 18:35:42 207

原创 解决问题08:从寄存器角度解决引脚配置问题(示例作用于点灯)(博主开发资料下载链接)

小编觉得存放在GitHub还有gitcode太麻烦了,小编以前上传在这上面,后面忘记git操作又得从头看,所以小编存放在了百度网盘里面,关于小编的资料,大概每周更新一次首先今天的主角依旧是我们亲爱的STM32F103C8T6,作用的东西特别i底层,希望能让大家更加了解一下,我们全部电路都是电阻电感电容组成,在每一个地方命名为了地址,这个地方的电压高低记为0/1,于是我们查看芯片手册(STM32F10x-中文参考手册)找到下面这个地方。

2026-01-17 18:34:59 629

原创 解决问题07:编译器乱码问题

两篇文章,必有一篇是水文,赚取流量卷,这个问题很简单,大家按下面操作即可。

2026-01-15 12:41:18 145

原创 解决问题06:旧版本导入标准外设库后的问题error: #5: cannot open source input file “core_cm3.h“:

本文主要讲解旧版本Keil导入STM32标准外设库时的常见报错解决方法。重点解决宏定义配置问题,需在C/C++选项中正确设置STM32F10X_MD和USE_STDPERIPH_DRIVER宏定义,并根据芯片型号选择对应启动文件。同时指出需将标准外设库文件正确导入编译路径,并检查关键配置项是否一致。文章还提供了相关参考博客链接,帮助读者进一步了解芯片启动文件选型。

2026-01-15 12:30:37 574

原创 解决问题05:开发前期的标准外设库使用问题

本文介绍了基于STM32F103C8T6的开发环境搭建过程,详细说明了标准外设库的下载方法(提供ST官网链接)和文件组织结构(包括核心文件、外设驱动、启动文件和用户文件)。重点讲解了启动文件的选择依据(根据芯片手册确定使用startup_stm32f10x_md.s),并提供了B站视频教程作为参考。最后指导用户完成库文件和用户文件的复制配置工作。

2026-01-14 18:57:49 307

原创 解决问题04:正式开发中的基础知识欠缺问题

值得一提的是大部分单片机有备用电源,也就是几个电容组成的,可以保证RTC断电仍然运行。选型中关于核心芯片的选择问题,对于学习时,个人建议上手STM32F407ZGT6。

2025-12-29 16:14:53 132

原创 解决问题03 下载问题Cannot Write to RAM for Flash Error: Flash Download failed - “Cortex-M4“

针对此类问题,我提供三种路线,据此,本人遇到各种问题均可由此三种路线解决。

2025-12-23 13:39:08 272

原创 解决问题01:keil版本匹配问题* Warning: Registered ARM Compiler ignored, Version needs to be 5 or higher. Path:‘

该报错在近期经常发生,原因是keil的MDK版本进行更新后,大概在MDK536之后的版本都对cubemx之中生成的文件有识别错误。mdk536之前的编译器版本是5.xx系列,后期均为6.xx系列,后期下载的mdk版本无法识别cubemx生成的5.xx版本文件如果下到高版本还需前往以下网站下载旧版本。旧版本keil可能存在包无法直接导入的情况,需要手动导入,详情看以下文章。下载完毕后可以看到以下两个文件夹,这两个文件夹均为编译所需文件夹。若识别不到按顺序找到缺少的这两个编译文件夹,添加进去即可。

2025-12-22 12:16:52 622

原创 解决问题02:keil包无法直接导入问题(手动导入芯片包)

丢入你的安装得keilpack路径下得以下文件夹内,keil文件夹如果没有可以自己创建!随后重启即可识别到芯片包。大家下载的芯片包在新版本一般可以直接导入,对于旧版本可能存在进度条卡死的情况,遇到这种情况我们需要手动导入。pack文件也属于压缩文件,可以进一步解压。随后将解压得到的文件夹。

2025-12-22 12:15:16 226

原创 python学习day1(循环,列表等)

上面是一个简单的冒泡排序用法,在这里数组是怎么样的列表就是怎么样的,唯一值得注意的是。对于for循环,这里采用的for循环常见于Java的更优解使用和python中。python有一个优点,可以一行代码直接进行交换值,即。python列表对应c语言数组,两者并无二至。

2025-10-15 09:40:24 193

原创 近两年总结反思

摘要:作者回顾大一大二参加过多含金量低的水赛(获得省二省三等普通奖项),意识到对技术提升有限。反思自学方式过于依赖CSDN等非系统化资源,现决定跟随尚硅谷课程重新系统学习并记录博客。建议大学生避免无效竞赛(尤其专业不对口者),警惕可"购买"的赛事,推荐优先与室友组队。强调专注技术深耕的重要性,宣布将通过博客分享新的系统性学习路径。(149字) 注:摘要严格遵循原文事实,突出"从水赛反思到技术回归"的转折,保留课程选择、组队建议等实用信息,并体现后续博客创作计划,符合1

2025-07-31 21:50:02 112

原创 关于PaddleLabel多人同时标注的解决办法

其他队员链接需要知道你的IP地址, 可以通过终端输入ipconfig查看,随后在网页打开。于是,我就开始研究,第一步需要在目标主机打开防火墙,很容易被入侵!在PaddleLabel的安装过程中提到了。随后打开Anaconda然后启动即可。然后特定一个本地端口号即可。选择以管理员方式运行。

2025-05-05 16:29:39 438 2

原创 蓝桥杯DAC和ADC使用教程

ADC:将模拟信号转化成数字信号 DAC: 将数字信号转化成模拟信号。参考蓝桥杯数据手册可以得到蓝桥杯有两个关于电压采集的电位器,打开cubemx可以找到对应的ADC以及通道。

2025-03-24 11:18:11 292

原创 蓝桥杯ADC的cubemx讲解(深入了解ADC机制)(非电路)

ADC时钟 = 主频80MHz / 2 =:STM32G4的ADC最大时钟为60MHz,40MHz是安全值,确保ADC正常工作。:输出范围为0~4095,对应模拟电压0~3.3V(假设参考电压为3.3V)。:12位数据右对齐,存储在16位寄存器的低12位(高4位补0)。:DMA的数据宽度需设置为**半字(16位)**以匹配寄存器。:Disabled:单通道采样。若需多通道,需启用扫描模式并配置转换序列。(需手动修改):使ADC在完成一次转换后自动开始下一次转换,配合DMA实现持续采样。(需手动修改)

2025-03-24 11:14:22 1383

原创 二刷蓝桥杯嵌入式学习视频——LCD

也可以用(%c,37)来输出,37的ASIIC码对应百分号。可知在配置LCD时候需要把这些引脚全部配置成output。高亮显示一般显示的是背景色。LCD以及LED电路图。

2025-03-12 20:12:42 182

原创 二刷蓝桥杯嵌入式学习视频——Key

我们由电路图可知,我们的按键是上拉状态,我们只需要配置引脚为输入模式即可(可以再次选择上拉)按键按下电路情况(结构体实现按键时需要调整好定时器时间实现消抖,结构体按键可参考其他文章)

2025-03-12 19:58:07 136

原创 蓝桥杯必备C语言知识点(C语言过渡嵌入式)

注意这个函数还有结构体都存在与time.h文件,得到的数据是以秒为单位的一般得到的数据存放在time_t里面,这个是专门存放时间戳的,一个longlong类型变量。枚举也类似与结构体的写法,不一样的是中间每一个变量以逗号连接,并且设置枚举变量时候 默认第一个是1,第二个是2等等等。该函数会将要求的字符串按照你给的第二个变量的规则对应丢入第三个变量里面。它会把这个字符串指定大小的位置的值复制给另外一个字符串。注意这个函数是int类型。

2025-03-03 20:20:56 677 2

原创 蓝桥杯输入检测方波频率以及占空比

运行后得到以下效果,我的通道二是上升沿开始计数,通道一是下降沿开始计数,它的原理很奇怪,默认刚开始是上升沿,然后再检测到上升沿就把CNT丢到CCR2同时会把CNT归零也就形成了周期,检测到下降沿的时候会把CNT的值丢进去CCR1也就形成了占空比,下面一种方法能更好帮你理解,先看成品效果图。CNT = 0发生在CH1时我们发现CCR1和CCR2交换了值,这更验证了我们的猜想,CNT = 0发生在上升沿,并且默认刚开始是上升沿,然后第二次识别到上升沿才触发中断形成周期。和我的直接读取寄存器的效果是一样的。

2025-02-04 14:51:50 557

原创 蓝桥杯知识点杂乱小结

在默认情况下第一个枚举成员的默认值为整型的 0,后续枚举成员的值在前一个成员上加 1。我们在这个实例中把第一个枚举成员的值定义为 1,第二个就为 2,以此类推。我们仔细看这上面的宏定义代码,是不是很麻烦,所以c语言就有了一个新的概念,枚举,枚举可以达成和下面一样的效果。这种状态机的方法延时时间近似一个中断周期,若需要加时间,可以在最前面添加逻辑,了解了枚举我们就可以写以上代码,这样我们就有了新的框架,下面是使用方法。当然关于枚举的定义我们有下面两种方式。

2025-01-23 15:44:38 195

原创 蓝桥杯嵌入式定时器深入学习笔记(三)看门狗

介绍:看门狗定时器原理上来说也是一个逐级递减的定时器,给他设置一个定时值,它会逐渐递减,递减到0后就会进行芯片复位,在看门狗定时器还没到达0时重新给他赋值的这个操作就叫喂狗。这是另外一个喂狗的方法,通过给狗的计数值重新变个值,上面的情景就是用于防止系统卡死的,如果系统卡死或者外部中断导致该函数无法正常运行以及死锁,我们的系统会重启重新复位。既然是定时器,它在实现自己功能的时候这个功能实现时间也是需要的,它有一个超时时间,超过超时时间后MPU会复位,和我的蠢狗电脑一样。(窗口看门狗)中的参数,而。

2024-12-19 22:20:23 546

原创 CUBEMX系统时钟和定时器时钟略解

当滴答计数器累计到最大值(例如 32 位计数器的最大值为 0xFFFFFFFF)时,系统可能会发生溢出,计数器会从 0 重新开始。以上是HAL_Delay实现延迟的一个过程,值得一提的是我们在配置的时候可以选择时钟,有系统滴答时钟和硬件定时器所带的时钟,系统滴答时钟采用向上计数的方法,而定时器时钟全靠自己配置。他的每个滴答周期是 1 毫秒,系统时钟计数单位也是毫秒,也就是我们系统时钟每记一次数就会触发一次系统滴答定时器(SysTick)来实现我们需要的任务比如每个滴答周期完成时,系统的。

2024-12-04 21:48:02 484 3

STM32保姆级学习要求

STM32保姆级学习要求

2024-10-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除