零知开源——ESP32语音交互系统(AI小智)开发教程

        此项目由 Lingzhi Lab 开源:https://www.lingzhilab.com

目录

一、功能介绍

二、扩展板设计

1. 硬件清单

2.关键引脚连接

3.原理图设计

4.PCB设计

5.扩展板实物图

三、软件配置 

 1、环境搭建

 2、 程序编译并上传

 3、天问Block代码编写和烧录

 四、固件烧录

 1、.bin文件合并生成烧录固件

2、flash_download_tool烧录工具

五、 功能展示

六、项目资源汇总


一、功能介绍

        小智AI聊天机器人是一个基于嵌入式硬件与人工智能技术深度融合的智能交互系统。该项目以ESP32开发板为核心,结合语音唤醒、自然语言处理、音频解码播放图形化交互界面四大核心模块,实现人机交互功能 

二、扩展板设计

(不需要硬件设计部分请跳过☞三、软件配置 ) 

1. 硬件清单

        主控单元:零知ESP32(双核处理器,支持Wi-Fi/BLE,丰富外设接口)

        语音输入:INMP441数字麦克风(I2S接口,高信噪比)

        音频输出:MAX9857A Class D功放(驱动4Ω喇叭,输出功率3W)

        交互界面:240x320 TFT_ST7789 LCD(SPI接口)

        唤醒控制:ASRPRO-01模块(关键词检测,GPIO触发)

2.关键引脚连接

模块零知ESP32引脚模块引脚
MAX9857AGPIO33DIN
GPIO14BCLK
GPIO27LRCK
INMP441GPIO32SD
GPIO26SCK
GPIO25WS
TFT_ST7789 LCDGPIO15SCL
GPIO4SDA
GPIO21DC
GPIO22CS
ASRPRO-01GPIO19PA2

3.原理图设计

(1) 关键模块原理图设计 

主控模块接线图
音频放大模块接线图
麦克风模块和LCD显示屏接线图

(2) 电源设计规范

模块供电电压
ESP325V→3.3V
ASRPRO-015V
LCD、MAX98357A、INMP4413.3V

 4.PCB设计

 将零知ESP32通过PCB布线连接到各个模块组成扩展板

5.扩展板实物图

三、软件配置 

 1、环境搭建

 使用VScode搭建ESP-IDF开发环境,具体操作可参考以下文章:VScode下玩转ESP32S3并成功编译XIAOZHI-ESP32-MAIN代码_xiaozhi-esp32 编译-优快云博客

VSCode + ESP-IDF 项目搭建及配置_vscode esp-idf-优快云博客

(1)导入github上项目源码并解压到自定义的目录下

ESP32驱动小智AI仓库源码https://github.com/78/xiaozhi-esp32
(2)VScode打开项目工程并配置编译信息

 配置Serial flasher config、Partition Table

配置开发板和LCD类型 

 
(3)根据之前的原理图设计配置config.h扩展板对应的引脚

2、 程序编译并上传

 idf.py fullclean        #将build目录删除,点击编译并上传代码

 3、天问Block代码编写和烧录

(1) 识别唤醒词通过PA2输出低脉冲驱动唤醒AI

(2)点击生成模型,选择端口并通过2M编译下载到ASRPRO

 四、固件烧录

 1、.bin文件合并生成烧录固件

 (1)打开PowerShell下的ESP-IDF 5.3,查看编译后build目录存放的路径并修改以下代码

E:\ProgramFiles\Espressif\xiaozhi-esp32-main-1 路径修改为你自己定义的

esptool.py --chip esp32 merge_bin -o E:\ProgramFiles\Espressif\xiaozhi-esp32-main-1\build\lzesp32_xiaozi.bin 0x1000 E:\ProgramFiles\Espressif\xiaozhi-esp32-main-1\build\bootloader\bootloader.bin 0x8000 E:\ProgramFiles\Espressif\xiaozhi-esp32-main-1\build\partition_table\partition-table.bin 0xd000 E:\ProgramFiles\Espressif\xiaozhi-esp32-main-1\build\ota_data_initial.bin 0x100000 E:\ProgramFiles\Espressif\xiaozhi-esp32-main-1\build\xiaozhi.bin

