自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 keil问题-程序下载后不运行但调试能运行

@ ps: 记录一个关于arm半主机模式的问题《ARM Cotrex-M3权威指南》

2026-04-26 15:09:15 313

原创 libmodbus笔记

@ ps : 一些开源工程libmodbus的源码学习笔记网址:https://github.com/stephane/libmodbus参考书籍:《modbus软件开发实战指南》

2026-04-23 21:48:53 253

原创 USB设备

@ PS:一些关于USB2.0的学习笔记。

2026-04-19 18:26:13 387

原创 工作笔记-----EEPROM偶发性读取错误

val);....i < 10;i ++)if(!break;...

2025-11-24 21:00:45 375

原创 工作笔记-----ICache对中文显示的影响问题

STM32H563 中“中文显示依赖 ICache”的现象,本质是数据访问模式与 Flash 效率不匹配中文显示的离散、高频小字模访问对延迟极其敏感,依赖 ICache 消除 Flash 读取延迟;图片的连续大块访问可通过 Flash 预取机制优化,对 ICache 依赖较低。开发中建议保持 ICache 开启,既能充分发挥 STM32H5 的高性能,又能避免类似兼容性问题。理解存储访问特性与缓存机制的关联,能帮助我们更高效地调试嵌入式系统中的“玄学”问题。

2025-10-07 17:37:30 898

原创 工作笔记-----keil报错PDSC-Sequence Exexution failed

@ Author:明月清了个风@@ PS:记录一个keil报错的处理方法。

2025-10-07 16:29:45 365

原创 工作笔记----lwip的数据管理结构pbuf源码解析

@ Author:明月清了个风@@ PS:在上一篇中已经讲解了lwip的内存管理策略,这一篇中将对lwip的数据管理结构pbuf的源码进行解析。lwip在各模块各层之间传递数据,使用了统一的数据包管理结构pbuf,通过传递pbuf指针避免了数据进行传输时的内存拷贝.这个源码并不长,直接贴出来了,省略了一些条件编译和debug的内容首先来看传入的三个参数,分别是pbuf_layerlengthpbuf_type。

2025-09-23 21:11:07 1231

原创 工作笔记-----lwip的内存管理策略解析

@ Author:明月清了个风@@ PS:在这之前已经写过几篇关于lwip的文章了,在其中都依赖于lwip核心的一个数据结构pbuf来传递消息,在前面的文章中并没有对该数据结构以及其所在文件“\pbuf.c”进行过深入讲解,但是其对于lwip协议栈的构建是十分重要的,因此想记录一下对于pbuf源码的学习。但在此之前,首先应对lwip的内存管理策略有所了解,因此这一篇先记录了对于lwip内存管理策略的学习。

2025-09-21 14:56:18 839

原创 工作笔记-----stm32随机数发生器RNG配置问题

但是这里的随机值起始也是确定的,因为当一个函数内部变量没有被赋值时,他的值就是他被分配到的内存地址上上一次遗留的值,由于这是初始化代码,并没有执行到任务函数中,因此每次执行到这的时候该地址上的值都是一样的,所以这个值不会变,当然如果你改变了这句代码前的任何一个地方,都有可能让他变成一个新的值。上面配置的时钟源是PLLQ,但是这里选择的却是PLLSAI,因此没有时钟输入,如果你的RNG配置有问题,就看上面这些寄存器应该可以排除问题了。最后发现是串口3的初始化中错误的将串口3的时钟选择,写成了串口1的,如下。

2025-09-18 22:11:21 1098

原创 工作笔记-----基于FreeRTOS的lwIP网络任接收过程,从MAC至协议栈

至此,已完整讲解了lwip网络接收过程中将数据从MAC的DMA接受至lwip内核协议栈进行处理的过程以及中间涉及的关键函数,由于后续的网络协议栈处理情况复杂, 因此不在此继续深入,如果有问题可以提出,后面会加.🌙2],然后会根据目标地址判断数据类型是组播/广播,这就是更细节的协议栈内容了,这里不讲.下面会根据上面得到的`type`来对消息进行处理,根据不同的`type`将消息放入不同的模块进行处理,比如IP模块,ARP模块,PPPOE模块等等,每个模块都有自己的处理函数.## 四.总结。

