ALZSM小伟
码龄5年
关注
提问 私信
  • 博客:46,060
    问答:8
    46,068
    总访问量
  • 50
    原创
  • 1,192,870
    排名
  • 256
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:河北省
  • 加入CSDN时间: 2020-01-02
博客简介:

qq_46129738的博客

查看详细资料
  • 原力等级
    当前等级
    3
    当前总分
    378
    当月
    6
个人成就
  • 获得374次点赞
  • 内容获得5次评论
  • 获得433次收藏
创作历程
  • 4篇
    2024年
  • 46篇
    2023年
成就勋章
TA的专栏
  • C/C++语言
    10篇
  • stm32单片机
    3篇
  • 软件
    1篇
  • FreeRTOS
    2篇
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

keil4和5版本代码编译错误问题

电脑中只有keil5软件, 使用keil5软件打开, 编译后报了一堆错, 还是官方库文件的错误, 这就是版本不兼容了.链接:https://pan.baidu.com/s/1lOfCwZnu2lrGIvNPEZ58LQ。1. 查看有没有驱动, 如果有keil5, 那么此时应该是可以识别到的.: 下载keil4软件, 不要和keil5放到一起. 进行如下操作.4. 匹配flash算法要和调试器保持一致, keil4要手动切换.: 在工作中, 遇到了keil4工程的老代码, 需要烧录到板子中.
原创
发布博客 2024.05.29 ·
916 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

[STM32F407ZET6] GPIO

F4的输出配置和F1的不同, F4的配置后, 施密特触发器将会开启, 还会对输入寄存器进行采样读取. F1的配置后, 推挽输出将会关闭施密特触发器, 开漏模式读取会读输入寄存器, 推挽模式会读取输出寄存器的值.F1的引脚默认功能就那么一个或者两个, 而且只能使用一个, 但是F4的默认功能有很多, 可以让一个引脚复用多个外设, 只需要切换复用的通道就可以了, 提高了集成度.例如: 使用PA2复用3个定时器, 输出PWM波, 非常浪费. 虽然但是, 感觉这个复用暂时没有发现应用的场合.
原创
发布博客 2024.01.18 ·
691 阅读 ·
9 点赞 ·
0 评论 ·
5 收藏

[STM32F407ZET6] 片上资源介绍

硬件资源可以让我们知道, 这个芯片都有哪些功能, 内存映射让我们知道, 我们的代码存到了哪里, 运行内存在哪里, 外设寄存器在哪里. 了解时钟体系, 是必要的, 时钟是通信的核心, 是单片机运行的心脏, 如果不了解时钟体系, 通信必然会出现不可预估的问题.f4系列的f1系列的不同, F1系列的基本上配置都是正确的, 外接8M晶振就是正确的, F4系列不同, 需要自己配置PLL的倍频. 在system_stm32f4xx.c文件中修改.配置PLL , PLL一旦配置后, 程序运行不可以更改.
原创
发布博客 2024.01.18 ·
2022 阅读 ·
21 点赞 ·
0 评论 ·
28 收藏

[C语言]时间戳

