自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 嵌入式开发基础学习笔记(pwm spi)

SPI(串行外设接口)是一种高速、全双工、同步的串行通信总线。I.MX6U 自带的 SPI 外设被称为。I.MX6U 的 PWM 外设结构包含一个 16 位自增计数器和一个 4x16 的 FIFO 队列。I.MX6U 的 ECSPI 支持主/从模式,本次实验通常使用。的一种技术,常用于控制电机速度、灯光亮度(背光)等。PWM(脉冲宽度调制)本质上是通过数字手段模拟。

2026-01-29 21:02:40 818

原创 嵌入式开发基础学习笔记(I2C 通信协议与 ADC 模数转换)

I2C(Inter-Integrated Circuit)是由飞利浦公司开发的同步串行半双工通信总线,广泛应用于嵌入式系统中与各类传感器和存储设备的通信。:IMX6ULL在12位模式下,基准电压3.3V时,能识别的最小电压约为 3.3V/4096≈0.8mV3.3V/4096≈0.8mV。同时,根据应用场景合理选择分辨率,平衡精度需求与系统资源消耗。函数正是按照上述时序实现的,先写入地址,再通过Repeated Start切换为读模式。,是嵌入式系统中连接模拟世界与数字世界的关键桥梁。

2026-01-27 17:56:32 695

原创 嵌入式开发基础学习笔记(RGB LCD 驱动开发)

LCD 显示一帧图像的过程类似于“画图”,电子枪从左到右、从上到下扫描像素点。为了锁定有效的像素数据,需要设置特定的时序参数(包含“黑边”时间)。eLCDIF 的工作频率需要根据屏幕参数精确配置。帧时序决定了每一帧(画面)的扫描过程。I.MX6U 的 LCD 控制器称为。行时序决定了每一行的扫描过程。在代码中,需要初始化。

2026-01-27 17:46:03 1113

原创 嵌入式开发基础学习笔记(LED实验C语言实现、蜂鸣器实验、SDK裸机驱动、链接脚本、BSP工程管理)

