基于WT588F02B语音芯片智能语音感应洗手液设计方案
随着人类文明的进步,人们越来越重视健康,尤其是在当前新冠肺炎疫情的情况下。出门戴口罩,回家消毒洗手尤为重要,洗手已经成为人们日常生活中不可或缺的一部分。这里诞生了很多与洗手有关的产品,主要分析一款接近感应自动出液的产品——智能语音感应洗手液。
与传统的按压洗手液相比,智能语音感应洗手液具有以下优点:
非接触式,更卫生;
2.自动出液更方便;
3.出液量可调,缺液提醒更智能;
4.语音提示更人性化。基于以上优势,得到了市场的大力认可,在各大网购平台都能看到,销量可观。
那它的工作原理呢?
智能语音感应洗手液主要由几个功能部件组成MCU;2.红外接近传感器;3.减速电机;4.按钮和LED灯;5、语音IC和喇叭。工作原理是红外接近传感器检测到物体接近,然后将信号传输给主控MCU,主控MCU接收信号后,控制电机旋转,驱动液体从出口流出。在整个过程和按键操作中都会有语音提示,由主控制MCU指令控制语音IC播放声音。
在多、快、好、省的前提下,如何选择开发方案?
这里推荐一套主控解决方案MCU WT588F02B语音IC(带红外接近传感功能code)。理由是WT588F02B语音IC它解决了红外接近传感的功能,减少了主控MCU开发工作量和前期验证调试时间。此外,接近信号的传输和控制声音播放指令统一使用标准uart接口,方便主控MCU选品开发的失败率大大降低了选降低了产品开发的失败率。
WT588F02B是什么样的IC呢?
首先,WT588F02B该芯片是一种具有16位的多功能语音芯片PWM输出可直接驱动8欧0.25W喇叭;其次,它也是一个强大的数据处理芯片(DSP),自带累加器,能快速处理压缩和解码算法;此外,它有丰富的引脚,与一线通信、UART、IIC、SPI等;最后,WT588F02B还是一颗FLASH型芯片可以反复擦写,支持掉电记忆功能,不需要多用IO引脚实现电压检测功能。
让我们详细了解一下这个方案:
1. 智能语音感应洗手液设计方案概述
1.1、应用框架图
1.2框架图介绍:
1、主控MCU通过Uart发送指令控制WT588F0B播放声音,停止播放;
2、主控MCU通过Uart获取红外传感器信号(或主动发送接近信号);
3、主控MCU控制电机出液;
4.按键设置出液量;
1.3语音提示内容:
1、缺液语音提示;
2.低功率语音提示;
3.按键操作语音提示;
4.讲文明卫生的口号(主要用于公共场所)
如何科学如何科学洗手(主要适用于儿童,帮助他们养成正确的洗手习惯)
WT588F02B基本功能和特性
(1)16位DSP语音芯片、32Mhz内部振荡;
(2)工作电压2.0~5.5V;
(3)16bit的PWM/DAC可直接驱动8的输出R 0.5W喇叭;
(4)支持6K~32Khz的WAV文件;
(5)客户可通过下载测试板在线更换芯片内部语音内容;
(6).支持32768段地址,需求可扩大;
(7)芯片内部有200K byte 存储空间(不包括主控程序);
(8)低压检测功能;
WT588F02B-8S 设计原理图:
接口介绍:
3.1协议命令格式
WT588F02B-8S内置标准UART异步串口接口属于3.3V TTL电平接口。通信数据格式为:起始位置:1位;数据位置:8位;奇偶位置:无;停止位置:1位。使用计算机串口调试助手,需要正确设置串口参数,如图所示:
3.2语音播放指令:
3.红外检测指令:
4. 程序范例
以STC15 以单片机为例:
串口/定时器初始化Init()
/*************************************************************************/
void Init(void)
{
/* *************串口1初始化****************/
SCON = 0x50; //8-bit variable UART
TMOD = 0x20; //Set Timer1 as 8-bit auto reload mode
TH1 = TL1 = -(FOSC/12/32/BAUD); //Set auto-reload vaule
TR1 = 1; //Timer1 start run
ES = 1; //Enable UART interrupt
/**************IO初始化供电时钟芯片****************/
P2M0|=0X02;
P21=1; //推拉输出高电平,可为时钟芯片提供十几毫安电流
/* *************定时器0初始化****************/
AUXR &= 0x7F; ///定时器时钟12T模式
TMOD &= 0xF0; //设置定时器模式
TL0 = 0x00; //设置定时初始值
TH0 = 0xA8; //设置定时初始值
TF0 = 0; //清除TF0标志
ET0 = 1; //中断定时器
TR0 = 1; ///定时器0开始计时
/* *************看门启动****************/
WDT_CONTR = 0x04; // //18.432M : 0.68s
WDT_CONTR|=0x20;
EA = 1; //Open master interrupt switch
}
/***********************************************************************/
串口发送函数SendData(byte dat)
/*----------------------------
Send a byte data to UART
Input: dat (data to be sent)
Output:None
----------------------------*/
void SendData(BYTE dat)
{
//Wait for the completion of the previous data is sent
while (busy1);
busy1 = 1;
SBUF = dat; //Send data to UART buffer
}
/*************************************************************************/
语音播放函数 send_uart_play()
void send_uart_play(unsigned char len) // 7E 05 A0 00 01 A6 EF
{
unsigned char i,j,sum=0;
j=len 2;
send2_buf[0]=0x7e;//
send2_buf[1]=len 2;
for(i=0;i<len;i )send2_buf[2 i]=tempdata[i];
for(i=1;i<j;i )sum =send2_buf[i];
send2_buf[len 2]=sum;
send2_buf[len 3]=0xEF;
SendData(0x00);//低电平唤醒串口
for(i=0;i<(len 4);i )SendData(send2_buf[i]);
}
WT588F02B目前,该系列语音芯片有三种包装形式:SOP8、SOP16、SSOP24。作为一家专注于语音技术研究的高科技企业,唯创知音始终坚持服务工程师的目标,致力于简化复杂性,提供快速的语音芯片和智能物联网应用解决方案。WT588F在智能闹钟、智能水杯、雾化加湿器等消费电子行业,一系列应用设计方案已例。消费电子产品的应用是公司的重点的发展领域,未来,唯创知音将在更多行业推出标准化语音芯片,进一步提升工程师的设计体验,为消费类电子行业标准化赋能。