[高分求助单片机高手]51单片机具体应如何实现"开口说话"的语音功能?

我和同伴刚刚上手单片机,打算做一个语音盘,用敲击键盘组合的方式帮助聋哑人说话,现在在单片机发音上遇到了难题.我们是LY-51S开发板,已购买一存储芯片,目前的思路是将语音库dll文件存进存储芯片,然后编写程序调用,请问这一思路能否成功?

我们目前没有打算一个字一个字录音,也没有提取出现成的wav语音库,不知各位高人如何解决单片机"说话"问题的,高分悬赏,欢迎回答!谢谢!!!

我说说我的想法吧:

用单片机实现当然可行,最简单的描述就是:单片机记录键盘输入文字,然后以文字为索引从数据库中找到每个文字的发音(音频数据),然后将发音组合在一起并播放,即实现你想表示的效果。

现在你需要考虑的技术难点:
1.输入的文字:可能是汉字、数字或者字母,先不考虑英文单词(因为这会让你无从下手),如果有汉字,你想在单片机上实现输入,不管你是拼音输入还是五笔输入,你得设计输入法的程序吧?你认为一片51单片机的运算能力和存储能力能达到输入法需要的要求?输入法的程序你设计的了吗?
2.文字到读音的转换:当然将读音按照一定的编码方式存储在存储器中,以语音5KHz采样、16bit精度存储来计算,每个发音需要的存储空间是10000字节,以常用汉字2000个、数字10个、英文字母26个计算,至少需要20MB的存储空间,所以你需要什么要的存储器来保存如此海量的数据?
其他问题还没想到,想到了再说。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-02-12
先声明不是高手哈!
按键,然后从存储芯片调语音库,然后通过DAC输出,理论上应该行,但如果你想做好的话还很难。
最简单的可能还是建立拼音库吧!然后输入一段拼音,或输入汉字后转换为拼音,再调拼音库这样可能简单一些吧!
至于发音部分吧!就是将声音波形按照一定的时序用DA输出去,然后功放后接喇叭了。
如果要弄好,还用什么DLL的话,估计得用到一些存储系统的吧!
看样子你才是高手,不敢多说了!
如果确实是新手,那刚上手就来个高难度的,有挑战精神固然可佳,但好高骛远也还是要防止的。本回答被提问者采纳
第2个回答  2012-02-12
首先,51单片机可行。
其次,语音发音应采取专用的带存储功能的语音芯片。语音芯片的输入是汉字编码,输出接功放机喇叭直接发音。
第三,单片机只起译码的作用,比如按拼音或五笔输入,你把这些输入码转换为语音芯片能接受的汉字编码。但是,上述两种输入均需要显示器配合完成,且译码有一定的困难。建议采用区位码,输入麻烦一点,但是,由于区位码与汉字一一对应,译码很容易。
第3个回答  2012-02-12
51性能不够吧,起码搞个32位的CPU。
没有每个字的发音你打算怎么搞,不可能啊
第4个回答  2012-02-12
51能行吗???

高分求助:单片机 晶振上加了电容后不好用
你好,应该是负载匹配问题。我看了一下STC89C52的芯片资料说明,这个单片机推荐使用11.0592~22.1184M的晶振电路作驱动,它明确说了必须去掉C1,也就是芯片STC89C52引脚19到晶体的那个脚的负载电容C1坚决不能用,C2的取值说明是:可接47~33pF(晶振频率小于24M时);30~15pF(晶振频率大于33M时);100~18...

相似回答