基于 artpi2实现语音对话小工具

使用板载的mems 麦克获取语音采集,提供网络,链接大模型,实现问问题,返回结果通过喇叭播放

基于 artpi2实现语音对话小工具封面
jf_628018542026-09-13 22:17:28Public Domain
0
Star

PCBA

设计文件

KiCad图标uiandaudio.zip164.75KB(0次下载)

EDA查看器

复制嵌入代码

详细介绍

概论

artpi2 性能强,有很好ui图像性能,且板载有wifi模块。

主控芯片:ST 的 STM32H7R7L8H,Cortex-M7 内核,主频最高 600 MHz,内置 NeoChrom 2.5D GPU。

存储配置:板载 32MB HyperRAM​ 和 64MB HyperFlash.

无线连接:集成 WiFi 4 和蓝牙 5.1(CYWL6208 模组).

接口扩展:40 引脚(兼容树莓派)、28 引脚排针、2 个 Qwiic、RGB888 屏幕接口、双 Type-C 接口。

图形能力强:NeoChrom GPU 可轻松实现 60fps 的炫酷 GUI 显示效果,且占用较低的 CPU 资源。

计划实现的功能通过wifi链接大模型。把mic采集语音数据,传递给大模型,把大模型返回的数据显示到ui上去。

原理图介绍

把板子的双排母座针引脚导出,如下。

实现上,使用芯片的sai1 和sai2,sai1链接mic,用于采集语音识别。sai2链接功放芯片,用于链接喇叭,实现语音输出,结果同时显示到ui上。

artpi2的rgb888引脚,转接到一块rgb888引脚,导出独立的触摸引脚。增加一个背景灯的控制跳线。

下面是 mems mic(SPH0645LM4H-1-8)的接线,输出标准 I²S 音频流,。

连接功放芯片,sdmod和gain引脚增加后续的继续配置。SD_MODE(TQFN 脚 4),全称:Shutdown + Channel Select。

SD_MODE 电压

行为

< 0.16 V(通常直接接 GND)

关机(shutdown),输出高阻

0.16 V ~ 0.77 V

(Left+Right)/2 单声道混音(最常见)

0.77 V ~ 1.4 V

右声道 Right

> 1.4 V

左声道 Left

最简做法:

  • 出声:SD_MODE 悬空 → 混音

  • 静音/省电:SD_MODE 接 GND

  • 固定左:SD_MODE 直接接 VDD(注意电源域)、

  • 固定右:VDD 经 ~210kΩ(3.3V 逻辑)上拉

GAIN / GAIN_SLOT(TQFN 脚 2),I²S 模式下它只管模拟增益,上电采样一次,播放中别切。

GAIN 接法

增益

悬空

9 dB(默认)

直接 GND

12 dB

GND 经 100kΩ

15 dB

直接 VDD

6 dB

VDD 经 100kΩ

3 dB

PCB介绍

pcb画图如下,芯片的拉线尽量短一点。

打板实物

暂无

总结

后面打板,购买物料,希望一把能做个demo出来。挺喜欢stm32h7系列芯片,性能强,外设多,可以做很多东西。rtt的后起之秀,系统设计的很类似Linux,学习起来也是很多触类旁通,会继续学习使用rtt,争取早期熟练使用开发。