- 博客(550)
- 收藏
- 关注
原创 Linux入门第二部分(ARM裸机篇) 第八章 BSP工程管理
本文介绍基于正点原子IMX6U开发板的BSP工程管理方法,通过合理划分目录结构(bsp、imx6ul、obj、project),实现驱动模块化管理。分别编写时钟、延时、LED等驱动文件,并在main.c中调用接口完成LED闪烁控制。采用通用Makefile与链接脚本,支持灵活编译与烧写,最终通过imxdownload工具将固件刷入SD卡并验证功能,提升项目可维护性与可扩展性。
2026-11-05 23:47:44
185
原创 Linux入门第二部分(ARM裸机篇) 第七章 NXP官方SDK的使用
本文介绍了基于正点原子MX6U开发板的SDK移植与裸机程序开发流程。通过下载并裁剪NXP官方SDK包,提取关键头文件(fsl_common.h、fsl_iomuxc.h、MCIMX6Y2.h),结合自定义cc.h类型定义,实现外设寄存器的高效配置。利用SDK提供的IOMUXC_SetPinMux和IOMUXC_SetPinConfig函数完成引脚复用与电气属性设置,编写C语言点灯程序,并复用原有Makefile与链接脚本,最终通过imxdownload工具将bin文件烧录至SD卡,完成开发板验证。该方法显著
2026-11-05 01:22:24
153
原创 Linux入门第二部分(ARM裸机篇) 第六章 驱动开发
本文基于正点原子I.MX6U裸机开发教程,介绍ARM(MX6U)外设寄存器的封装与配置方法。通过定义外设寄存器组结构体、基地址及访问指针,实现对IOMUX、CCM、GPIO等外设的高效操作。结合start.s启动文件完成C环境初始化,编写clk_enable、led_init等函数配置时钟与LED引脚,并在main.c中实现LED闪烁功能。最终通过Makefile编译并使用imxdownload烧写至SD卡,完成开发板验证。
2026-11-03 23:38:34
227
原创 Linux入门第二部分(ARM裸机篇) 第五章 C语言LED驱动实验
本文基于正点原子IMX6U开发板,详细讲解了ARM裸机环境下C语言运行环境的构建过程。通过汇编代码设置SVC模式、初始化SP指针指向DDR(0x80200000),并跳转至main函数。结合Makefile与链接脚本(imx6u.lds),实现代码段、只读数据段、可读写数据段及BSS段的精准定位。编写了外设时钟使能、GPIO初始化、LED控制及延时函数,并通过imxdownload将bin文件烧录至SD卡,完成LED闪烁验证,完整实现了从启动到应用的裸机开发流程。
2026-11-03 01:29:11
304
原创 Linux入门第二部分(ARM裸机篇) 第四章 I.MX的启动
本文详解I.MX6ULL的启动流程与镜像烧写机制。通过拨码开关配置BOOT_MODE引脚,可选择串行下载或内部Boot模式。BootROM初始化系统时钟、中断向量及MMU/CACHE,随后根据IVT(镜像向量表)定位DCD(设备配置数据)和用户程序,自动配置DDR并加载.bin文件至DDR执行。load.imx镜像由IVT、BootData、DCD和程序组成,其中DCD用于寄存器初始化,确保外设正常工作。各部分结构严格对齐,总大小不超过3KB,保障启动可靠性。
2026-11-01 15:48:32
153
原创 Linux入门第二部分(ARM裸机篇) 第三章 汇编LED驱动实验
本文基于正点原子教程,详细讲解了I.MX6ULL裸机开发中LED驱动的实现。通过配置时钟、引脚复用(MUX)、电气属性(PAD)及GPIO方向与数据寄存器,使用汇编语言完成GPIO1_IO03引脚的初始化,实现低电平点亮LED0。程序经交叉编译、链接生成.bin文件,并借助imxdownload工具添加IVT/DCD头部,烧写至SD卡后,开发板上电启动即可点亮LED,完整演示了裸机程序从编写到烧写的全流程。
2026-11-01 13:19:51
486
原创 Linux入门第二部分(ARM裸机篇) 第二章 Cortex-A7 MPCore架构与ARM汇编基础
本文介绍了Cortex-A7MPCore架构的基本特性,包括多核配置、9种运行模式及模式切换机制。重点讲解了寄存器组结构,如通用寄存器、CPSR与SPSR的作用与区别。随后阐述了ARM汇编基础,涵盖GNU汇编语法、伪操作、常用指令(如MOV、LDR、STR、PUSH/POP、B/BL/BX/BLX)及其在裸机启动中的应用,强调汇编在初始化硬件、设置栈及跳转至C语言主函数中的关键作用。
2026-10-31 14:14:30
169
原创 Linux入门第二部分(ARM裸机篇) 第一章 开发环境搭建与了解
本文详细介绍了在Windows与Ubuntu间实现文件互传的FTP配置方法,包括安装vsftpd服务、设置FileZilla客户端及解决中文乱码问题。同时,阐述了Ubuntu下NFS和SSH服务的开启步骤,用于开发板网络访问与远程登录。此外,介绍了交叉编译工具链(Linaro GCC)的安装与环境变量配置,以及SecureCRT串口通信设置。最后,说明了Visual Studio Code插件安装与Linux开发板(I.MX6U-ALPHA)资源概览,为嵌入式Linux开发提供完整环境搭建指南。
2026-10-31 13:59:36
170
原创 Linux入门第一部分(Ubuntu入门篇) 第三章 shell脚本入门(二)
本文系统讲解Shell脚本的流程控制、函数定义与调用、文本处理工具(sed、awk、grep)及交互式工具(select、read)的使用方法。重点涵盖if/elif/else、case分支、for/while/until循环结构,函数参数传递与返回值机制,sed的地址匹配与增删改查操作,awk按字段处理与内置变量应用,grep结合管道实现高效文本筛选,并介绍select菜单与read交互输入,最后说明set命令在调试、错误处理和参数管理中的作用。内容全面,实用性强,适用于Shell脚本开发与运维自动化。
2026-10-25 23:10:04
331
原创 Linux入门第一部分(Ubuntu入门篇) 第三章 shell脚本入门(一)
本文介绍了Shell脚本的基本概念与核心语法,涵盖其在Linux及嵌入式开发中的应用。重点讲解了脚本的编写规范(如shebang、执行权限)、变量定义与引用(位置参数、自定义变量、环境变量、只读变量)、数组操作、字符串处理(引号、命令替换、截取与替换)、数值计算(整数与小数运算)以及逻辑判断(test命令、条件表达式、逻辑运算符)。通过实例演示了echo输出、条件控制、文件检测等实用功能,为初学者提供了完整的Shell脚本入门指南。
2026-10-25 22:59:18
462
原创 Linux入门第一部分(Ubuntu入门篇) 第二章 浅尝Ubuntu(二)
本文系统介绍了Ubuntu文件系统结构、磁盘管理、用户权限及文件操作。涵盖根目录下关键目录功能,绝对与相对路径使用,df/du命令查询磁盘容量,挂载/卸载U盘流程,fdisk分区与mkfs格式化操作,用户与组管理,文件权限(rwx)及chmod/chown修改方法,软硬链接区别与创建,vim编辑器三模式操作,gcc编译四步骤及make工具应用,全面覆盖Linux基础核心知识。
2026-10-24 01:36:06
368
原创 Linux入门第一部分(Ubuntu入门篇) 第二章 浅尝Ubuntu(一)
本文系统介绍了Ubuntu终端基础操作与常用Shell命令,涵盖目录管理(ls、cd、pwd)、文件操作(cp、mv、rm、mkdir、touch)、系统信息查询(uname、df、du、top)、权限控制(sudo、su)及网络配置(ifconfig)等核心功能。同时讲解了软件安装(APT、deb包)、压缩解压(tar、gzip、bzip2、zip/rar)及文本查找(grep、find)等实用技能,适用于Linux初学者快速掌握日常运维与开发环境搭建。
2026-10-24 01:27:48
257
原创 Linux入门第一部分(Ubuntu入门篇) 第一章 开发环境准备
本文详细介绍了在Windows电脑上使用VMware创建Ubuntu虚拟机的全过程,包括硬件配置建议(如16GB内存、300GB硬盘空间)、VMware安装与虚拟机创建步骤,以及Ubuntu系统的安装与基础设置。重点讲解了网络配置、静态IP设置、VMware Tools安装以实现剪切板共享和分辨率自适应,并说明了USB设备在主机与虚拟机间的无缝切换方法,适用于嵌入式Linux学习者快速搭建开发环境。
2026-10-21 01:13:21
206
原创 基于Python开发串口调试工具
本文设计并实现了一款基于Python的串口调试助手小程序,支持指令配置、串口解锁与发送功能。通过JSON文件管理调试指令与加密策略,用户可灵活配置指令格式、参数及分类;集成AES、RSA等加密算法,实现安全的串口解锁流程;提供可视化发送台,自动组包并发送指令。程序可打包为独立exe,便于嵌入式开发中的快速部署与使用。
2026-10-15 00:23:22
180
原创 编程技巧(基于STM32)第五章 功能相似、模块不同的代码架构设计
本文提出一种基于结构体与函数指针的嵌入式通用设计方法,通过抽象功能相似模块的差异参数和操作,定义公共结构体及注册表,实现模块化管理。以多外设电源管理为例,构建包含状态机的统一控制框架,支持不同硬件参数配置与通用逻辑复用,提升代码可维护性与扩展性。该策略适用于多路按键、信号滤波等场景,体现面向对象思想在C语言中的高效应用。
2026-09-19 12:02:42
233
原创 基于Python开发数据文件绘图工具
本文介绍了一款基于 Python 开发的多格式数据绘图小程序,支持解析 CSV、MCAP、MAT、PARQUET 和 ULG 五种格式的数据文件。文章首先说明了小程序的三大功能设计:多格式数据文件解析、时间轴与信号列表配置、数据文件绘图;随后详细介绍了开发环境依赖、完整程序源码以及使用 PyInstaller 生成可执行程序的方法与注意事项。该小程序操作统一、支持自定义信号与二次开发,可有效降低工程师在多格式数据绘图场景下的工具使用成本。
2026-08-29 16:56:26
290
原创 模拟信号链电路——单稳态触发电路
本文系统讲解单稳态触发器的基本概念,重点对比三种典型实现方案——双通道不可重复触发集成芯片、双通道可重复触发集成芯片(MC14528B)以及基于LM311电压比较器的分离搭建方案,涵盖电路原理、暂态脉宽设定与级联延时技巧。适合电子工程师、硬件爱好者及学习数字电路与脉冲整形技术的读者阅读。
2026-08-29 15:03:47
390
原创 基于Python开发数据类型转换工具
在嵌入式岗位的工作中,经常会涉及到数据类型转换,虽然网络上有网页端的数据类型转换工具,但部分企业可能会禁止登录外网,网络的现有资源可能无法使用。对此,可以设计程序实现离线的数据类型转换,这样,在涉及到数据类型转换的计算时,在本地即可使用数据类型转换的功能。
2026-08-23 11:41:05
173
原创 基于Python开发临界二阶阻尼传递函数模型仿真工具
本文介绍了一个基于临界阻尼二阶系统的信号平滑处理小程序。该程序支持导入CSV数据,通过配置不同自然频率和采样周期参数,对输入信号进行临界阻尼二阶系统处理,并绘制原始信号与处理后信号的对比曲线。程序采用Python开发,使用tkinter构建GUI界面,matplotlib实现绘图功能,可打包成独立可执行文件。主要功能包括CSV数据导入、参数配置、多组参数对比仿真等,适用于对突变信号进行平滑处理的场景。文章详细说明了程序的设计原理、功能模块、开发环境和源码结构,并提供了使用说明和注意事项。
2026-08-16 23:15:59
179
原创 基于Python开发fhan仿真工具
本文介绍了一个基于Python开发的FHAN仿真工具小程序,主要用于实现非线性跟踪微分器的信号处理和分析。程序功能包括:1) 支持导入CSV数据并自动计算微分信号;2) 提供FHAN参数配置界面,可设置快速因子r、控制步长h等参数;3) 实现多组参数对比仿真,同轴展示原始信号与处理结果。开发采用Tkinter构建GUI界面,集成Matplotlib绘图功能,支持打包为独立可执行文件。该工具适用于控制算法研究,可直观观察不同参数下跟踪微分器的性能表现。注意事项包括仿真时间范围不宜过长,当前版本暂不支持图像保存
2026-08-16 11:41:59
170
原创 基于Python开发手柄信号模拟工具
本文摘要: 设计了一个多轴虚拟手柄模拟器小程序,用于嵌入式开发调试。主要功能包括:1) 支持8轴控制信号模拟,可配置灵敏度、噪声和边界值;2) 协议编辑器支持固定常量、轴信号和CRC校验字段的灵活配置;3) 提供串口、CAN、USB等多种通信接口支持;4) 具备数据帧收发功能和完整日志记录。程序基于Python开发,使用tkinter构建GUI界面,可打包为独立可执行文件。特色功能包括长按持续控制、协议模板管理、相对/绝对位移模式切换等,有效解决了嵌入式开发中缺少物理控制设备的调试难题。
2026-08-16 01:39:24
382
原创 基于Python开发自定义协议编辑&发送工具
本文介绍了一款基于Python开发的综合协议工具,主要用于自定义协议帧格式的编辑、解析和通信调试。该工具包含三大功能模块: 协议模板编辑器:支持自定义协议帧格式设计,可定义字段类型(普通/枚举/CRC)、长度、大小端等属性,并保存为模板。 常用报文库:基于模板配置常用报文,支持分类管理和快速检索,避免重复生成报文。 总线发送控制台:集成串口(TTL/RS232)、CAN、USB-CDC和USB-HID通信接口,支持手动/周期发送报文,自动处理数据链路层协议封装。 工具采用tkinter图形界面,通过PyIn
2026-08-09 00:57:42
249
原创 编程技巧(基于STM32)第四章 数据收发策略
本文介绍了单片机处理数据的几种方案及其优缺点。首先分析CPU直接处理数据的局限性,指出其会抢占其他运算任务的算力;然后重点探讨DMA+缓冲区的方案,包括单缓冲区和双缓冲区的实现方式:单缓冲区存在数据覆盖风险和强制等待问题,而双缓冲区通过交替读写隔离操作,能有效减少冲突。文章还详细说明了双缓冲区的具体实现策略,包括中断处理和丢帧应对方案。最后提及在RTOS中应用DMA缓冲区的可能性,并列出了常见外设(ADC/USART/I2C/SPI)的数据处理实验方向。这些方案在保证处理效率的同时,兼顾了数据安全性和CPU
2026-08-02 23:42:13
250
原创 模拟信号链电路——基于TL431的电压基准电路
本文介绍了TL431基准电压源芯片的工作原理和应用电路。TL431通过内部比较器和三极管构成闭环控制,使输出电压稳定在2.5V基准值附近。文章详细讲解了2.5V和5V基准电压电路的设计方法,包括提高输出电流的达林顿管扩展方案,以及通过电阻分压实现2.5V以上电压输出的技术要点。此外,还介绍了TL431在延时启动电路中的应用,通过RC充电实现延时控制功能。最后指出TL431无法输出低于2.5V电压的局限性,并提出可采用分立元件搭建更低电压基准电路的解决方案。全文系统地阐述了TL431的特性参数、典型电路设计和
2026-08-02 16:31:43
477
原创 通信与接口电路——串口通信的硬件电路
本文摘要: 文章系统介绍了串口通信技术,重点对比了UART、RS232和RS485三种标准。UART存在电平不统一、抗干扰差和传输距离短的问题;RS232通过±3~15V电平提高了抗干扰性,但仍有速度低、距离有限等缺陷;RS485采用差分信号,支持多节点组网,具备抗干扰强、传输距离远(1500m)和高速率(10Mbps)等优势。文中还以SIT3232E和SIT3485E为例,详细说明了RS232/RS485收发器的电路设计要点,包括电平转换、ESD防护及自动仲裁机制。最终指出实际应用中需根据场景选择合适标准
2026-08-02 13:56:16
373
原创 EtherCAT协议介绍
EtherCAT(以太网控制自动化技术)是一种高性能工业以太网协议,由德国倍福公司于2003年推出,具有纳秒级实时性、90%以上带宽利用率及灵活拓扑结构。其核心技术包括“在运行中处理”机制(数据帧实时提取/插入)、分布式时钟(同步精度<1μs)及精简协议栈(仅物理层、数据链路层和应用层)。EtherCAT支持线型/树型/星型拓扑,主站通过标准以太网控制器实现,从站需专用ESC芯片(如LAN9252)处理硬件级数据交换。协议帧采用标准以太网格式,支持位置/节点/全局逻辑三种寻址方式,通过工作计数
2026-08-01 00:11:02
993
原创 模拟信号链电路——感应触摸电路
本文对比分析了两种触摸延时电路方案。传统分立器件方案通过三极管、晶闸管等元件实现单点触摸控制,电路复杂且仅适用于单点场景。专业芯片方案(如MTCH1010电容式触摸控制器)集成度高,通过检测电容变化实现触摸控制,支持多点扩展且电路简洁。分立方案需手动触摸触发电荷泄放与充电过程控制灯光,而芯片方案直接输出电平信号驱动LED,响应更高效。后者在多点控制需求中优势明显,体现了集成电路在触摸控制领域的优越性。
2026-07-28 23:35:17
205
原创 能源与电源管理电路——电源切换电路
本文介绍了四种电源切换电路设计方案,用于实现USB和电池双电源的无缝切换。首先分析双二极管电路,结构简单但存在导通压降;其次改进为二极管与MOS管组合方案,降低电池侧损耗;进一步优化为双MOS管电路,显著减少整体功耗;最后推荐专用电源控制芯片LTC4415方案,集成理想二极管功能并提供多重保护。四种方案各具特点,其中LTC4415以其50mΩ导通电阻、可调电流限值和温度保护等功能,成为高效可靠的优选方案,特别适用于对功耗敏感的便携式设备。设计时需根据具体应用场景权衡复杂度与性能需求。
2026-07-27 23:54:10
386
原创 能源与电源管理电路——过压保护电路
本文介绍了过压保护电路的背景及三种常见实现方案。过压指电路电压异常(如静电、浪涌或电源故障)导致器件损坏或系统误动作。双PNP三极管方案适用于小功率直流电路,通过齐纳二极管和三极管组合实现电压阈值保护;LM393延时继电器方案用于大功率直流电路,采用比较器和晶闸管实现锁定式保护;TVS管方案专门针对瞬时过压(静电/浪涌),通过快速钳位电压保护后级电路。三种方案分别针对不同功率等级和过压类型,为电路设计提供多维度保护策略。
2026-07-27 23:53:12
906
原创 功率与驱动电路——MOS管驱动电路
本文介绍了MOSFET驱动电路的设计与应用。首先分析了单片机直接驱动MOSFET的局限性,指出高功率MOS管通常需要10V以上栅源电压,而单片机I/O无法直接输出,因此需要专门驱动电路。文章详细阐述了五种常见驱动电路:三极管低边推挽驱动、集成低边驱动(如UCC27324DR)、集成高边驱动(如FAN73711MX)、半桥驱动(如IR2104)和全桥驱动(如HIP4082IBZT)。重点说明了各类电路的拓扑结构、工作原理及特点,特别是半桥和全桥驱动中的死区时间控制等关键技术。这些驱动方案为不同功率和应用场景下
2026-07-26 15:15:43
347
原创 能源与电源管理电路——防倒灌电路
本文摘要:电流倒灌是电子系统中常见问题,指电流从负载反向流入电源或次级电路反向流回初级电路的现象。其危害包括MOS管烧毁、电容击穿、芯片闩锁效应等。倒灌发生条件是输出端电压高于输入端且有反向导通路径,常发生在电源断电、多电源时序紊乱等情形。文章介绍了三种防倒灌电路:1)防反接二极管方案简单但压降大易发热;2)MOS管方案性价比高但电路较复杂;3)理想二极管(如LM66100)保护全面但成本较高。最后讨论了多电源系统防倒灌设计,通过电源优先级控制和电路隔离防止电源间互充。这些方案能有效阻断倒灌回路,保障系统安
2026-07-26 00:38:01
634
原创 基于Python开发CRC校验码计算工具
本文介绍了一个自定义CRC校验码计算小程序的开发过程,主要功能包括:1)支持自定义CRC参数模型,解决不同企业可能使用不同校验模型的问题;2)提供两种计算模式(手动输入和二进制文件校验);3)可保存自定义模型配置。程序基于Python开发,使用tkinter实现图形界面,包含参数设置区、计算进度条和结果展示区,支持16/32位等多种CRC算法。开发中采用pyinstaller打包成exe文件,程序自动在运行目录下生成crc_models.json配置文件存储用户自定义模型。该工具为嵌入式工程师提供了便捷的C
2026-07-25 16:33:43
232
原创 基于Python开发自定义协议编辑工具
本文介绍了一款自定义私有协议帧编辑工具的设计与实现。该工具主要功能包括:1. 协议模板管理(新建/保存/载入/删除);2. 协议字段编辑(支持普通/枚举/CRC三种字段类型,其中普通字段分为定长/绑定不定长/自由段三种模式);3. 协议帧生成(根据字段定义自动生成十六进制数据流,含CRC自动计算);4. 协议帧解析(将十六进制数据流按字段定义解析)。程序采用Python+Tkinter开发,通过pyinstaller打包成独立可执行文件,配置文件采用JSON格式存储协议模板。该工具可有效解决私有协议开发中格
2026-07-25 14:20:33
767
原创 基于Python开发简易SSH快捷终端工具
该程序是一个基于Python Tkinter和Paramiko库开发的简易SSH终端工具,主要功能包括: SSH连接管理:支持添加/删除设备配置(IP、端口、用户名、密码),可快速建立SSH连接并显示实时终端输出 命令管理:提供自定义命令库功能,可保存常用命令并一键发送 界面特点:采用多线程设计防止界面卡顿,包含设备下拉选择框、命令输入框和带滚动条的终端输出窗口 数据持久化:所有配置(设备和命令)自动保存为JSON文件 程序结构清晰,包含配置读写、SSH连接线程和GUI界面三大模块,适合作为基础SSH管理工
2026-07-23 01:34:43
597
原创 能源与电源管理电路——负压产生电路
本文介绍了负电压的概念及其典型应用场景(如运算放大器、通信系统、音频设备等),并详细分析了两类经典负压产生电路的工作原理。负压电荷泵通过电容充放电交替切换实现负压输出,适用于小电流场合;反极性Buck-Boost电路则通过控制开关管通断改变电感电流路径,实现负压持续输出。两种电路各有特点,电荷泵结构简单但输出电流小,Buck-Boost电路效率高且适用于较大功率场景。文章还讨论了实际应用中二极管压降、储能元件选择等工程考虑因素。
2026-07-23 01:22:39
263
原创 模拟信号链电路——直流采样电路
本文介绍了直流采样电路的实现方案,重点分析了四种典型电路:1. 低边电流采样电路:通过在负载和GND之间串联检流电阻,配合同相比例放大器实现电流检测,但存在地电平干扰问题;2. 高边电流采样电路:采用AD8418专用电流检测放大器,具有20V/V固定增益、±0.2%高精度和70V共模抑制能力,适用于高压系统;3. 集成数字功率计INA229:通过SPI接口直接输出电流、电压等参数,大幅简化电路设计;4. 霍尔传感器方案:如ACS758LCB-050B实现非接触式电流检测。文章详细阐述了各方案的电路结构、工作
2026-07-22 01:39:13
630
原创 Modbus协议介绍
Modbus协议是一种广泛应用的工业通信协议,具有开放、简单、跨硬件平台等特点。协议采用主从通信模型,定义了四种存储区(线圈、离散输入、输入寄存器、保持寄存器)和八种常用功能码(读写操作)。Modbus协议主要分为RTU(二进制串行)、ASCII(字符型串行)和TCP(以太网)三种子类,其中RTU最常用。RTU协议通过从机地址、功能码、数据段和CRC校验码组成数据帧,支持单/多寄存器读写操作,并具有异常应答机制。ASCII协议采用ASCII编码和LRC校验,TCP协议则基于TCP/IP传输并增加了MBAP报
2026-07-18 22:50:36
249
原创 能源与电源管理电路——软启动电路
软启动电路用于抑制电源上电时的浪涌电流和电压突变。其核心原理是通过MOS管或NTC热敏电阻等元件实现渐进式导通:MOS管方案利用RC延时电路控制栅极电压缓慢上升,使导通电阻逐渐减小;NTC方案则利用其负温度特性,冷态高阻限制浪涌,热态低阻降低损耗。优化设计包括加入稳压管保护MOS管栅极,或采用继电器在启动后短路限流电阻。LT4363等专用芯片整合了智能控制功能,可精确调节启动斜率。关键参数(如RC时间常数、MOS管开启电压)需匹配系统需求,过长的缓启动时间可能导致元件过热损坏。
2026-07-18 14:00:58
593
原创 J-Link+Ozone调试教程
本文详细介绍了使用Ozone调试STM32的完整流程。首先说明调试前准备工作,包括Keil工程设置(优化等级设为0)、J-Link连接等;然后分步讲解Ozone工程的创建方法,包括设备型号选择、接口配置和三种调试启动模式;重点阐述了Ozone的调试功能:1)完善的断点系统(源码/数据/异常/任务断点);2)实时变量波形绘图;3)各类调试窗口(调用栈、寄存器、内存等);4)程序运行控制按键功能。全文通过具体操作步骤和参数说明,为嵌入式开发者提供了实用的Ozone调试指南。
2026-07-12 23:17:53
716
原创 USB协议介绍及使用(基于STM32)
USB协议是一种主从架构的通用串行总线标准,采用差分信号传输(D+/D-),支持低速、全速和高速三种模式。硬件上通过上下拉电阻区分设备类型,采用曼彻斯特编码实现自同步。数据帧包含SOP、DATA和EOP三部分,通过PID标识包类型(令牌、数据、握手等)。USB设备通过端点(0~15)与主机通信,支持控制、中断、批量、同步四种传输类型。主机通过设备描述符识别和配置设备。STM32内置USB从控制器,支持全速通信,通过专用缓冲区实现数据传输,硬件自动处理协议细节,简化软件设计。
2026-07-12 16:12:18
530
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