打印

香水求解 STM32F103VCT6 DAC怎么个思路?

[复制链接]
3806|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
taotaobobo|  楼主 | 2011-12-1 12:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我们用的STM32F103VCT6    用PA4脚DAC加功放,而不是用单独的解码芯片,想播放一些简单的语音,比如成功,失败,取消等     想把这些语音文件放到存储器里面, 该怎么做? 有没有例程啊?
沙发
taotaobobo|  楼主 | 2011-12-1 14:50 | 只看该作者
香水城去哪里了? 怎么不见踪影呢

使用特权

评论回复
板凳
香水城| | 2011-12-1 15:01 | 只看该作者
非常简单,把语音数据变成一个数组,放在你的项目中一起编译,用的时候直接引用数组即可。

使用特权

评论回复
地板
taotaobobo|  楼主 | 2011-12-1 15:10 | 只看该作者
把语音转换成二进制吗? 还是怎么弄

使用特权

评论回复
5
香水城| | 2011-12-1 15:14 | 只看该作者
语音文件在电脑里面就是二进制,不用转换!  也许你要转换成C编译能认识的ASCII表示的格式,例如:0x12, 0x34, 0xAB等。

使用特权

评论回复
6
taotaobobo|  楼主 | 2011-12-1 15:39 | 只看该作者
弄好数组后,怎么播放出来呢? 有相关例程参考吗?

使用特权

评论回复
7
taotaobobo|  楼主 | 2011-12-1 16:02 | 只看该作者
现在遇到的问题就是不知道怎么播放出来,最好搞个例子给我呀,都搞几天了没搞定,网上找的例程也实现不了功能

使用特权

评论回复
8
香水城| | 2011-12-1 16:06 | 只看该作者
你是不知道怎么把语音文件放到存储器里面?还是不知道怎么播放?这是2回事。

ST网站上有一个ADPCM的应用笔记和例程,可以供参考。

使用特权

评论回复
9
taotaobobo|  楼主 | 2011-12-1 16:11 | 只看该作者
是不知道怎么播放出来, 放进存储器里面知道怎么弄

使用特权

评论回复
10
会喝水的鱼| | 2011-12-1 16:12 | 只看该作者
打酱油。

使用特权

评论回复
11
linjing| | 2011-12-1 22:53 | 只看该作者
人耳可以听到的声音一般是不超过20K的信号,语音数据可以再低一点,8K听起来就很清楚,当然效果会差一点。

播放语音的方法就是按照语音数据的采样速率设置DAC,比如8K的语音,每隔125us,取数组中取一个语音数据更新一次DAC的输出,直到语音数据播放完成。

这个过程可以用DMA来自动实现。另外,电路上最好在输出上加个20K的低通滤波器。

使用特权

评论回复
12
linjing| | 2011-12-1 23:15 | 只看该作者
播放就是根据声音信号的速率更新DAC

比如,8K的语音信号,每隔8千分之一秒从数组中取一个数据,更新DAC,直到语音播放完

可以用定时中断实现,如果有DMA,也可以用DMA

使用特权

评论回复
13
zgfingle| | 2011-12-2 15:12 | 只看该作者
打酱油来着

使用特权

评论回复
14
taotaobobo|  楼主 | 2011-12-19 23:49 | 只看该作者
已经搞定,谢谢大家
http://www.boii.cn

使用特权

评论回复
15
nikita-fuck| | 2011-12-20 10:47 | 只看该作者
hehe ,,第三方网站给力

使用特权

评论回复
16
z994051| | 2012-11-29 23:08 | 只看该作者
楼主代码好了没,我最近正好也搞这个,能不能发给我参考,谢谢
z994051@163.com

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

35

帖子

1

粉丝