(2)通过PowerShell烧录生成的lzesp32_xiaozi.bin固件 

 选择端口和波特率编译相对路径下的固件

esptool.py --port COM13 --baud 921600 write_flash 0x0 E:\ProgramFiles\Espressif\xiaozhi-esp32-main-1\build\lzesp32_xiaozi.bin     

2、flash_download_tool烧录工具

(1) flash工具下载地址:

flash烧录工具https://dl.espressif.com/public/flash_download_tool.zip 

(2)选择输出的bin文件并确认起始地址为0x0

选择SPI的频率和模式,确定具体连接的串口号和上传的波特率,ERASE擦除芯片然后START开始上传。(可能出现上传错误,尝试修改波特率和端口号)

flash烧录详细教程https://ccnphfhqs21z.feishu.cn/wiki/Zpz4wXBtdimBrLk25WdcXzxcnNS

五、 功能展示

一个情绪给满的AI机器人

六、项目资源汇总

 6.1 烧录工具和固件
链接: https://pan.baidu.com/s/1D2pDvIOdCdcQsgoRbjnslg?pwd=bir5 提取码: bir5

 6.2天问及VScode ESP-IDF项目源码
链接: https://pan.baidu.com/s/1HcAsEeGyS_E63BeRO1huzg?pwd=8g5w 提取码: 8g5w 

✔(●'◡'●)

零知开源是一个真正属于国人自己的开源软硬件平台,在开发效率以及上手难度上超越了Arduino平台。
零知开源在软件方面提供了完整的学习教程和丰富示例代码,让不懂程序的工程师也能非常轻而易举的搭建电路来创作产品,测试产品。快来动手试试吧! 

https://www.lingzhilab.com/

### ESP32 开发教程与应用案例 #### 1. ESP-IDF 的基础介绍 ESP-IDF 是由 Espressif 提供的一个针对其芯片系列(如 ESP32ESP32-S 系列等)的开发框架,主要用于物联网设备的应用程序开发。该框架提供了丰富的 API 和组件库来简化硬件驱动和网络协议栈的操作[^1]。 对于初学者来说,可以参考《ESP32 AI 机器人入门教程》,这是一份从原理到实现的全面指南。此教程不仅涵盖了如何设置开发环境,还涉及云端部署以及实际项目的实施过程[^2]。 #### 2. 安装与配置 ESP-IDF 为了开始使用 ESP-IDF 进行开发开发者需先完成安装步骤: - **Windows 用户**: 使用乐鑫提供的集成安装包,其中包括了完整的工具链和支持文件。安装完毕后可通过启动菜单中的快捷方式访问预设好的命令提示符窗口。 - **Linux/Mac 用户**: 需要手动克隆 Git 仓库并执行 `install.sh` 脚本来获取必要的依赖项。之后利用 `export.sh` 设置好系统的路径变量即可正常工作。 #### 3. XIAO ESP32S3 上的小型机器学习 (TinyML) 实践 Seeed Studio 推出了关于 XIAO ESP32S3 平台上的 TinyML 解决方案——即低功耗环境下运行的人工智能模型训练与推理技术。具体实例展示了如何将 SenseCraft 模型助手应用于此类微控制器单元上,从而实现了语音识别等功能[^3]。 #### 4. ESP32CAM 物联网教学资源链接 如果目标是视觉处理方向,则可考虑采用带有摄像头模块的 ESP32CAM 设备作为实验平台。在其官网页面中,“快速体验”部分会引导至详尽的技术文档集合;而 “APP & SDK 下载” 则允许用户下载 Android 手机端配套软件用于调试目的[^4]。 ```python import esp_camera as cam def capture_image(): buffer = cam.init() # 初始化相机参数 img_data = cam.capture() return img_data ``` 以上代码片段演示了如何调用 ESP32CAM 的图像捕获功能。 --- ###
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值