声音可视化是通过抽象的动态视觉效果来调动观者的多重感官,并通过声音的辅助使得所传递出的信息更加立体。开发者 90houyidai将音乐变化产生的不同频谱显示到RVB2601的OLED显示器上,实现了音乐可视化。
关于音乐频谱的实现过程,请见本文详细介绍。
01 项目背景
RVB2601采用平头哥低功耗,32位RISC-V玄铁E906处理器,搭载AliOS 物联网操作系统。RVB2601开发板板载JTAG 调试器,WiFi&BLE 芯片W800,音频ADC-ES7210,音频DAC-ES8156,128x64 OLED 屏幕,RGB 三色指示灯,用户按键,及兼容Arduino 的扩展接口。可应用于智慧家居、影音播控、电子玩具、环境监测、健康医疗、教育学习等领域。
02 作品简介
本设计由RISC-V单片机CH2601、硅麦、音频ADC-ES7210、128x64 OLED 屏幕组成。通过板载硅麦拾取音乐音频,对音频信号进行FFT变换,对音频信号进行量化处理,然后将随音乐变化产生的不同频谱显示到OLED显示器上。
03 系统框图
3.1 电源
第一路从USB处获取电源,经DCDC转换成3.3V提供给CH2601和OLED屏幕;
第二路从USB处获取电源经BOOST电路转换为13V供OLED背光电路使用;
第三路将DCDC转换之后的3.3V电压通过LDO降压至1.2V供CH2601使用;
3.2 调试电路
JTAG调试电路
串口调试电路
3.3 时钟和复位电路
3.4 屏幕接口电路
3.5 ADC-ES7210电路
3.6 硅麦电路
软件处理流程
本作品在官方GUI例程上移植完成,使用Lvgl的进度条控件完成频谱的显示,从CSI设备驱动中获取ADC采样数据,对采样的数据进行FFT变换后得到各频段幅值,然后分级量化显示到屏幕上
04 项目总结
感谢平头哥和EEworld提供这次体验risc-v单片机的机会,本次的主角CH2601确实比较适合IoT领域,配合aos能够事半功倍。只是CDK的编译速度和编译环境还需要更多的优化,对浮点运算的支持没有找到合适的介绍。
通过这次项目简单的入门了aos,同时对lvgl也有了进一步的了解,对于音频处理也多了一份理解。
审核编辑 :李倩
全部0条评论
快来发表一下你的评论吧 !