- 博客(51)
- 收藏
- 关注
原创 mmap 内存映射
内存映射的作用是把硬件设备的地址,映射到应用层的内存空间,这样用户就可以跨越系统层访问linux的硬件设备。计算机常用的图片格式JPG(JPEG)、PNG和BMP是常见的图像文件格式,它们各有特点和适用场景: JPG(JPEG)压缩方式:JPEG使用有损压缩,这意味着在压缩过程中会丢失一些图像数据,尤其是当压缩比率较高时。适用场景:由于有损压缩,JPEG文件通常比PNG和BMP文件小,适合网络传输和存储空间有限的情况。它非常适合照片和复杂图像,因为这些图像的微小失真通常人眼难以察觉。
2025-03-27 12:57:45
299
原创 配置文件/etc/profile、etc/bashrc、~/.bash_profile 和 ~/.bashrc
在Linux系统中,/etc/profile、etc/bashrc、~/.bash_profile 和 ~/.bashrc 是Bash shell的关键配置文件,它们在不同场景下控制着全局和用户级别的环境配置。
2025-03-19 09:45:55
375
原创 深入解析 /etc/profile 及其在 Linux 配置体系中的定位
深入解析 /etc/profile 及其在 Linux 配置体系中的定位
2025-03-19 09:35:54
493
原创 Linux环境中,使用Makefile来编译标准库STM32工程 ---- STM32F103C8T6
Linux环境中,使用Makefile来编译标准库STM32工程 ---- STM32F103C8T6
2025-03-16 19:11:05
966
原创 STM32F103C8T6最小系统板 ---- 串口烧录程序
系统存储器启动模式(System Memory Boot Mode),即 Bootloader 模式。在这种模式下,STM32 会运行预装在系统存储器中的 Bootloader 程序,从而支持通过串口(USART)烧录程序。
2025-03-15 08:41:30
388
原创 Windows环境中,脱离Keil,使用Makefile来编译标准库STM32工程 ---- STM32F103C8T6
Windows环境中,脱离Keil,使用Makefile来编译标准库STM32工程 ---- STM32F103C8T6。并使用串口烧录或者stlink烧录。
2025-03-14 21:10:38
1437
原创 什么是库文件?
库文件(Library File)是包含预编译代码的文件,供程序在编译或运行时调用。它们通常用于封装常用的功能(如数学计算、字符串处理、文件操作等),以便在多个项目中复用,从而减少代码重复并提高开发效率。
2025-03-13 18:19:20
579
原创 栈在数组、链表中的应用 ---- 十进制转二进制函数、十进制转八进制函数
栈在数组、链表中的应用 ---- 十进制转二进制函数、十进制转八进制函数
2025-03-08 18:49:13
201
原创 数据结构 ---- 链表操作 插入、查询、删除、判空、获取大小等操作
数据结构 ---- 链表操作 表头插入、表尾插入、查找值、查找结点、大小、打印结点
2025-03-01 21:46:50
138
原创 STM32 ---- 回到标准库函数
请求CAN操作模式(如正常模式、静默模式等)。在双CAN模式下,设置从CAN控制器的起始过滤器组编号。请求CAN操作模式(如正常模式、静默模式、环回模式等)。获取发送邮箱的状态(如发送成功、发送中或发送失败)。获取CAN标志位状态(如发送完成标志、接收标志等)。使能或禁用CAN中断(如接收中断、发送中断等)。| 获取指定FIFO中待处理的消息数量。| 从指定FIFO接收CAN消息。| 获取发送错误计数器的低8位值。| 启动消息传输(发送起始信号)。| 使能或禁用消息传输结束标志。
2025-03-01 14:45:43
496
原创 C语言 ---- 关键字 volatile
volatile 是 C/C++ 中的一个关键字,用于告诉编译器不要对标记为 volatile 的变量进行优化,因为该变量的值可能会在程序的控制之外被改变。
2025-02-28 19:33:11
844
原创 C语言 ---- 关键字 const
const 是 C/C++ 中的一个关键字,用于定义常量或限制变量的修改。它的主要作用是增强代码的可读性、安全性和优化潜力
2025-02-28 19:20:11
183
原创 C语言 ---- 关键字 extern
extern 是 C/C++ 中的一个关键字,用于声明变量或函数是在其他文件中定义的。它的主要作用是实现跨文件的变量和函数共享。
2025-02-28 19:13:06
558
原创 C语言 ---- 关键字 static
static 是 C/C++ 中的一个非常重要的关键字,它的作用取决于它所修饰的变量或函数的作用域和生命周期
2025-02-28 19:02:40
872
原创 从C 语言去分析的内存分布
从C 语言去分析的内存分布常量区、全局数据区、栈上的内存由系统自动分配和释放,不能由程序员控制。程序员唯一能控制的内存区域就是堆(Heap):它是一块巨大的内存空间,常常占据整个虚拟空间的绝大部分,在这片空间中,程序可以申请一块内存,并自由地使用(放入任何数据)。堆内存在程序主动释放之前会一直存在,不随函数的结束而失效。在函数内部产生的数据只要放到堆中,就可以在函数外部使用。
2025-02-28 18:48:50
792
原创 Linux下64位环境的用户空间内存分布
在 Linux 64 位环境 下,用户空间的内存分布是一个复杂但有序的结构。用户空间的内存布局由操作系统和编译器共同管理
2025-02-28 18:48:18
459
原创 C语言 ---- 数据段(Data Segment)
数据段(Data Segment) 是程序内存布局中的一个重要部分,用于存储全局变量和静态变量。数据段通常分为两个部分:.data 段和 .bss 段。
2025-02-28 18:35:42
614
原创 C语言 ---- 程序代码区(Text Segment 或 Code Segment)
程序代码区(.test code) 存放函数体的二进制代码。一个C语言程序由多个函数构成,C语言程序的执行就是函数之间的相互调用。
2025-02-28 18:25:55
347
Windows环境中,脱离Keil,使用Makefile来编译标准库STM32工程 - STM32F103C8T6
2025-03-14
STM32标准库工程文件模板,需要搭配《从零搭建一个STM32的工程》文章的第三部分配置才可使用
2025-02-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人