自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 (MP3开发篇-3)实现歌词读取并且流畅播放高码率MP3

本文详细介绍了如何实现MP3播放器的歌词同步显示和高码率音频流畅播放功能。文章首先讲解了LRC歌词文件的解析方法,包括编码转换、时间戳提取和文本匹配等关键技术。针对高码率MP3播放,提出了解码方案优化、缓冲策略调整以及资源释放等解决方案。同时提供了完整的代码实现和测试方法,帮助开发者快速攻克这两大技术难点。文章还分享了歌词获取工具和后续优化方向,为开发者构建体验优秀的MP3播放器提供了实用指导。

2025-08-29 12:31:16 852

原创 (MP3开发篇-2)基于STM32F401的可显示OLED动画的MP3播放器

创作灵感#前面基于开发板做了一个STM32F103VET6的MP3播放器,但是开发板不方便就有做一个差不多的的更便携紧凑的MP3.然后就开始选型,基本需要显示中文+MP3软件解码需要大概250K左右的flash空间,fatfs的中文文件显示就占190K+。最终选到的是STM32F401RTC6,这个IC支持SDIO,支持I2S的DMA还有,I2C的DMA,基本就足够空间。此版本暂时只支持mp3的文件,192k和320K码率的基本没问题,有个别文件解码时会出现破音。

2025-08-26 19:53:32 672

原创 基于PY32F003的DMA多路ADC采集

PY32F003 是一款基于 ARM Cortex-M0 + 内核的微控制器,主频高达 48MHz,拥有丰富的外设资源:​12 位精度 ADC,支持多通道采集​1 个 DMA 控制器,支持多种外设数据传输​丰富的 GPIO 接口,可灵活配置为 ADC 输入引脚​。

2025-08-15 20:14:13 1381

原创 (MP3开发篇-1)基于 STM32F103VET6 的 MP3 软解在 PCM5102 模块播放实现方案

本方案基于 STM32F103VET6 实现了 MP3 软解播放功能,通过合理的软件架构设计和硬件资源利用,在中低端 MCU 上实现了接近专业级的音频播放效果。

2025-08-09 17:38:57 1488

原创 基于STM32F103ZET6移植OPUS语音算法

