- 博客(15)
- 收藏
- 关注
原创 【日志 2025.10.23】【定时器toggle模式、多通道独立调频】
使用定时器输出比较toggle翻转模式,在计数值=比较值时进行io口电瓶翻转,并进入 HAL_TIM_OC_DelayElapsedCallback 中断,进行比较值重新设置。注:hal 库中断回调函数执行前,就已经将中断标志位进行清除,回调函数内部无法通过读取标志位判断是哪个通道触发中断,可以通过 Channel 来获取当前活动的通道。当前处于高/低电平,下一次的延时值为多少,加上延时的比较值是否溢出(若重装值为最大值,可忽略溢出判断)。在中断中进行数据处理,需要软件进行状态判断与维护。
2025-10-23 16:40:02
422
原创 【日志 2025.10.17】【tinyUSB 代码架构】
各层间的连接通过若定义函数,或函数声明,使用固定的函数名做接口,直接调用。hw,src为现成的,一般无需大改;我们只需要了解USB的描述符工作原理,实现顶层应用即可。TinyUSB 大致分为三层。
2025-10-17 15:44:40
174
原创 【日志 2025.10.11】【Lora,LLCC68,SX1261】
Lora 芯片使用 Lora 调制,外加内置数据包解析,形成可靠的通信链路。相比于常见的 2.4G、蓝牙、WiFi、蜂窝网络等无线连接,lora 主打低功耗+远距离,适合低速大范围传输。使用 DX-LR20 模块,内部芯片型号为 LLCC68,市面上还有 SX1261 的模组,两者兼容,程序基本通用。与 NRF24L01 2.4G 模块不同的是,Lora 芯片没有内置收发地址,只要射频、数据包格式配置相同即可通信。| 蓝牙/BLE | 10-100m | 低 | 1-2Mbps | 数天-数月 |
2025-10-11 21:15:27
744
原创 【日志 2025.09.25】【CAN总线入门】
通道,3个邮箱串联构成一个FIFO,有2个FIFO。输入数据首先与过滤器中的规则进行比对,符合要求的数据根据配置进入某个FIFO中。用户无权访问FIFO内部的邮箱,仅能读取FIFO输出口的数据。CAN和SPI,IIC一样,只不过是一种通信协议,只不过这种协议格式更复杂,而且是一种多主机通信总线。通道,有3个并列的邮箱,用户均可写入发送数据,硬件会进行优先级判断逐个发出。在can的设计中,使用了 邮箱这一概念,即收发缓冲区,但这个缓冲区是硬件层的,由硬件自动控制。基于stm32f103c8t6。
2025-09-25 21:14:23
1030
原创 【日志 2025.09.24】【KEIL编译代码存储空间分析输出脚本】
从 .map 文件末尾的 数据段占用空间表读取数据,使用python脚本分析并输出rom、ram使用情况。ELF Image Totals:可执行链接格式映像文件大小。code:代码段,包含(inc. data)(inc. data) :内联数据,如字符串。ROM Totals:烧录到flash总计。Debug:调试数据,不烧入芯片。Grand Totals:总计。ZI:程序中未初始化的变量。
2025-09-24 12:37:34
263
原创 【日志 2025.09.23】【KEIL_MDK 开发 RP2040】
唯一的缺点是开发不便捷,最初推出的开发框架有c/c++和micropython,c的开发基于cmake,需要自己搭建开发环境、编译调试工具链,两年前试过但放弃了。由于 rp2040 的库文件交织引用复杂,所以我们不手动添加源文件和.h路径,直接勾选软件包中的组件。最近再次查找相关信息,发现keil官网支持了RP2040的芯片包,赶紧试了一下。进入官网,下载芯片包和示例工程,安装芯片包,打开工程,开袋即食。双 ARM Cortex-M0+ @ 133MHz。价格在2.5~5人民币。
2025-09-23 22:42:32
409
原创 【日志 2025.09.22】【keil编译.lib】
keil 的编译框架在修改include路径后,会进行重编译,保证项目正确构建,但对于包含大量第三方库的项目,重编译会消耗大量时间。需要注意的是,第三方库一般都包含进行配置的.h文件,通过宏定义控制预编译进行裁剪或定制,进行lib打包后,再修改配置文件是不起作用的。针对不再进行改变的代码,我们可以将其打包为.lib文件,因为其本身就是编译后的代码,不会参与重编译过程,仅进行链接过程,节省时间。.lib的适用范围和编译器、芯片包相关,需要确保使用.lib文件的项目与它使用相同的编译器、内核。
2025-09-22 22:21:25
331
原创 【日志 2025.09.15】【ARM DSP】
DSP 库为嵌入式提供了优化的数学计算API,包括 常用统计学函数、三角函数、pid控制、矩阵运算等。同一功能函数会分为 f16,f32,q16,q32等多种数据支持。也可以通过软件组件添加dsp库。`ARM DSP 初探。
2025-09-15 22:10:52
160
原创 【日志 2025.09.13】【bootloader、app】
畅想一种外部flash存储app,通过bootloader选择加载到内部flash进行运行。需要制定数据存储规范、通信协议等。
2025-09-13 22:26:39
136
原创 【日志 2025.09.12】【四元数、旋转矩阵】
float w;float x;float y;float z;} quat_t;float roll;float yaw;
2025-09-12 23:41:04
375
原创 【日志 2025.09.11】【6轴传感器姿态解算】
本文主要介绍了MPU6050传感器数据处理的实现过程,重点探讨了Mahony姿态解算算法的原理与应用。
2025-09-11 22:05:34
625
原创 【日志 2025.09.10】【编码器数据融合】
根据电机参数计算相关参数电机:每转脉冲数 n,正常转速r_typical,最大转速 r_max,脉冲/秒 0 ~ n * r_typical ~ n * r_max频率测量周期参考:1/(n * r_typical) * (5~20)周期测量单位参考:1/(n * r_max) / 10。
2025-09-10 22:30:41
490
原创 MATLAB 移动端传感器数据采集 与 PC端.csv文件导入
本文介绍了通过MATLAB Mobile应用采集手机传感器数据并传输至PC端进行本地分析的方法。首先在移动端安装应用,配置传感器采样率(最高100Hz),采集加速度计等数据并导出为压缩包。然后将数据传输至PC,解压为CSV文件后,使用MATLAB的readmatrix函数导入数据进行分析。该方法避免了云端分析的网络限制,为离线环境提供稳定可靠的数据处理方案,适用于各类手机传感器实验和研究。
2025-09-09 22:19:48
1527
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