2025-09-16 21:23:41 1229

原创 STM32初始化串口重定向后printf调试信息不输出的问题

@ PS:开发stm32F745的过程中发现printf有时候不打印信息,单独调试确定了串口初始化和重定向正确,但是在系统整体调试的时候虽然正确运行了却没有打印,通过使用本文所记录的方法暂时解决,但并不确定是否是最正确的解决方案,记录一下以供参考。现象如简介所述,确认初始化正确,重定向正确,资源分配正确,解决方法如下,在初始化时加入这行代码。表示无缓冲输出,但会增加系统调用的次数。下面贴出串口的初始化代码,应该没有错误。@@ Author:明月清了个风。

2025-09-10 21:17:44 697

原创 韦东山DS103教程补充笔记1-----初始FreeRtos工程

希望能够作为韦东山老师课程的补充内容给大家提供一点点帮助,如果在韦东山老师课程中没有找到某一段代码的实现或问题的答案,或许可以来我这里看看,如果仍有遗漏的问题或需要添加的内容,也请大家指出,看到后会及时补充。该过程可完全参照《FreeRTOS入门与工程实践(基于DshanMCU-103)》第六章内容进行,看了官方提供的源码,并没有提供这一步的工程,因此我弄了一个这样的初始工程给大家,仅在。需要注意的,这样生成的文件还需要进行一个设置,按照下面两张图,这样你下载了代码才会直接运行,否则需要复位。

2025-09-07 17:54:42 513

原创 工作笔记-----lwip网络任务初始化问题排查

这个还有一个坑我没有解决,在一开始没有配置对PHY芯片地址的时候,竟然有一段时间成功连上了TCP,并且能够正确收发数据,这也导致我以为硬件配置没有问题,后续排查了很久,发现还是硬件配置的问题,但是还是不知道为什么会出现这个情况,也没有复现出来过,很不理解.@@ PS:新项目中在STMF7开发板上基于freeRTOS和lwIP开发网口相关任务,开发过程中遇到了网口无法连接的问题,进行了一系列的排查,找到了问题所在,基本将整个lwIP的启动流程详细的看了一遍,现将整个排查过程记录一下,以供参考.

2025-08-10 11:28:43 1001

原创 工作笔记-----IAP的相关内容

百度有很多介绍,这个就不写了首先需要定义: APP程序存放地址,更新程序暂存地址,BOOT程序存放地址。地址根据自己的程序大小和MCU进行更改0X080000000X080400000X080800000x80A0000然后定义升级标志的存放位置,一般存在一个不可能会被改变的地方,比如FLASH最后0x80E0000# define APP_FLAG_ADDR 0x80E0000 //升级程序标志接着定义标志的值,可以定义的复杂一点0x87654321//更新完成标志0x12345678。

2025-08-03 14:31:26 747

原创 工作笔记-----N32G435CB的虚拟串口移植及改动方法

@ PS: 这两天被安排开发了一个仪器的控制板,控制功能还是比较简单的,MCU为N32G435CB,通讯接口使用了板子的虚拟串口,这也是第一次使用N32的虚拟串口,因此记录了移植官方例程的过程和碰到的疑问,并不全面,后面会再更新一次关于USB协议栈的内容,不过看完这篇起码能够移植并使用了。我看了两个版本的例程,发现是不一样的,如果你发现我写的和你看的例程不一样也没有关系,有一些函数可能在更新的版本中被合并到上一层函数中了,也有一些初始化流程顺序不一样了,但是代码做的事是一样的,不影响你理解。

