这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 开源硬件 » 疯壳AI人脸及语音识别教程3-3语音传输与解析显示

共2条 1/1 1 跳转至

疯壳AI人脸及语音识别教程3-3语音传输与解析显示

菜鸟
2020-11-09 16:24:54     打赏

详情地址:https://fengke.club/GeekMart/views/offline/ai

购买链接:https://fengke.club/GeekMart/su_fKw7Nb7oC.jsp

视频地址:https://fengke.club/GeekMart/su_f9cTSxNsp.jsp

官方QQ群:457586268

语音传输与解析显示

TLV320AIC3254支持I2CSPI接口,这里用到I2CTLV320AIC3254的寄存器进行配置,用IAR打开AI_ASR里面的工程,如图1.0.1所示为CC3200初始化I2C部分代码。

image.png 

1.0.1 初始化I2C部分代码

TLV320AIC3254的初始化函数,如图1.0.2所示。

image.png 

1.0.2 TLV320AIC3254初始化

通过该函数可以设置设备的ID、采样位数、采样速率、音频通道、音频输出以及音频输入的增益。

本次实验使用UDP连接的方式进行通信。使用CC3200配置为UDP模式的代码如图1.0.3所示。

image.png 

1.0.3 CC3200U配置UDP模式

打开common.h,连接的路由器名称及密码如图1.0.4所示,特别注意的是要修改加密方式OPENWEP或者WPA

image.png 

1.0.4 路由器相关信息

连接服务器的IP地址及端口如图1.0.5所示。在network.c找到HOST_IP_ADDR可在宏定义中修改IP地址,修改usPort的值可以修改端口。

image.png 

1.0.5 服务器的IP地址及端口

IP地址用16进制来表示,例如:“192”对应16进制的“0xc0”、“168”对应16进制的“0xa8”、“05”对应16进制的“0x05”、“05”对应16进制的“0x05”,合起来就是0xc0a80505192.168.5.5)。

Network任务主要是实现网络连接,所以该任务主要实现CC3200连接上路由器,建立UDP。任务如图1.0.6所示。

image.png 

1.0.6 Network任务

ConnectToNetwork()函数内有一个函数WlanConnect()通过该函数可以连接上Common.h的宏定义中的路由器,WlanConnect()函数如图1.0.7所示。

image.png 

1.0.7 WlanConnect函数

CreateUdpServer()函数则是建立udp服务器,该函数如图1.0.8所示。

image.png 

1.0.8 CreateUdpServer函数

 Microphone任务主要是为了实现音频板卡语音的采集以及把语音信号通过udp发送出去的事项。

通过该任务下的GetBufferSize(pRecordBuffer)函数便可以把音频板卡的驻极体上的声音信号采集回来存储在pRecordBuffer这个缓冲区中。GetBufferSize()函数如图1.0.9所示。

image.png 

1.0.9 GetBufferSize函数

通过该任务下的sendto()函数可以把采集到语音信号发送到服务器端。

通过Speaker任务可以把由服务器端识别回来的字符串接收回来,并显示在12864液晶屏幕上。Speaker任务如图1.1.0所示。

image.png 

1.1.0 Speaker任务

通过sl_RecvFrom便可接收到解析好的语音字符串,然后通过12864液晶屏显示出来。

如图1.1.112864的初始化部分代码

image.png 

1.1.1 12864初始化代码

通过该函数可以初始化设定12864的对比度、扫屏方向等。如图1.1.212864的显示GB2312字库的代码。

image.png 

1.1.2 12864显示GB2312字库的代码

编译代码下载Bin文件到CC3200上(具体可参考GPIO小节),下载成功之后将拨码开关再拨回去,由于用到串口UART1调试的接收,需要把USBTTL电平的CH340的供电端以及收发端接上,把CH340G_VCC拨到ON,接收端RXD拨到ON如图1.1.3所示。

image.png 

1.1.3 下载完成的后的拨码开关示意图

由于该实验需要用到音频板卡,故需要把音频板卡插在板子左下方的双排针处,同时还需要把排针连接CC3200的拨码开关拨上,即需要把板子中间靠右的8路拨码的678LED灯)拨到ON1在上一步中已经拨到了ON)。除此之外,本次实验还用到了12864液晶显示器,还需要把配套的液晶显示器接上,配套的液晶显示器的引脚与板子IO的连接关系如表1.0.1所示。

1.0.1 12864与开发板连接关系

12864引脚

CC3200开发板丝印

1

G_3

2

G_4

3

G_5

4

G_6

5

VCC

6

GND

7

VCC

8

G_12

9

G_14

10

G_15

11

G_16

12

G_17

 

最后插上USB线。最后板子上的拨码及接线状态如图1.1.4所示。

image.png 

1.1.4 接线示意图

USB接上电脑,打开串口调试助手,选择相应的串口号(不同的电脑不同),波特率选择115200,打开串口,按下复位。收到如图1.1.5所示信息则代表音频板卡初始化通过。

image.png 

1.1.5 音频板卡初始化通过

当接收到如图1.1.6所示的串口打印信息时,则代表CC3200已经连上了指定的路由器。

image.png 

1.1.6 连接上路由器

拿起板卡对着驻极体说出想要识别的语音(普通话),等待一会后12864液晶,便会显示出相应的字符。

在本次实验中是以不断地采集驻极体处的声音待服务器解析后回传字符串的方式进行的,故需要等待的时间较长(约10s~20s)。

如图1.1.7所示,对驻极体说出“明天天气怎么样”,等待一会后12864液晶屏幕便会显示出由服务器的识别返回的字符。

image.png 

1.1.7 实验现象

 【3】语音传输与解析显示.docx





关键词: 疯壳     人脸     语音     识别     教程    

工程师
2020-12-08 22:22:49     打赏
2楼

显示的很到位


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]