描述
<p style="line-height:1.8">注:* 为必填项</p>
<p style="line-height:1.8"><strong><span style="color:#0093e6">请在报名阶段填写 ↓</span></strong></p>
<p style="line-height:1.8"> </p>
<h3 style="line-height:1.8">* 1、项目功能介绍</h3>
<hr>
<div>
<div>基于立创开源蓝牙模组 制作的简易AI对话机器人课程训练,实现AI实时语音对话。它能够听懂你的情绪,解答你的疑惑,也能分享你的快乐</div>
</div>
<p style="line-height:1.8"> </p>
<h3 style="line-height:1.8">*2、项目属性</h3>
<hr>
<p style="line-height:1.8">此项目为立创开发板-小智AI训练营活动下的开源项目</p>
<p style="line-height:1.8"> </p>
<h3 style="line-height:1.8">* 3、开源协议</h3>
<div>
<div>软件开源地址:https://github.com/78/xiaozhi-sf32</div>
</div>
<p style="line-height:1.8"> </p>
<h3 style="line-height:1.8">*4、硬件部分</h3>
<hr>
<div>
<h2><strong>电源部分</strong></h2>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>电源部分的电路</strong></div>
</td>
</tr>
</table>
</div>
<div>BAT1 是一个<a href="https://item.szlcsc.com/6030883.html" target="_blank">电池盒</a>,可以容纳一节 CR123A 电池。故要供电的话,需要使用小型柱形电池 CR123A 进行供电。</div>
<div><img src="//"><img src="//"></div>
<div><strong>电池盒实物图</strong></div>
<div><strong>CR123A电池实物图</strong></div>
<div> </div>
<div>CR123A 的相关参数如下:</div>
<div> </div>
<div>
<div>
<div>
<div><strong>电池参数</strong></div>
<div>- <strong>型号:</strong> CR123A</div>
<div>- <strong>电压:</strong> 3.7V</div>
<div>- <strong>尺寸:</strong> 34(L) x 16.5(W) mm</div>
<div>- <strong>其他:</strong> 带 TYPE-C接口,可以直接充电</div>
</div>
</div>
</div>
<div>如需自行购买电池,请根据以上参数选购。</div>
<div>目前我们购买测试通过的电池:<a href="https://detail.tmall.com/item.htm?abbucket=17&id=867320144222&mi_id=MlQxlrbcXr36eBkZf8Dm8Yicg2ChoU_BQBtnA84Mfv4cEVxvsfHLfkMawuF2Ot7-ryp4I9CZ6Y41qdv7IbzjXdyIKojnEw25dIeQa1hWdEE&ns=1&skuId=5694529265908&spm=a21n57.1.hoverItem.14&utparam=%7B%22aplus_abtest%22%3A%22d50fd729ed98c4acedb7cc6473f56854%22%7D&xxc=taobaoSearch" target="_blank">【CR123A】全新tyep-c接口(1节装)送充电线</a></div>
<div>SW1 是整个项目的电源开关,通过拨动 SW1 开关,进行断电和通电。</div>
<div> </div>
<h2><strong>主控部分</strong></h2>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>主控部分的电路</strong></div>
</td>
</tr>
</table>
</div>
<div>主控用的是 [立创·开源SF32LB52模组](<u>https://item.szlcsc.com/45024582.html</u>),一款蓝牙低功耗芯片,频率 <strong>240MHz</strong>,集成 8MB PSRAM 和 16MB Flash,支持锂电池直接供电。BLE 连接功耗(1S间隔)仅需 7μA,BT连接功耗(1S间隔)仅需 10μA,BLE + BT 双连接功耗比同行单BT连接功耗还能降低 60%。</div>
<div> </div>
<div>模组支持 BT PAN 功能可以直接连接手机上网,相比 WIFI 功耗更低,更加适合电池场景,带屏连接功耗仅 <strong>30mA</strong>。</div>
<div> </div>
<div>在本项目中,直接让电池电源直连模组的电源输入引脚 VSYS。这里需要注意<code>该模组电压范围要求 3.7V~4.7V</code>。3.3V 和 5V 供电都不行。</div>
<div> </div>
<div>模组的 VDD33_VOUT2 是由软件控制输出的,需要芯片正常启动后才有输出3V3。</div>
<div> </div>
<div>模组与其他电路模块的连接情况</div>
<div>暂时无法在飞书文档外展示此内容</div>
<h2><strong>音频功放部分</strong></h2>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>音频功放部分的电路</strong></div>
</td>
</tr>
</table>
</div>
<div>音频功放主要以上图的 U6 为主,它型号是 LM4871,是一款 3W、单声道 AB 类音频功率放大器,工作电压 1.9 - 5.5V。</div>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>LM4871 的管脚定义说明图</strong></div>
</td>
</tr>
</table>
</div>
<div>关于该电路每一个器件为什么这么放,是参考手册中的典型应用电路。其数据手册上的典型应用电路如下:</div>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>LM4871 典型应用电路</strong></div>
</td>
</tr>
</table>
</div>
<div>根据数据手册的典型应用电路的推荐和我们项目的实际情况,最后采用的是 <code>差分输入模式的典型应用电路</code>。</div>
<div> </div>
<div>这里有一个问题,虽然我们按照了典型应用电路放置了对应器件,但是器件的值跟典型电路是不一致的。为什么这么做?是为了低成本考虑,典型应用电路中,用到了 10K 20K 1UF 0.39UF 等器件,而我们为了购买器件少一点,让电路更简洁,将电阻统一改为 10K,电容改为常用的 100nF(0.1UF) 和 22UF。实测没有问题。</div>
<div> </div>
<div>器件的 1 脚 Shutdown 是芯片掉电控制引脚,为高电平时功放停止工作实现低功耗;为低电平时功放正常工作。在原理图中通过 R4 电阻让该引脚默认为高电平即芯片默认停止工作,当需要功放工作时,需要主控的 PA26 引脚输出低电平才能工作,这样只有需要用的时候才开,不用的时候默认关闭。</div>
<div>
<div>
<div>
<div><strong>声音大小控制</strong></div>
<div>通过实际测试发现,项目原理图中的 R7 和 R8 电阻跟声音大小成线性关系,两个电阻越大,声音越小;两个电阻越小,声音越大。但是声音的大小始终不会超过喇叭的实际可输出声音大小。毕竟该芯片只有 1W 的功放输出。 W 数越大,功率越高,耗电越大,声音越响。</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div><strong>噪声控制</strong></div>
<div>通过实际测试发现,项目原理图中的 C2 和 C5 电容跟噪声消除有关,具体如何调整数值达到理想效果参考该芯片的数据手册说明。这里简洁为一句话:高频噪声放小电容滤除,低频噪声放大电容滤除。</div>
</div>
</div>
</div>
<div> </div>
<h2><strong>麦克风部分</strong></h2>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>麦克风部分的电路</strong></div>
</td>
</tr>
</table>
</div>
<div>麦克风咪头(通常为驻极体话筒)的核心是一个<strong>可振动</strong>的极板(振膜)与固定背极板组成的电容。</div>
<div> </div>
<div>当声音振动波作用在振膜上时,会导致其与背极板的距离动态变化,从而改变电容值。当有声音时,器件内部电容发生变化,这一变化会引发电容两端的电荷移动,产生微弱的交流电信号(模拟信号)。</div>
<div> </div>
<div>但是虽然麦克风内部的驻极体材料自带永久电荷(无需外部供电维持电场),即使没有电源输入,麦克风也能够使用,但是为了确保麦克风能够正常稳定的工作,通常是需要提供一个基准电压(通常2~5V),使内部电容处于预充电状态,确保声音引起的电容变化能转换为有效电流信号。</div>
<div> </div>
<div>在原理图中,R3 电阻的作用就是给麦克风的正极输入一个基准电压MIC_BIAS,这个电压是由模组控制输出的,由模组控制则可以在要用时才输出,不用时关闭,实现低功耗。R3 的电阻值为 10K,测试效果能够接受,过低则采集的音频信号弱,过高则易引入噪声。</div>
<div> </div>
<div>在原理图中,U4 电容的作用就是对采集的信号进行滤波,滤除高频噪声,大多是滤除滋滋滋的声音或者声音沙哑问题。</div>
<div> </div>
<h2><strong>屏幕显示部分</strong></h2>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>屏幕显示部分的电路</strong></div>
</td>
</tr>
</table>
</div>
<div>屏幕显示使用的是 1.69寸TFT屏幕,采购自 <a href="https://item.taobao.com/item.htm?id=694205959541" target="_blank">金逸晨1.69寸TFT液晶屏ST7789小屏240x280显示器LCD圆角屏SPI彩屏</a>,</div>
<div>屏幕通过SPI协议控制,供电 3.3V。</div>
<div> </div>
<div>这里SPI的通信控制信号引脚,可以使用主控的硬件SPI外设,实现更高的通信速率,更快的屏幕刷新。但是使用主控的硬件SPI外设,则需要选择特定的引脚。</div>
<div> </div>
<div><strong>模组与屏幕的连接</strong></div>
<div>
<table>
<tr>
<th colspan="1" rowspan="1">
<div>模组</div>
</th>
<th colspan="1" rowspan="1">
<div>1.69寸TFT屏幕</div>
</th>
<th colspan="1" rowspan="1">
<div>说明</div>
</th>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div>GND</div>
</td>
<td colspan="1" rowspan="1">
<div>GND</div>
</td>
<td colspan="1" rowspan="1">
<div>屏幕电源地</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div>VDD33_VOUT2</div>
</td>
<td colspan="1" rowspan="1">
<div>VCC</div>
</td>
<td colspan="1" rowspan="1">
<div>屏幕电源输入</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div>PA04</div>
</td>
<td colspan="1" rowspan="1">
<div>DO(SCL)</div>
</td>
<td colspan="1" rowspan="1">
<div>屏幕通信时钟引脚</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div>PA05</div>
</td>
<td colspan="1" rowspan="1">
<div>D1(SDA)</div>
</td>
<td colspan="1" rowspan="1">
<div>屏幕通信数据引脚</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div>PA00</div>
</td>
<td colspan="1" rowspan="1">
<div>RES</div>
</td>
<td colspan="1" rowspan="1">
<div>屏幕屏幕复位引脚</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div>PA06</div>
</td>
<td colspan="1" rowspan="1">
<div>D/C</div>
</td>
<td colspan="1" rowspan="1">
<div>屏幕读写功能引脚</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div>PA03</div>
</td>
<td colspan="1" rowspan="1">
<div>CS</div>
</td>
<td colspan="1" rowspan="1">
<div>屏幕通信片选引脚</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div>PA42</div>
</td>
<td colspan="1" rowspan="1">
<div>BLK</div>
</td>
<td colspan="1" rowspan="1">
<div>屏幕背光控制引脚,高电平屏幕背光亮</div>
</td>
</tr>
</table>
</div>
<div><strong>模组的引脚复用表</strong></div>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>模组的引脚复用表</strong></div>
</td>
</tr>
</table>
</div>
<h2><strong>按键部分</strong></h2>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>按键部分的电路</strong></div>
</td>
</tr>
</table>
</div>
<div>每一个项目基本都需要有人机交互部分,本项目通过按键进行控制,U2 PA34_KEY 是唤醒键 + 语音输入键,按下 U2 按键可以让主控从低功耗睡眠状态唤醒,当主控正在工作时,按下按键进行语音输入。</div>
<div> </div>
<div>U1按键目前待定用途,设计出来备用。</div>
<div> </div>
<h2><strong>指示灯部分</strong></h2>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>指示灯部分的电路</strong></div>
</td>
</tr>
</table>
</div>
<div> </div>
<div>用于指示模组状态。通过模组IO控制。IO输出低电平LED灯亮,IO输出高电平LED灯灭。</div>
<div> </div>
<h2><strong>下载部分</strong></h2>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>串口下载部分的电路</strong></div>
</td>
</tr>
</table>
</div>
<div> </div>
<div>模组的下载是通过串口进行下载的,必须使用 PA18 和 PA19 引脚下载。</div>
<div> </div>
<div>本项目直接使用 <a href="https://item.szlcsc.com/51679391.html?fromZone=s_s__%2522CH340X%2522&spm=sc.gbn.xh2.zy.t___sc.hm.hd.ss&lcsc_vid=QVhbAlYAFlcKVQIAFQBcBFNSElNbUgFTTlNXXgZVTwIxVlNTRlVbV1dUQ1BXVDtW" target="_blank">CH340X 模块</a>的接口作为下载器。实测能够正常下载和串口调试通信。</div>
<div>
<table>
<tr>
<td colspan="1" rowspan="1">
<div><img src="//"></div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<div><strong>串口下载器</strong></div>
</td>
</tr>
</table>
</div>
<h1>三、<strong>原理图与PCB设计</strong></h1>
<div><hr></div>
<div>在了解完硬件电路原理后接下来进行原理图与PCB设计环节,原理图设计部分包含了元器件选型、元器件搜索以及原理图整理的内容;PCB设计部分包含边框设计、元器件分类布局、PCB走线与设计检查等内容。</div>
</div>
<p style="line-height:1.8"> </p>
<h3 style="line-height:1.8">*5、软件部分</h3>
<hr>
<div>
<div>软件开源地址:https://github.com/78/xiaozhi-sf32</div>
</div>
<p style="line-height:1.8"> </p>
<p style="line-height:1.8"><span style="font-size:14px"><a href="/posts/42551e8f2f2548cabc1c36626a42da94" target="_blank">前往查看更多详情 ></a></span></p>
<p style="line-height:1.8"> </p>
评论(0)