Categories

阿刁的摸索

STM32串口接收溢出处理问题
STM32串口接收溢出处理问题 读取GNSS接收机串口数据的时候发现, 我只需要接收时间,所以只需要接收NMEA数据的前40个字节即可定位时间, 于是我用 HAL_UART_Receive(&huart2, (uint8_t*)nmea_buffer, 40, 40); 但是接收了几个回合后发现,其
2024-10-19
|
35
|
0
|
0
Ring buffer (环形数据采集区)
Ring buffer (环形数据采集区) 为了解决写SD过慢,从而采集数据不够快的问题 Ring buffer的定义,方法声明(放在头文件中) /* ------------- ring buffer ---------------- */ #define BUFFER_SIZE 32768 //
2024-09-06
|
26
|
0
|
0
有关IMU数据采集完成中断信号 DATARDY 信号有干扰(波动),导致 STM32外部中断接收多次触发的问题
有关IMU数据采集完成中断信号 DATARDY 信号有干扰(波动),导致 STM32外部中断接收多次触发的问题 之前通过示波器抓取过DATARDY的信号质量,发现当读取IMU数据的时候DATARDY信号会有相当的波动 可能跟我把DATARDY配置为推挽输出,高电平有效有关,这导致了输出电压变化; P
2024-08-07
|
61
|
0
|
0
有关外部中断的tips
当使用stm32 EXTI外部中断进行中断操作时要注意 外部中断信号(产生者一般为某些特定传感器芯片)一般配置为脉冲信号,推挽输出,高电平有效——有助于降低产生中断信号的噪声 stm32 中断引脚GPIO配置为 上升沿有效,拉低电平——不能配置为拉高电平,当外部芯片没有产生中断信号时,通常为低电平,
2024-08-06
|
33
|
0
|
0
将任意位数(小于32位)转换成有符号32位整数
前情题要 这几天在做使用FIFO读取IMU的20bit高精度acc与gyro数据的时候发现,有一个符号转换的问题; 之前没发现有这个问题是因为,之前读取的数据都为16bit,正好能够填充到int16_t数据类型中,不需要符号位的转换。 需要了解的内容 无符号数与有符号数,正数与负数的表示
2024-08-02
|
26
|
0
|
0
使用CubeIDE 配置SD卡+FATS文件系统总结
前情提要 因为要使用IMU采集惯性数据,然后导入PC端中进行机械编排推导,先前使用ROCK5A的板子发现SPI不奏效(可能因为不够了解),索性使用STM32来采集数据,在这之中需到了许多麻烦,这里就简要总结一下。 配置过程 使能SDIO Mode选择4bits wide bus 在下面的参数部
2024-07-23
|
33
|
0
|
0
ICM42688 SPI读取异常 故障排查
问题导论 自从两个月前买到手ICM42688这款来自TDK的IMU后,就一直有数据读取偶尔异常的问题。 排查步骤1: CSDN看到评论说是SPI极性问题,于是把SPI模式调整为模式3,再重新读写后发现,并不奏效。 链接:https://blog.csdn.net/NoDistanceY/articl
2024-07-23
|
88
|
0
|
0
STM32F407系列使用FPU运算单精度浮点数
开发环境 Stm32f407zgt6 CubeIDE 如何配置 在默认情况下,FPU一般为开启的, 在cubeide中可以在项目属性Properties -> C/C++ Bulid -> Tool Settings -> MCU/MPU Setiing 中看到 Floating-point-uni
2024-07-15
|
58
|
0
|
0
STM32F407系列使用FPU运算单精度浮点数
STM32CubeIDE通用步骤
ST公司推出的针对于STM32系列单片机的图形化编程工具CubeIDE,这里以STM32F407为例,记录经常使用的操作。 必备操作 配置外部时钟 配置SW调试串口
2024-07-05
|
39
|
0
|
0