2025-08-03 00:24:41 1130

原创 工作笔记-----FreeRTOS中的lwIP网络任务为什么会让出CPU

@ Ps:最近接触了在FreeRTOS中使用lwIP实现的网络任务,但是在看项目代码的过程中出现了一些疑问——网络任务的优先级为所有任务中最高的,并且任务框架中没有延时,为什么会让出CPU,记录一下这个寻找答案的过程(我也不知道对不对)。函数,这和上面返回1之后的结果是一样的,最后都会到这个函数,这里我也没看了,因为已经知道为什么阻塞了,上面都是非阻塞的过程。可以看到在任务函数中没有会导致任务阻塞让出CPU的函数或操作,比如等待信号量或者等待队列消息,那也意味着如果该任务优先级最高,那么就会永远占用。

2025-07-30 21:38:09 781

原创 工作笔记-----存储器类型相关知识

由于NOR的地址线和数据线分开,可以按“字节”读写数据,符合CPU的指令译码要求,如果CPU给NOR一个地址,NOR就能返回一个数据让CPU执行,不需要额外的操作;而NAND只能按“块”来读写数据,如果NAND上存储了代码指令,CPU给其地址后,它无法之际返回该地址的数据,因此不符合指令译码要求。SDRAM(Synchronous DRAM),同步动态随机存储器,如图,黄色标出为时钟上升沿表示的有效数据,一个时钟周期传输一个数据。存储单元以电容的电荷表示数据,有电荷为1,无电荷为0,但是。

2025-07-30 21:34:38 551

原创 LVGL学习笔记-----进度条控件(lv_bar)

@author: 明月清了个风⭐️关于按钮空间的一些笔记和课后思考的答案。

2025-07-10 20:36:05 597

原创 数据结构与算法学习笔记(Acwing 提高课)----动态规划·单调队列优化DP

