摘要: CMD文件是TI编译工具链中链接器的配置文件,它通过MEMORY块声明芯片各块RAM和Flash的物理地址与大小,通过SECTIONS块将编译器生成的各种段(代码、变量、常量、栈堆等)分配到指定内存,本质上是给链接器画一张"内存地图",决定程序每个部分在芯片上电后实际存放在哪里、从哪里取指和执行。 阅读全文
posted @ 2026-10-22 19:13 比特向阳 阅读(2) 评论(0) 推荐(0)
摘要: ePWM(增强型脉冲宽度调制)是 TI C2000 DSP 内部专用外设,专为电机驱动、开关电源等电力电子场景设计,硬件独立完成 PWM 生成、死区、故障保护,极少占用 CPU 资源。本文从底层原理与示例代码,详细讲述ePWM的使用方法。 阅读全文
posted @ 2026-10-22 19:11 比特向阳 阅读(23) 评论(0) 推荐(0)
摘要: 在我以往从事的项目中,一个系统可能有几十甚至几百个参数,为了便于系统调试,我制作一个可以适配多个项目、简单的、专注于数据写入和显示的上位机:Solar Debugger。 阅读全文
posted @ 2026-09-10 01:34 比特向阳 阅读(277) 评论(0) 推荐(2)
摘要: 在前两篇文章中,我们从底层电气信号、包/事务/传输模式,再到USB设备枚举完整流程、标准请求、全套描述符完成理论讲解。理论中主机发送SETUP请求、读取各类描述符、分配地址、激活配置,所有设备侧应答逻辑,在STM32的USB Device库中全部由软件代码实现。本篇以CDC虚拟串口为例,拆解STM32 USB设备库各源文件职责,把上一篇的枚举流程和C代码一一对应,理清「主机标准请求→库底层处理→应用层回调→返回描述符/应答」完整链路。 阅读全文
posted @ 2026-08-27 15:04 比特向阳 阅读(169) 评论(0) 推荐(1)
摘要: USB协议定义了一套标准化的设备描述符体系和主机标准请求指令,并通过固定的设备枚举流程,完成主机与设备的握手、信息交互、地址分配、功能配置。这是USB设备从“硬件接入”到“系统可用”的核心逻辑,也是USB即插即用特性的底层实现原理。 阅读全文
posted @ 2026-08-25 15:36 比特向阳 阅读(199) 评论(0) 推荐(3)
摘要: USB深度解析(一):低速、全速电气特性与通信协议 在当今的计算机外设接口中,USB(Universal Serial Bus)无疑占据着统治地位。虽然USB标准已经迭代到了高速的USB 3.x甚至USB4,但低速和全速模式作为USB架构的基石,定义了USB最初也是最底层的连接逻辑。高速的USB协议 阅读全文
posted @ 2026-08-24 23:17 比特向阳 阅读(324) 评论(1) 推荐(2)
摘要: C 语言指定初始化器实用详解 阅读全文
posted @ 2026-03-19 23:43 比特向阳 阅读(90) 评论(0) 推荐(0)
摘要: 良好的代码习惯和高效的类型定义在项目中扮演着至关重要的角色。typedef,它不仅是一个语法糖,更是提升代码质量和可维护性的利器。在这篇文章中,将为你介绍typedef 4 种应用方式。 阅读全文
posted @ 2026-03-04 23:04 比特向阳 阅读(158) 评论(0) 推荐(0)
摘要: 嵌入式系统开发中,如串口UART、蓝牙、轻量级网络等通信链路往往需要自定义封包协议来保证数据传输的准确性。本文分享一套**简洁、通用、易实现**的帧协议设计方案,适配多类嵌入式通信场景。 阅读全文
posted @ 2026-03-02 23:32 比特向阳 阅读(253) 评论(0) 推荐(0)
摘要: 层级 名称 职责说明 依赖关系 典型文件/模块 1 硬件抽象层 (HAL) 芯片寄存器操作,与硬件直接交互 无 stm32f1xx_hal_*.c, CMSIS 2 板级支持包 (BSP) 开发板硬件驱动,如LED、按键、UART配置 → HAL bsp_led.c, bsp_key.c, bsp_ 阅读全文
posted @ 2026-03-02 23:23 比特向阳 阅读(173) 评论(0) 推荐(0)