LED点灯需依次配置时钟、复用、引脚属性、方向、电平,确保硬件与软件逻辑一致。MEMORY {FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 1M // ROM区域RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 256K // RAM区域SECTIONS {.bss : {// BSS段起始地址符号*(.bss)*(COMMON)// BSS段结束地址符号C代码引用寄存器操作本质。

2026-01-20 20:43:20 1127

原创 嵌入式学习基础笔记(51)

从机地址(1字节) + 功能码(1字节) + 数据(N字节) + CRC校验(2字节)知识点关键内容备注接线方式TXD-RXD交叉连接单片机与PC通信必须交叉波特率设置使用定时器1模式2生成11.0592MHz晶振计算方便工作方式方式1最常用8位UART,波特率可变中断处理TI和RI标志必须软件清零防止重复中断数据帧起始位+数据位+校验位+停止位完整的数据格式。

2026-01-15 23:28:47 920

原创 嵌入式基础学习笔记(51)

General Purpose Input Output,单片机与外界交互最基本的形式。

2026-01-13 20:44:50 1300

原创 嵌入式基础学习(硬件)(51)

核心概念:以应用为中心,以计算机技术为基础,软硬件可裁剪的专用计算机系统特点:专用性、实时性、可靠性、低功耗、小型化概念类别关键点记忆技巧MCU vs CPUMCU集成度高,CPU只负责运算"MCU=单片机,CPU=电脑心脏"共阳极LED阳极接VCC,阴极接引脚,低电平点亮"共阳:高电平不亮,低电平亮"动态显示利用视觉暂留,快速切换显示"轮流显示,骗过眼睛"位运算与(&)清0,或()置1,异或(^)翻转"与0清0,或1置1"

2026-01-12 23:17:25 967

原创 嵌入式开发基础学习笔记(线程)

共享资源、高效执行、支持三方库(pthread/clone/posix):信号量初始值需根据场景合理设置(如生产者-消费者模型中缓冲区大小)线程共享进程资源(内存、文件描述符等),同时拥有私有栈空间。参数:线程ID指针、属性(默认NULL)、回调函数、参数。字符串/结构体:通过堆区内存传递,需注意生命周期管理。解决方案:资源有序分配、超时检测、死锁预防算法。:进程是资源分配最小单位,线程是执行最小单位。:控制资源访问顺序(生产者-消费者场景):通过互斥锁或信号量同步访问共享资源。

2025-12-18 13:56:53 399

原创 嵌入式开发基础学习笔记(进程)

一、进程基础概念进程定义​动态概念:程序执行的过程,包含程序计数器、寄存器、内存状态等运行时信息包含资源分配(内存、CPU调度)和独立运行单元PCB(进程控制块)是进程存在的唯一标志,Linux中对应结构体进程与程序的区别​特征程序(静态)进程(动态)存储位置硬盘(代码+数据集合)内存(代码段、堆、栈、数据段)生命周期永久存在随创建而产生,随终止而消亡并发性无支持并发执行资源占用无占用CPU、内存、IO等资源示例a.out文件正在运行的a.out实例进程状态​。

2025-12-18 13:56:20 731

原创 嵌入式开发基础学习笔记

核心模块:用户/组管理、文件操作、错误处理、开发工具、终端交互。关键点:通过系统调用与标准库结合实现功能,注重错误处理与资源释放。应用场景:系统级程序开发、脚本编写、终端界面美化。

2025-12-16 19:39:42 305

原创 嵌入式开发基础学习笔记

Dennis Ritchie于1975年为UNIX系统设计的IO库对文件IO的封装,提供缓冲机制支持跨平台(任何支持ANSI C的系统)包含文本流(ASCII编码)和二进制流两种模式。

2025-12-16 19:38:53 231

原创 嵌入式开发基础学习笔记

总节点 n=n0​+n1​+n2​(n1​是度为 1 的结点数),边的数量 n−1=2n2​+n1​(每个度 2 结点贡献 2 条边,度 1 贡献 1 条),联立消去 n得 n0​=n2​+1。:对含 n个结点的二叉树按“层序”编号(从上到下、从左到右),若编号 i(1≤i≤n)的结点与“同深度满二叉树的编号 i结点”位置完全一致,则为完全二叉树。含 n个结点的完全二叉树,深度为 ⌊log2​n⌋+1(或通过换底公式 log2logn​+1近似)。:所有结点只有左子树(左斜树)或只有右子树(右斜树)。

2025-12-14 01:56:24 860

原创 嵌入式开发基础学习笔记

定义:限定仅在表尾(栈顶)​ 进行插入(入栈)和删除(出栈)操作的线性表。特性先进后出(LIFO)后进先出。应用场景:递归调用(保存现场)、回溯问题(路径记录)、优先级调度(高优先级先出)。定义:允许在一端(队尾)插入另一端(队头)删除的线性表。特性先进先出(FIFO)后进后出。应用场景:缓冲(如IO速度不匹配时暂存数据)、任务调度(按顺序处理请求)。

2025-12-14 01:50:28 838

原创 嵌入式开发基础学习笔记

定义:解决特定问题的有限指令序列,每条指令表示一个或多个操作。特征输入输出:输入可选(0个或多个),输出必须有(至少1个);有穷性:步骤有限自动结束(非死循环),每步可在接受时间内完成;确定性:同一输入→唯一输出;可行性:每步操作可实现(如加减乘除、逻辑判断)。定义:零个或多个数据元素的有限序列,内存空间位于堆区(生命周期由mallocfree控制)。ADT示例(通用数据类型DATATYPEtypedef struct person { // 数据元素(含数据项)char sex;int age;

2025-12-01 21:36:22 678

原创 嵌入式开发基础学习笔记

用户自定义的。

2025-11-25 18:24:22 264

原创 嵌入式开发基础学习笔记

存储一级指针地址的指针变量(如。

2025-11-23 22:06:27 562

原创 嵌入式开发基础学习笔记

不能直接返回栈上局部变量的地址(函数结束后栈帧销毁,地址无效);指针是C语言的“间接访问神器”,地址传递是被调函数修改实参的关键;指针函数需注意返回地址的有效性,函数指针实现灵活的回调逻辑;:降低耦合度,实现回调函数(运行时确定调用的函数)。:需修改实参内容时(如数据交换、数组修改)。给被调函数的形参,形参是实参的“复制品”;传给形参(形参为指针),形参通过解引用(,类型为“去掉函数名的函数签名”(如。:存于栈区,函数返回后地址失效(如。:被调函数修改形参不影响实参;段(只读),返回其地址有效(如。

2025-11-20 20:51:03 571

原创 嵌入式开发基础学习笔记

1.定义语法基类型* 指针名(如int* p;char* q;•int* p, q中,p是int*q是int仅修饰指针名)。2.初始化要求•未初始化的指针是野指针(存储随机地址或已释放内存,易导致程序崩溃);•正确初始化:用NULL(即(void*)0,表示空指针,不能读写)或有效地址(如int* p=#

2025-11-18 18:24:31 304

原创 嵌入式开发基础学习笔记

1. 预处理流程​预处理(处理指令)→ 编译(生成汇编)→ 汇编(生成.o)→ 链接(合并库函数)。2. 宏定义(#define​•无参宏:定义常量(如•宏名大写(区分变量);•文本替换(无计算/类型检查);•末尾无分号(避免替换错误)。•带参宏(a):(b));•与函数对比:维度带参宏函数类型检查无有(参数类型匹配)成本低(文本替换)高(调用开销)代码体积大(展开后重复)小(复用函数体)

2025-11-17 20:45:10 337

原创 嵌入式开发基础学习笔记

1.编译运行流程:C源文件(如1.c)经gcc编译生成可执行文件(如A.out),运行时加载到内存执行。2.内存分区•栈区(~8M):存局部变量、函数参数、返回地址,随函数结束自动释放。•堆区:动态内存区(需mallocfree控制),由程序员管理生命周期。•数据段•.data:初始化的全局/静态变量;•.bss:未初始化的全局/静态变量(系统默认初始化为0);•.rodata:只读字符串常量(不可修改)。•文本段:存程序执行代码(机器指令)。•共享区。

2025-11-17 00:26:52 271

原创 嵌入式开发基础学习笔记

char 数组名[长度];(长度需预留'\0'的空间,即字符串长度+1)代码示例// 可存9个字符 + 1个'\0'// 隐式定长:自动计算为3('H','i','\0')// 初始化为全0(安全清零,避免脏数据)

2025-11-12 19:11:12 328

原创 嵌入式开发基础学习

(可能崩溃或数据损坏)。

2025-11-12 19:05:08 414

原创 嵌入式开发基础学习笔记

语法类型名 数组名[整型常量]要求:整型常量≥0(表示元素个数),不能是void;int a[5];(定义5个int类型元素的数组);int a[2+4];(用表达式指定长度,结果为6)。

2025-11-10 18:08:43 329

原创 嵌入式开发学习笔记

程序从main函数开始,按代码书写顺序逐行执行,直至main函数结束(return 0。

2025-11-09 21:45:24 268

原创 嵌入式开发学习笔记

返回值:读取到的字符的ASCII码值;:避免在格式字符串中加入额外字符(如\n),否则可能导致输入阻塞;的注意事项(变量取地址、少用非控制字符),规避输入风险。返回值:成功写入终端的字符的ASCII码值;功能:从终端读取格式化输入,存储到变量中。(需传入字符的ASCII码或字符常量,如。功能:从终端读取一行字符串(包含空格);返回值:成功读取的变量个数;风险:不检查缓冲区大小,易导致溢出,\t:制表符(相当于4个空格);功能:向标准终端(屏幕)输出。:除字符串外,所有变量都需加。(右对齐,不足补空格);

2025-11-06 18:17:23 397

原创 嵌入式开发基础学习笔记

​:算术运算符有固定计算顺序(如先乘除后加减),影响表达式结果。✅ 掌握赋值运算符的左值/右值规则,避免常见赋值错误。是临时结果,不是变量,无法接收赋值)。计算(算术运算符以左结合为主)。(右值是表达式,结果赋给左值变量。单目运算符:仅需1个操作数(如。(简化“先运算再赋值”逻辑)。(定义变量时赋初值,仅一次);双目运算符:需2个操作数(如。三目运算符:需3个操作数(如。​(可修改的内存空间别名);​:赋值运算符左侧,必须是。​:赋值运算符右侧,可是。​:同等优先级下,默认。除数不能为0,否则触发。

2025-11-06 18:12:25 219

原创 嵌入式开发基础学习笔记

​:每4位一组(不足补0),对应十六进制字符(0-F)。合法字符:字母、数字、下划线(首字符非数字)。±1.8×10³⁰⁸(15-16位有效数字)​:每3位一组(不足补0),对应八进制数字。±2×10⁹(约-2³¹ ~ 2³¹-1)翻译为汇编指令(与CPU逻辑门一一对应)±3.4×10³⁸(6-7位有效数字)​:辗转相除法(除2取余,倒序排列)。绑定库函数与目标文件,生成最终程序。生成二进制目标文件(机器码雏形)(寄存器)(控制变量生命周期)。-128 ~ 127(有符号)(枚举)(组合数据类型)。

2025-11-05 01:02:06 412

原创 嵌入式开发基础学习笔记(Linux篇)

​本日重点掌握:✅ 终端快捷键组合✅ 文件系统核心目录用途✅ Vim高效编辑技巧✅ GCC调试流程。

2025-11-03 20:45:30 289

空空如也

空空如也

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

TA关注的人

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