@ author: 明月清了个风ps⭐️单调队列基本模型是滑动窗口中的最值问题,一般在窗口中是单调的。暴力的做法就是循环对应长度的区间进行检查,对其进行优化就是寻找这个窗口中的最优值,也就是排除一些一定不会被选中的值,将时间复杂度降为O(n),因为将窗口中的搜索降到了O(1),具体的可以复习基础课中的[单调队列](

2025-06-28 22:47:15 932

原创 数据结构与算法学习笔记(Acwing 提高课)----动态规划·数位DP

@ author: 明月清了个风ps⭐️数位DP是比较有特点的DP问题,难度较高,细节会比较多,但是题目之间的类似性非常高,已经讲过一道题了,难度也比较大,可以先复习一下。

2025-06-23 22:19:30 1308

原创 LVGL学习笔记-----按钮控件(lv_button)

@author: 明月清了个风⭐️关于按钮空间的一些笔记和课后思考的答案。

2025-06-18 16:55:58 1062

原创 LVGL学习笔记-----标签控件(lv_label)显示中文

首先下载好选择的字体的字体文件,后缀为.otf使用[LVGL提供的字体转换器](),页面如下:字体命名以px为单位指定高度(字体大小)设置bpp,值越高,字体越平滑(抗锯齿效果)选择TTF 或WOFF格式字体⽂件设置要包含在字体中的Unicode字符范围或在符号字段中列出字符可以同时选择多个字体文件转换,并为其指定范围和符号,这些字符将被合并转换到一个文件当中。单击转换按钮下载转换出的字体文件,为.c文件。

2025-06-17 12:59:51 814

原创 LVGL学习笔记-----标签控件(lv_label)

@author: 明月清了个风⭐️关于LVGL标签控件的一些笔记,对应课程3-1-1 ~ 3-1-5的内容。

2025-06-13 11:25:30 1459

原创 LVGL学习笔记-定时器

@author: 明月清了个风⭐️关于LVGL定时器的一些笔记。

2025-06-12 13:44:00 1222

原创 数据结构与算法学习笔记(Acwing 提高课)----动态规划·树形DP

@ author: 明月清了个风ps⭐️树形动态规划(树形DP)是处理树结构问题的一种动态规划方法,特征也很明显,会有一个树形结构,其实是DFS的优化。

2025-06-04 21:28:02 1042

原创 数据结构与算法学习笔记(Acwing 提高课)----动态规划·区间DP

区间DP的特征在于子结构一般是一个子区间上的问题,涉及到的问题也非常多,如环形区间,记录方案数,高精度,二维区间等等。这次的题目基本包含了这些知识点的处理方法。

2025-05-26 16:12:40 1077

原创 数据结构与算法学习笔记(Acwing提高课)----动态规划·状态压缩DP

三种经典棋盘类问题解法。首先介绍了"小国王"问题,要求在n×n棋盘放置k个不相邻攻击的国王,通过二进制状态表示和转移条件求解。接着讲解了"玉米田"问题,类似但限制更多,涉及土地肥沃性检查。最后讨论了"炮兵阵地"问题,其攻击范围更广,需要额外处理状态合法性。三个问题都采用行间状态转移的思路,通过预处理有效状态和转移条件来优化计算。最后是愤怒的小鸟,一个重复覆盖问题,通过状态压缩优化DFS的过程

2025-05-24 10:54:11 499

原创 数据结构与算法学习笔记(Acwing 提高课)----动态规划·状态机模型

@@ author: 明月清了个风@@ first publish time: 2025.5.20ps:star:背包终于结束了,状态机模型题目不多。状态机其实是一种另类的状态表示方法,将某一个点扩展为一个状态进行保存并在多个状态之间转移,具体的来看题目理解吧。最后一题较难,需要用到KMP,可以先去复习一下,题目里给链接了。

2025-05-20 20:45:30 749

原创 数据结构与算法学习笔记(Acwing提高课)----动态规划·背包模型(四)

本文介绍了动态规划中的背包模型,重点讨论了完全背包、混合背包和有依赖的背包问题。通过例题Acwing 1021和Acwing 532,展示了完全背包问题的求解思路,特别是如何通过动态规划计算货币系统的方案数以及简化货币系统的最小成员数。Acwing 7则展示了混合背包问题的处理方式,结合了01背包、完全背包和多重背包的特点,通过状态转移方程求解最大价值。文章还提到了有依赖的背包问题和背包问题求方案数的相关例题,强调了不同背包问题的处理技巧和优化方法。代码实现部分提供了详细的动态规划解法,帮助读者理解如何在实

2025-05-18 15:29:23 1261

原创 数据结构与算法学习笔记(Acwing提高课)----动态规划·背包模型(三)

本文主要介绍了动态规划中的背包模型,重点讨论了完全背包问题、背包问题求具体方案、分组背包问题以及有依赖的背包问题。首先,通过“买书”问题展示了完全背包的应用,使用状态转移方程求解方案数。接着,通过“背包问题求具体方案”问题,展示了如何在01背包的基础上输出字典序最小的选择方案。随后,介绍了分组背包问题,通过状态表示和计算方法求解最大价值。最后,通过“机器分配”问题,将分组背包与具体方案结合,展示了如何将实际问题转化为背包模型并求解。文章通过代码实现和详细思路分析,帮助读者理解并掌握这些背包问题的解决方法。

2025-05-09 10:24:22 1184

原创 数据结构与算法学习笔记(Acwing提高课)----动态规划·背包模型(二)

@ author: 明月清了个风ps⭐️这一篇是背包模型二,主要是多重背包这一分支的题目。在基础课中已经讲解过多重背包 I与多重背包II ,,为了方便,这里也直接将这两道题的内容复制过来了(题目中有标记),也可以去看原来的复习。其实就是两道题,一道是滑动窗口优化的多重背包,一道是多重背包的应用题。

2025-05-01 20:00:05 1021

原创 数据结构与算法学习笔记(Acwing提高课)----动态规划·背包模型(一)

@ author: 明月清了个风ps⭐️背包模型是动态规划中的重要模型,基础课中已对背包模型的几种模版题有了讲解,[链接在这](),⭐️题目非常多,计划大概写两到三篇,建议首先复习一下基础课中对应的背包模型。这次是按照题目顺序写的,没有按照视频讲的顺序,因为刚开始讲的就是一系列多重背包问题,相对比较难,因此没有按照这个顺序。并且按照对应的背包模型进行了题目的分类,没有完全按照原来的顺序。这一篇中主要是01背包问题和二维背包问题的应用题。

2025-05-01 15:39:55 1116

原创 数据结构与算法学习笔记(Acwing提高课)----动态规划·最长上升子序列模型

@ author: 明月清了个风ps⭐️基础课中已经学习过最长上升子序列模型的模版题,这是,可以先去把模版题复习一下,提高课中的题目是进一步的延伸和拓展,但是原理仍然是一样的。一共有八道题,还是比较多的,每道题之间的关联和递进也非常紧密。

2025-04-26 15:23:55 787

原创 数据结构与算法学习笔记(Acwing提高课)----动态规划·数字三角形

@ author: 明月清了个风ps⭐️终于开始提高课的题啦,借的人家的号看,以后给y总补票叭,提高课的题比之前的多很多啊哈哈哈哈,基本上每种题型都对应了难度逐步上升的几道题,和基础课的题相比加了一层应用,需要从题目中抽象出模型才能解题。数字三角形的题为动态规划的经典模型,基础课中已经讲过了,在。提高课的是在此基础上的进一步延伸和应用,但原理其实没有变。

2025-04-23 14:51:28 1051

原创 数据结构与算法学习笔记----贪心·推公式

@ author: 明月清了个风ps⭐️大论文写完送盲审啦,希望没问题,然后这也是算法基础课的最后一道例题了,陆陆续续更了半年终于弄完了这道题其实也是贪心的一种典型题目叭,与之前那些区间、huffman树那种不太一样,一般对于每道题都有不同的公式需要进行推理。

2025-04-14 20:15:21 1074

原创 数据结构与算法学习笔记----贪心·绝对值不等式

@ author: 明月清了个风ps⭐️感觉其实是一个数学的问题,

2025-04-05 16:15:36 1012

原创 数据结构与算法学习笔记----贪心·排序不等式

@ author: 明月清了个风ps⭐️一道很简单的题,主要是一个思路。

2025-04-05 15:57:42 683

原创 数据结构与算法学习笔记----贪心·Huffman树

@ author: 明月清了个风ps⭐️Huffman树(哈夫曼树)是一种用于数据压缩的二叉树结构,通过贪心算法构建最优前缀编码,使得出现频率高的字符使用较短的编码,从而减少整体数据存储空间,一道构造Huffman树的模版题。

2025-04-04 16:29:12 733

原创 数据结构与算法学习笔记----贪心区间问题

@ author: 明月清了个风ps⭐️一个月没更了,三月初出去玩了,然后大论文写到现在哈哈哈贪心问题其实不像其他问题能够有非常具体的解决思路,往往是通过尝试找到一种方法后再证明其正确性,贪心的关键在于关注最优子结构向最优全局解的证明。

2025-04-03 21:53:47 1231

原创 数据结构与算法学习笔记----记忆化搜索

@ author: 明月清了个风ps⭐️记忆化搜索其实是一种优化递归算法的方法,通过存储已计算的结果来避免重复计算,显著提升效率。

2025-02-21 10:50:18 1123

DS103补充笔记1-初始FreeRtos工程

韦东山老师DS103的初始FreeRTOS工程,无任何外设驱动,仅点灯

2025-09-07

空空如也

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

TA关注的人

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