描述
<h2>视频链接:</h2>
<p><a href="https://www.bilibili.com/video/BV1t6etzbEpw/?spm_id_from=333.1387.upload.video_card.click&vd_source=b0dbc8daf94b24137b2a669eaa03d248" target="_blank">B站视频--功能演示及介绍</a></p>
<h2>项目简介</h2>
<p>小智AI是一款融合了尖端人工智能技术的智能助手,致力于通过自然对话的方式,成为工作、学习和生活中无所不知、无所不能的得力伙伴。它不仅仅是一个问答工具,更是一个能理解、会思考的个性化智能中枢。</p>
<h2>项目功能</h2>
<p>基于SF32LB52蓝牙模组进行设计,可轻松实现AI实时语音对话。它能够听懂你的情绪,解答你的疑惑,也能分享你的快乐。</p>
<h2>项目参数</h2>
<p>小智AI便携、精致,其PCB尺寸仅为61.21 x 41mm。采用模组进行设计,外围元器件需求少,复刻成本较低,开源资料丰富。</p>
<ul>
<li>采用LC-OPEN-SF32LB52-MOD-N16R8模组,功耗低,资料开源;</li>
<li>选用 CR123A 电池,3.7v带USB充电;</li>
<li>GMI6050P 全指向驻积体咪头,价格实惠,性能优异;</li>
<li>音频功放选用 LM4871,是一款 3W、单声道 AB 类音频功率放大器;</li>
<li>屏幕显示使用的是 1.69寸TFT屏幕,SPI协议,ST7789驱动。</li>
</ul>
<h2>硬件说明</h2>
<p>主要由主控部分、电源部分、麦克风部分、音频功放部分、显示屏部分和串口下载部分等部分组成。其主要原理是先通过麦克风接收语音信号,再通过SF32LB52蓝牙模组进行处理,然后通过音频功放 LM4871进行功率放大,最后由喇叭进行实现语音播放。</p>
<h3>1. 主控部分</h3>
<div align="center">
<img src="https://image.lceda.cn/oshwhub/pullImage/621395fa5b8142ed81785649c516b292.png" alt="主控" width="400">
<p>图1--主控</p>
</div>
<p>主控选用 <a href="https://item.szlcsc.com/45024582.html" target="_blank">立创·开源SF32LB52模组</a>,一款蓝牙低功耗芯片,大小核分工,性能功耗双赢,频率 240MHz,存储配置拉满,扩展无忧,集成 8MB PSRAM 和 16MB Flash,支持锂电池直接供电。双模蓝牙5.3、功耗低还信号好,BLE 连接功耗(1S间隔)仅需 7μA,BT连接功耗(1S间隔)仅需 10μA,BLE + BT 双连接功耗比同行单BT连接功耗还能降低 60%,接口丰富,支持超多外设,SPI/QSPI/8080全接口支持,UART、USB2.0、I2C、PWM、I2S、SPI、PDM等接口一应俱全,AES/HASH/CRC加密加速,TRNG真随机数生成,无论是代码还是数据都安全无忧,内置codec,信噪比109dB,高保真音乐、降噪通话一步到位。</p>
<p>模组支持 BT PAN 功能可以直接连接手机上网,相比 WIFI 功耗更低,更加适合电池场景,带屏连接功耗仅 30mA。</p>
<p>在本项目中,直接让电池电源直连模组的电源输入引脚 VSYS。需要注意该模组电压范围要求 3.7V~4.7V。<strong>3.3V 和 5V 供电都不行。</strong></p>
<p>模组的 VDD33_VOUT2 是由软件控制输出的,需要芯片正常启动后才有输出3V3。</p>
<h3>2. 电源部分</h3>
<table align="center">
<tr>
<td align="center">
<img src="https://image.lceda.cn/oshwhub/pullImage/d57c522404644fed9a80cbe9388cd76a.png" alt="d57c522404644fed9a80cbe9388cd76a.png">
<br>
图2--电源
</td>
<td style="width:20px;"></td>
<td align="center">
<img src="https://image.lceda.cn/oshwhub/pullImage/520bba647acc4f6286d407f10ada5e48.png" style="height:240px;" alt="520bba647acc4f6286d407f10ada5e48.png">
<br>
图3--电池实物图
</td>
</tr>
</table>
<p>电源选用 CR123A 电池进行供电。</p>
<p>电池参数:</p>
<ul>
<li>型号: CR123A</li>
<li>电压: 3.7V</li>
<li>尺寸: 34(L) x 16.5(W) mm</li>
<li>其他: 带 TYPE-C接口,可以直接充电</li>
</ul>
<h3>3. 麦克风部分</h3>
<div align="center">
<img src="https://image.lceda.cn/oshwhub/pullImage/5becef5eb6354292b65340eea0df5edc.png" alt="麦克风" width="400">
<p>图4--麦克风</p>
</div>
<p>麦克风咪头(通常为驻极体话筒)的核心是一个可振动的极板(振膜)与固定背极板组成的电容。</p>
<p>当声音振动波作用在振膜上时,会导致其与背极板的距离动态变化,从而改变电容值。当有声音时,器件内部电容发生变化,这一变化会引发电容两端的电荷移动,产生微弱的交流电信号(模拟信号)。</p>
<p>但是虽然麦克风内部的驻极体材料自带永久电荷(无需外部供电维持电场),即使没有电源输入,麦克风也能够使用,但是为了确保麦克风能够正常稳定的工作,通常是需要提供一个基准电压(通常2~5V),使内部电容处于预充电状态,确保声音引起的电容变化能转换为有效电流信号。</p>
<p>在原理图中,R1 电阻的作用就是给麦克风的正极输入一个基准电压MIC_BIAS,这个电压是由模组控制输出的,由模组控制则可以在要用时才输出,不用时关闭,实现低功耗。R1 的电阻值为 10K,测试效果能够接受,过低则采集的音频信号弱,过高则易引入噪声。</p>
<p>在原理图中,U2 电容的作用就是对采集的信号进行滤波,滤除高频噪声,大多是滤除滋滋滋的声音或者声音沙哑问题。</p>
<h3>4. 音频功放部分</h3>
<div align="center">
<img src="https://image.lceda.cn/oshwhub/pullImage/4680e60e0142410a86f78496bb271666.png" alt="功放" width="800">
<p>图5--音频功放</p>
</div>
<p>音频功放主要以上图的 U7 为主,它型号是 LM4871,是一款 3W、单声道 AB 类音频功率放大器,工作电压 1.9 - 5.5V。</p>
<p>通过实际测试发现,项目原理图中的 R7 和 R8 电阻跟声音大小成线性关系,两个电阻越大,声音越小;两个电阻越小,声音越大。但是声音的大小始终不会超过喇叭的实际可输出声音大小。毕竟该芯片只有 1W 的功放输出。 W 数越大,功率越高,耗电越大,声音越响。</p>
<p><strong>注意</strong>:高频噪声放小电容滤除,低频噪声放大电容滤除。</p>
<h3>5. 显示屏部分</h3>
<div align="center">
<img src="https://image.lceda.cn/oshwhub/pullImage/ae6566c583df4e21a10cbe0c3c85a78f.png" alt="屏幕" width="400">
<p>图6--屏幕</p>
</div>
<p>这里SPI的通信控制信号引脚,可以使用主控的硬件SPI外设,实现更高的通信速率,更快的屏幕刷新。但是使用主控的硬件SPI外设,则需要选择特定的引脚。</p>
<h4>引脚定义</h4>
<div align="center">
| 模组引脚 | 开发板引脚 | 功能说明 |
|--------------|------------|------------------------------|
| GND | - | 屏幕电源地(双接地引脚) |
| GND | - | 屏幕电源地 |
| VDD33_VOUT2 | VCC | 屏幕电源输入(3.3V) |
| PA04 | DO(SCL) | SPI通信时钟引脚 |
| PA05 | D1(SDA) | SPI通信数据引脚 |
| PA00 | RES | 屏幕复位引脚(低电平有效) |
| PA06 | D/C | 数据/命令选择引脚 |
| PA03 | CS | SPI片选引脚(低电平有效) |
| PA42 | BLK | 背光控制引脚(高电平点亮) |
</div>
<h4>连接说明</h4>
<ol>
<li>
<p><strong>电源连接</strong>:</p>
<ul>
<li>将两个GND引脚连接到开发板的地线</li>
<li>VCC引脚连接3.3V电源输出</li>
</ul>
</li>
<li>
<p><strong>SPI接口</strong>:</p>
<ul>
<li>SCL连接主控SPI时钟线</li>
<li>SDA连接主控SPI数据线</li>
<li>CS连接主控SPI片选线</li>
</ul>
</li>
<li>
<p><strong>控制信号</strong>:</p>
<ul>
<li>D/C用于区分数据/命令</li>
<li>BLK建议使用PWM控制亮度</li>
</ul>
</li>
</ol>
<h3>6. 串口下载部分</h3>
<div align="center">
<img src="https://image.lceda.cn/oshwhub/pullImage/c0d9a5b458454e50b5d631d3551e8dae.png" alt="串口下载" width="600">
<p>图7--串口下载</p>
</div>
<p>模组的下载是通过串口进行下载的,必须使用 PA18 和 PA19 引脚下载。</p>
<p>本项目直接使用 CH340X 模块的接口作为下载器。实测能够正常下载和串口调试通信。</p>
<h1>软件代码</h1>
<h2>一、烧录准备</h2>
<h3>1.1 下载烧录工具</h3>
<p><strong>工具名称</strong>: sftool<br>
<strong>功能</strong>: 用于 SF32 系列 SoC 芯片的烧录</p>
<p><strong>获取方式</strong>:</p>
<ul>
<li><strong>源码获取</strong>: 可在 GitHub 上找到开源源码</li>
<li><strong>二进制文件</strong>: 若不需要源码,可直接在 Release 页面下载编译好的二进制文件</li>
<li><strong>版本选择</strong>: 在 Release 页面中查找最新版本的 sftool</li>
</ul>
<h3>1.2 下载固件文件</h3>
<p><strong>固件仓库</strong>: <a href="https://github.com/78/xiaozhi-sf32/releases" target="_blank">https://github.com/78/xiaozhi-sf32/releases</a></p>
<p><strong>必需文件</strong>:</p>
<ul>
<li><code>bootloader.bin</code></li>
<li><code>ER_IROM2.bin</code></li>
<li><code>ER_IROM3.bin</code></li>
<li><code>ER_IROM1.bin</code></li>
<li><code>ftab.bin</code></li>
</ul>
<p><strong>建议</strong>:</p>
<ol>
<li>首先下载 sftool 工具</li>
<li>将五个固件文件放置在 sftool 文件夹中</li>
<li>确保文件与 <code>sftool.exe</code> 位于同一路径</li>
</ol>
<h3>1.3 选择对应固件版本</h3>
<p><strong>适用型号</strong>: 小汤圆直插版(立创训练营)<br>
<strong>固件包</strong>: <code>sf32lb52-xty-ai-tht.zip</code></p>
<h2>二、烧录操作</h2>
<h3>2.1 烧录命令</h3>
<p>使用 sftool 工具烧录固件,在终端中输入以下命令(Windows):</p>
<pre><code class="language-bash">./sftool.exe -p COM3 -c SF32LB52 write_flash bootloader.bin@0x12010000 ftab.bin@0x12000000 ER_IROM2.bin@0x12A28000 ER_IROM3.bin@0x12228000 ER_IROM1.bin@0x12020000</code></pre>
<h3>2.2 烧录配置说明</h3>
<h4>2.2.1 固件文件处理</h4>
<p><strong>路径引用规范</strong>:</p>
<ul>
<li><strong>推荐使用</strong>:绝对路径引用</li>
<li><strong>特殊处理</strong>:如果路径中出现中文或空格,请用英文引号 <code>"</code> 将完整路径括起来</li>
</ul>
<h4>2.2.2 串口配置</h4>
<p><strong>串口号说明</strong>:</p>
<ul>
<li><code>COM3</code> 为示例串口号(实际使用时请根据具体情况修改)</li>
</ul>
<p><strong>查看串口号方法</strong>:</p>
<ol>
<li>打开计算机的「设备管理器」</li>
<li>展开「端口(COM和LPT)」选项</li>
<li>查看 <code>COM</code> 后面跟随的数字(即为当前串口号)</li>
</ol>
<h2>三、烧录完成验证</h2>
<h3>3.1 设备启动状态</h3>
<ul>
<li><strong>自动重启</strong>:烧录完成后设备将自动重启运行</li>
<li><strong>屏幕指示</strong>:屏幕应该被正常点亮</li>
<li><strong>完成提示</strong>:尽情体验吧!</li>
</ul>
<h2>四、蓝牙连接配置</h2>
<h3>4.1 前置准备</h3>
<p><strong>重要提示</strong>:<strong>在连接板子设备之前,请务必打开手机的蓝牙网络共享功能!</strong></p>
<h3>4.2 连接流程</h3>
<ol>
<li><strong>开启网络共享</strong>:确保蓝牙共享网络已打开</li>
<li><strong>设备搜索连接</strong>:手机连接蓝牙 <code>sifli-pan</code> 设备</li>
<li><strong>连接状态确认</strong>:开发板显示连接画面提示</li>
<li><strong>启动对话功能</strong></li>
<li><strong>系统提示</strong>:小智AI提示需要登录控制面板并填写设备码</li>
</ol>
<h2>五、网页端配置</h2>
<h3>5.1 访问方式</h3>
<ul>
<li><strong>官方网址</strong>:<a href="https://xiaozhi.me" target="_blank">https://xiaozhi.me</a></li>
<li><strong>设备兼容</strong>:支持手机或电脑浏览器访问</li>
</ul>
<h3>5.2 配置步骤</h3>
<ol>
<li><strong>进入控制台</strong></li>
<li><strong>用户登录</strong></li>
<li><strong>创建智能体</strong>:新建智能体并完善相关信息</li>
<li><strong>设备绑定</strong>:最后添加获得的设备码完成绑定</li>
</ol>
<h2>六、设备使用</h2>
<p><strong>操作步骤</strong>:</p>
<ol>
<li>拨动电源开关</li>
<li>设备即可正常使用</li>
</ol>
<p><strong>唤醒功能</strong></p>
<ul>
<li><strong>休眠机制</strong>:长时间未对话时,小智AI会自动进入休眠状态</li>
<li><strong>唤醒操作</strong>:需要按下唤醒键,设备从休眠状态恢复正常工作</li>
</ul>
<p><strong>使用建议</strong>:</p>
<ul>
<li>操作前请仔细阅读硬件文档</li>
<li>如遇问题请检查各步骤是否按要求完成</li>
</ul>
评论(0)