- 博客(12)
- 资源 (5)
- 收藏
- 关注
原创 别再写 while(1) 死循环了,嵌入式开发该换个活法
写到这里,你可能已经发现了一些有意思的东西:事件驱动里的事件队列,本质上就是生产者-消费者模式;函数指针注册表,其实就是观察者模式的雏形;事件驱动配合状态机,就是状态模式的典型应用。这些东西有一个共同的名字——设计模式。很多嵌入式工程师觉得设计模式是搞 Java、搞后端那帮人的东西,跟单片机没关系。但实际上,你在项目里踩过的坑、总结出的经验,很多都能在设计模式里找到对应的解法。区别只是,别人早就把这些经验提炼成了可复用的套路。与其每次都从零开始摸索,不如站在前人的肩膀上。
2026-05-06 13:31:22
415
原创 从复位到main()的启动文件详解,血泪整理,自我理解
启动文件负责将处理器从复位状态引导到C语言的main()函数执行环境,为C代码运行搭建基础平台。AREA、SPACE、DCD需要和链接脚本文件配合,功能体现在代码编译和链接阶段,两者配合才能实现将中断向量表放置到指定内存区域0x0地址,这一部分不是上电复位后CPU直接执行的代码。上电复位后执行的第一条代码是Reset_Handler(),其被定义到启动文件里而非.c里。每次学习每次忘,因为每次都不去整理,每次都觉得知道就行了,久而久之都忘记了,这次再写一遍。
2025-11-27 09:34:53
208
原创 软件工程师--清晰分类的电脑文件夹
下面文件夹结构需覆盖项目、工具、库、文档、学习、测试、临时文件七个方向。当然,搭建清晰、实用的文件夹结构,既要符合行业习惯,又能让内容一目了然。嵌入式开发涉及硬件、软件、文档、工具等多维度内容,文件夹分类的核心是按 “用途 + 归属” 分层,命名遵循简洁、一致、无歧义的原则。世界就是个草台班子,别担心,没事的,要按时吃饭,按时学习。
2025-11-21 11:10:10
289
原创 基于MCU中RTT Viwer打印,从移植到测试所遇到的问题全部解决
那天同事突然跟我吐槽:"这芯片移植我试了好几次,怎么都搞不定,最后干脆放弃了。你要是能弄出结果,可得给我看看啊!"我当时一听就纳闷——之前移植其他芯片不都挺顺利的吗?怎么到这儿就卡壳了?但转念一想,后面做IMU(惯性测量单元)的时候,这芯片的数据采集可是关键啊!要是现在不解决,到时候项目进度肯定受影响。我着急了,真着急了。(这两天补上)
2025-10-16 20:47:29
270
原创 C语言:指针,指针与数组
首先要知道不管你的指针是什么类型,是几级指针,在同一个操作平台编译环境中,所占的内存空间都是一致的。如pc使用的是32位的,那就是 32/8=4,那就是4个字节内存空间。例:#include <stdio.h>#include <stdlib.h>int main(){ int i = 1; int *p = &i;//分开写是 int *p;p=&i; printf("i = %d\n",i);//简单取值 prin
2021-03-05 16:19:04
993
1
充电协议标准解读与典型案例分析-开普检测 GB23970
2024-07-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