移植过程:参考这个几个帖子使用资源:至少要64K的RAM和200K作用MCU才能实现编解码。STM32F103的64KRAM+512K勉强能用,但实际还是很悬,建议上STM32F40X系列更好。OPUS编解码需要43K的RAM,编码会申请57.5%*43K的RAM解码会占用42.2%*43K的RAM.同时编解码时还会根据复杂度申请堆,经过验证复杂度越高需要的堆就越高,同时可变波特率占用堆空间比固定波特率的占用更高。0-1的复杂度下:(当复杂度高时,堆需要更大,运算量也更大,但是效果会更好。

2025-08-01 16:15:07 1452

原创 PY32F403开发学习问题记录2

Port.c会 重新调用system_ticks_handle的定时器,然后我在移植过程中,port.c的文件选错了,选了CM3的也就是m3内核的,但实际使用的是M4内核的芯片,在定时器映射的寄存器M3和M4 是有差异的,不能通用所以导致freeRtos的定时器一直没有正常运行时基,导致跳转到硬件错误那里。1、移植freertos,程序卡死在vTaskDelay()的位置。

2025-06-23 11:59:02 278

原创 PY32开发学习记录

PY32F403移植USB无论是模拟串口还是作为MSC的设备,在仿真能看见中断最后都是死在中断最后一行B的位置。原因:根本原因缺少中断的入口函数,触发了中断但没有任何操作导致卡死。使用启动文件不同,demo使用的仿真文件是PY官网下载的,而我之前使用是在pack里面的设备选择。USB_IRQHandler函数名称与启动文件中断入口名称没对上导致无法进入中断从而卡死。处理方法:1、不改启动文件,修改USB中断函数名称为USB_HP_CAN1_TX_IRQHandler。

2025-06-20 17:29:12 534

原创 基于PY32F403开发板学习(2-读写内部FLASH)

PY32F403的FLASH内部空间是384K,代码参考了STM32的代码(具体是哪位大哥的不记得),同时做小调整。flash内容暂时设定为380K-384K 的内存空间中。修改内存的参数方式就是先更新结构体。然后调用my_flash_write的接口函数即可。末尾有整个程序的下载链接。。。

2025-05-19 15:00:58 206

原创 使用systick进行软件消抖按键消抖

使用静态计数记录上一次的tick值,每次按键检测判断时进行处理具体看代码。正点原子按键历程使用了delay_ms()函数进行了按键消抖。没有按键按下也需要进行消抖判断,不然还是会有按键误判断的现象。正常复杂一点的应用是不允许使用阻塞性的延时进行消抖的。

2025-05-19 10:33:04 302

原创 基于PY32F403开发板学习(1-点亮LED灯)

新购入一块PY32F403开发板,资料比较少,记录一下开发过程,希望能给后面学习的同学一下经验,免踩坑。板子用料挺良心的,自带调试芯片,TF槽,和SPI-flash还有一个EEPROM,用料良心,就是资料比较少,不是很适合初学者。代码放在最后自己获取。遇到其他问题可以留言,如果我知道会尽量回复。

2025-05-17 18:59:04 493

原创 FATFS文件系统卡正常挂载文件,但fopen()函数打开卡死

结论:Fatfs需要比较大的栈空间,当栈单片机栈空间溢出时,单片机会跳到异常死循环,导致整个系统崩溃,解决方法:把栈空间由默认0400修改为1000的栈空间,就能正常读取。

2025-04-16 10:22:20 400

原创 记录一下单片机进行SPI+DMA传输时出现卡死在获取状态BUSY位置

检测中断发现,SPI和DMA的中断优先级都是1,然后按键优先级别是1和编码器按键优先级别是0。①百度问题现象,发现有的人遇到的问题是因为DMA缓存数组的存储的RAM位置异常会导致这个情况,然后就检测map表,同时进行调整空间大小无效。好吧,中断按键中加HAL_DELAY()也有这种情况,就是系统滴答定时器的中断优先级比中断按键低就会出现这个现象。②刚好今天添加的内容的中断按键触发,之前使用轮询按键控制界面完全是正常,突然不行,后面感觉问题应该出在中断上。使用的单片机是PY32F403的单片机。

2025-04-12 16:49:51 517

原创 STM32F103ZET6+SPI_W25Q16外部flash下载算法生成

下载算法的核心任务是借助调试工具( J-Link),把程序代码或者资源写入到外部 Flash 里。一般而言,该算法需要实现对外。

2025-03-31 09:56:43 346

原创 PY32使用HAL库开机flash烧写第一次成功第二次失败问题解决

*核心点是hal库调用这个全局变量的标志位使能后没有清除,每次进入检查标志位直接返回HAL_BUSY,手动处理清除一下标志然后就可以正常运行擦除函数。感觉应该这是这个库的BUG。

2025-01-15 18:58:29 499

原创 (arduino)基于ESP8266的4.2寸墨水屏显示

4.2寸墨水屏:某宝或者某鱼二手4.2墨水屏(带壳子)墨水屏驱动板:某宝主控IC:ESP8266

2024-12-21 01:56:25 1558

原创 STM32F103C8T6基于STMCubeMx的软件移植Fatfs问题记录

应该是第一挂载会让SPIfiash进行一次初始化,然后但是无法正常的挂载,在初始化后,再次挂载就可以了,函数第三参数改为0,延时挂载,是能使用的,必要离开挂载才不会有错。第一次会返回Error(3)=FR_NOT_READY;这个函数需要挂载需要挂载两次,二次才会返回FR_OK;

2024-12-04 18:12:05 265

原创 优雅的使用ESP8266基于Arduino编程,30行代码实现oled播放MP4片段!!!

把image.h文件和程序文件ino同一个文件夹目录下。

2024-11-25 21:01:09 508

原创 (python)一键生成ikun的oled的显示数组

最终生成出来的文件可以是数组形式的.h文件,也可以是bin文件,数组会根据图片把分成不同部分,需要显示成动图则可以在播放每一张图片的时候加上延时。对数组循环播放就可以显示这个效果了,博主用了市面标准的128*64的黑白oled,4线I2C先协议的,具体驱动请自行百度,正常的单片机和arduion都是随便搞定的。

2024-11-16 14:38:55 407

原创 python问题记录

cv2.bitwise_and这个函数 的前后两个图片合成时尺寸不一样导致。处理方法就是就把第二个图片的尺寸调整为第一尺寸大小。调用图片转换成卡通风格时出现这种报错;

2024-10-31 17:18:54 264 1

原创 基于STM32的光敏模块的LED闪烁检测

【代码】LED闪烁检测。

2024-07-24 18:36:31 344

空空如也

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

TA关注的人

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