时间戳就是定义一个时间点作为0秒, 之后每过一秒依此加一, 将当前的时间戳换算成年月日, 再加上起点, 获得的就是现在时刻的时间. 根据地球时区的偏移, 比如北京时间是东八区, 做一个偏移量的加减.时间戳存储器: 现在常见的时间戳存储在32位或者64位整型变量中, 或许是有符号, 或许是无符号. 世界上所有的时间戳(秒计数器)都是一样的, 换算结束再根据时区做偏移运算.printf("星期:%d, 本月第 %d 天, 夏令时标志 %d
", localTime->tm_wday,//月, 需要手动加1。
原创
发布博客 2024.01.02 ·
2215 阅读 ·
23 点赞 ·
1 评论 ·
22 收藏

[stm32f103]DMA

硬件触发: 如果是外设到存储器中转运. 就需要考虑一些时机, 如转运ADC数据, 就需要每个通道转换完成之后, 进行一次硬件触发DMA, 之后DMA会开始转运. 触发一次转运一次, 这样不会干预其他外设的工作.软件触发: 不用调用函数触发, 用最快的速度, 连续转运, 直到结束(计数器清零). 和自动重装器只能用一个. 用于存储器到存储器的转运, 因为不需要Timing. 最快完成就行. 可以用于所有的地址.数据转运到哪个地址?存储器到存储器的转运, 使用软件触发, 外设到存储器的转运, 使用硬件触发.
原创
发布博客 2023.12.29 ·
554 阅读 ·
7 点赞 ·
0 评论 ·
7 收藏

FreeRTOS任务调度

开启任务调度器开启任务调度器无参数, 无返回值. 作用是用于启动任务调度器,任务调度器启动后,FreeRTOS便会开始进行任务调度 .如果允许了静态创建任务, 则创建空闲任务和创建定时器任务都会变为需要程序员手动实现创建.1.创建空闲任务(动态创建)创建成功, xReturn = pdPass;
原创
发布博客 2023.12.28 ·
449 阅读 ·
9 点赞 ·
0 评论 ·
8 收藏

stm32f103系统滴答定时器

SysTick定时器, 是一个24位的定时器, 只能向下计数(n->0). 从RELOAD寄存器中自动重装载定时初值. 24位可以粗略约等于16M个数字.
原创
发布博客 2023.12.28 ·
952 阅读 ·
9 点赞 ·
0 评论 ·
9 收藏

STM32F103系统时钟

在main函数进入之前, 首先会进入SystemInit函数, 进行系统时钟配置.
原创
发布博客 2023.12.28 ·
811 阅读 ·
7 点赞 ·
0 评论 ·
10 收藏

学习STM32获取相关资料的官方网站

STM32单片机是ARM公司开发的基于Cortex-M架构的内核, 所以需要下载内核相关文档要来这里!这些文档都可以下载!
原创
发布博客 2023.12.28 ·
2346 阅读 ·
32 点赞 ·
0 评论 ·
35 收藏

FreeRTOS列表和列表项源码详解

还记得列表项中有一个分配的数值, xItemValue, 就是根据这个来进行升序插入. 此时的列表项里面已经有内容了, 比如阻塞态的列表项, 它的xItemValue就和任务延时的时间有关.不管是插入, 还是删除, 都可以看出来, 列表并没有对列表项中的pvOwner进行操作, 这个挂载的才是真正的数据, 具体的操作, 是任务来进行的. 列表只是提供了一个数据存储结构.尾插是一种无序的插法, 此时两种情况的插法, 都和pxIndex有关, 插入到pxIndex的前面, 并不一定是列表的最后.
原创
发布博客 2023.12.27 ·
349 阅读 ·
10 点赞 ·
0 评论 ·
5 收藏

windows11下载GCC编译器

下载下载。
原创
发布博客 2023.12.21 ·
2758 阅读 ·
10 点赞 ·
0 评论 ·
17 收藏

[软件] Image2LCD v4.0

每一个像素点需要用16位来表示, 分别是RGB, R: 5位 G: 6位, B: 5位, 共两个字节.通过打开图片, 可以提取图片的像素特征, 生成.c文件, 或者二进制文件等, 提供人们根据需要选择.tftLCD180显示屏, 官方给的参考代码, 需要如下所示设置.
原创
发布博客 2023.12.21 ·
1148 阅读 ·
10 点赞 ·
0 评论 ·
6 收藏

FreeRTOS的heap文件

在动态创建任务的时候, 只需要提供一个任务句柄, 内存的分配, TCB的分配, 都是系统来进行的, 也是这个文件做的工作. heap文件一共有5个, 都是内存管理文件, 工程只需要一个就行, 这五个的内存分配方法都不一样.heap2: 实现了malloc和free功能, 使用了最佳匹配算法, 但分配几次, 再释放之后, 不能合并相邻空闲内存, 全部内存都变成了内存碎片, 全部不能用了.(不用)heap5: 和heap4分配内存和释放算法是一样的, 增加了可以管理多块, 分隔开的内存, 如果嵌入式系统中,
原创
发布博客 2023.12.20 ·
446 阅读 ·
8 点赞 ·
0 评论 ·
7 收藏

[FreeRTOS] 创建动态和静态任务 / 删除任务 / 临界保护 / 任务栈分配不足

由系统动态分配任务所需要的内存空间, 简单, 方便, 灵活, 节省空间.由程序员自己定义空间大小, 不易产生内存碎片.缺点: 任务删除无法回收内存.缺点: 容易产生内存碎片.
原创
发布博客 2023.12.20 ·
708 阅读 ·
8 点赞 ·
1 评论 ·
9 收藏

[FreeRTOS] 初识FreeRTOS

五、栈一、介绍: 前后台系统, 前台主循环, 后台中断服务函数. 无法做到实时性高, CPU的工作被大量的浪费在延时中.: 简单, 免费, 开源, 可裁剪. 实时性高, 充分利用CPU资源.二、任务调度器FreeRTOS任务调度器, 并不是硬件层面, 而是软件层面实现的, 它的工作内容是: 使用相关的调度算法来决定当前需要执行哪个任务. FreeRTOS支持三种调度方式: 抢占式调度, 时间片调度, 和协程式调度.2.1 抢占式调度。
原创
发布博客 2023.12.20 ·
1168 阅读 ·
27 点赞 ·
0 评论 ·
16 收藏

[软件] Beyond Compare4

文件夹比较, 文本比较, 合并等非常有用的软件, 尤其是在对比代码上面, 有时候很难找到自己的代码和别人的代码到底哪里出现了区别, 这个软件就非常有效了.
原创
发布博客 2023.12.18 ·
412 阅读 ·
7 点赞 ·
0 评论 ·
5 收藏

[C语言] 使用数组模拟实现malloc

为什么使用longlong类型强转, 因为在VC编译器中, longlong类型是8个字节, 64位电脑内存地址也是8字节, 只能用这个来进行运算, 如果是32位机器, 那么使用int就行了.代码如下, 只能模拟实现malloc但是无法实现free, 这里只是随便写写如果是只使用一次这么写也对.
原创
发布博客 2023.12.17 ·
483 阅读 ·
8 点赞 ·
0 评论 ·
8 收藏

[C语言] “变量的完整定义“ & “volatile关键字“

volatile的意思是 "易变的" , 在C语言中当使用volatile修饰一个变量时, 即表示这个变量的值随时都有可能发生改变, 因此编译器在编译的时候对该变量的存取操作不能进行优化, 即告诉编译器每次存取该变量的时候都要从内存中去存取而不是使用其之前在寄存器中的备份.// 读取a地址的内容 --> 寄存器x 寄存器x --> 写入b的内存。缺点是无法得到编译器的优化, 增加CPU的执行时间, 影响效率, 因此在不需要优化的地方, 不要使用volatile关键字.
原创
发布博客 2023.12.17 ·
540 阅读 ·
9 点赞 ·
0 评论 ·
7 收藏

keil5软件调试stm32f103代码失灵问题

打开软件调试, 然后填好正确的DLL和参数即可. stm32就填入这个就可以了.在keil软件中, 更换了芯片型号之后, 导致软件不能正常调试.
原创
发布博客 2023.12.16 ·
733 阅读 ·
6 点赞 ·
0 评论 ·
9 收藏

keil5自带“串口模拟器“调试打印(stm32)

打开软件调试 代码编写串口程序 开始编译 view菜单->serial Windows -> uart1 # -> 全速运行
原创
发布博客 2023.12.15 ·
5268 阅读 ·
13 点赞 ·
1 评论 ·
27 收藏
加载更多