功能背景:
很多工程师在产品开发过程中,需要用到额外的内存,或是因为没有断电保存能力但是需要保存参数,方便下次上电后能正常工作;或是因为内存不足,无法满足字库、传感器参数等保存需求;或是因为本身程序需要,上电或者关键时刻可以更新mcu本身的程序,而升级程序所需空间很小时,为了能正常工作,不得不需要额外准备一个外置存储器。
实现原理:
1、WT588E系列语音芯片是唯创知音推出的一款可在线升级语音和内存共享的语音芯片,可重复擦写的Flash特性为工程师设计时提供了一定的内存拓展的能力,语音芯片内部存储可达2Mbit(WT588E02)和8Mbit(WT588E08),在语音空间外还有剩余的情况下可以完全开放给客户进行数据存储。
2、可以通过采用与SPI-Flash同样指令的方式,方便客户对语音芯片进行读写操作。
应用场景:
1、单片机无法实现断电记忆,而产品功能又需要断电记忆才能实现时,WT588E系列语音芯片的内存共享功能可以帮助客户保存所需要数据。
2、单片机内存不足,又需要对字库数据、或者传感器数据、或者用户数据进行大量保存时。
3、单片机支持在线升级系统,需要先缓存程序数据时。
语音芯片管脚:
编号 | 管脚名称 | 管脚说明 |
1 | PC2 | SPI通信里面的MISO |
2 | PC1 | SPI通信里面的CS |
3 | PI0 | SPI通信里面的CLK |
4 | PI1 | SPI通信里面的MOSI |
5 | PWM- | PWM输出脚 |
6 | VDD | 电源正极 |
7 | PWM+/DAC | PWM输出脚/DAC输出脚 |
8 | GND | 电源负极 |
空间分配:
指令形式:
使用SPI-Flash指令,软件SPI通信,速率16Kbps。
客户MCU设定为主机,语音IC作为从机。
读操作:
SPI通信发送 8bit读指令+24bit读地址+语音芯片返回的数据
SPI-Flash读指令:02H
写操作:
SPI通信发送 8bit写使能+8bit写指令+24bit写地址+写入内容
SPI-Flash写指令:03H
SPI-Flash写使能指令:06H
擦除:
①、用户空间页擦除 :8bit写指令+8bit页擦除指令+24bit擦除地址
SPI-Flash页擦除指令:20H
②、用户空间全部擦除:8bit写指令+8bit全部擦除指令
SPI-Flash全擦除指令:BEH
客户操作逻辑:
客户在非播放状态下申请访问语音芯片内存
得到回应后按照Flash读写操作进行数据读取或者写入。
写入成功。