DAC唱起来!
科学人2012/08/24电子技术 IP:北京
(原创)



最近的DIY项目需要音频播放,于是我搭建了这个试验性电路,先体验一下DAC的放音效果。



03.jpg



04.jpg



音频信号是随时间变化的电压信号,只要把对应的音乐数据存储在单片机的flash存储器中,就可以控制DA转换器还原出原来的电压信号。

DA转换可以使用DAC转换器,也可以通过单片机PWM滤波后来实现。由于单片机通常内置PWM模块,并且无需其他外部IC,PWM方式受到很多爱好者的青睐,但PWM输出音质较DAC芯片稍差。


本次使用的是便宜易得的DAC0832芯片。DAC0832属于电流输出型DAC,但它同时也提供了电压模式。

如图所示:



24.jpg



dw.jpg



电压模式的注意事项

由于T形电阻网络的开关要求,基准电压必须介于电源电压和地之间。并且不能是负值,否则内部Iout引脚连接的二极管会将其限制。


家中没有合适的基准源,我用一个二极管的正向压降作为电压基准,在输出端产生了最大1V左右的电压,随后连接的运算放大器将DAC的输出电压放大3倍,送往输出接口和LM386。



sd.jpg



0832内部设有两个缓冲器,目的是方便多路数据同时输出。本应用要求快速响应,除ILE高电平之外,其他控制引脚应全部接低电平以使锁存器处于直通状态。


由于产生高电压较为不便,为了获得更大的电压摆幅,我选择了TI的OPA241轨至轨运放。OPA241是专为低电压应用设计的精密运放,具有低失调电压和高输入阻抗等优点。



下面展示了一个简单的应用,通过串口接收音频文件并播放。



the turtles - "happy together"

点击此处查看视频

XXXXXXXXXXXXXXXXXX/v_show/id_XXXXXXXXXXXXXXXXml

后半部分音量并没有变化,可能是相机问题


音频文件是在audition中编辑的。步骤如下:



01.jpg

导入



02.jpg

设置输出选项。注意左下角,请去掉文件头




恭喜,你已经拥有可以通过单片机播放的8位PCM线性编码音频文件了。采样率为11025赫兹(再大的话串口不一定受得了)。
由于单片机几乎没有缓存空间,所以音频只能跟着串口速度走。
按照10位异步计算,11025*(5/4)*8等于110250bps。这个速度和标准波特率115200非常接近,但手头只有12和24M晶振,误差太大,不得已用了128000bps,播放速度是正常的1.16倍。。。囧

写个小程序,用串口助手将文件发出,即可享受美妙的音乐喽。


(STC12C5A60S2)
#include"STC12C5A60S2.h"
void UART_init()
{
SCON=0x50;
BRT=0xfa;
AUXR=AUXR|0x15;
EA=1;
ES=1;
}

void timerint() interrupt 4
{
RI=0;
P0=SBUF;
}

void main()
{
UART_init();
while(1);
}  



欢迎击中 fs.jpg
+32  科创币    绘梦工坊    2012/08/24
+150  科创币    任某人    2012/08/25 nice~~
+50  科创币    金坷居士    2012/08/25 你太厉害了
+31  科创币    玄明    2012/09/04 我是来凑整的
来自:电子信息 / 电子技术
21
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
科学人 作者
12年5个月前 IP:未同步
444025
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
科学人作者
12年5个月前 IP:未同步
444046
回 3楼(山寨雷神公司) 的帖子
嗯。不用IC座也有优点呢,比如增加EMC性能、减少接触电阻。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
科学人作者
12年5个月前 IP:未同步
444049
回 2楼(霹雳游侠) 的帖子
用耳机听还是有一点粗糙的感觉,主要是采样率低的缘故。
感觉底噪几乎为零~~~
这个板子作为实验性电路有点对不起它了,应该会找时间改成SD卡的便携式播放器[s:274]
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
科学人作者
12年5个月前 IP:未同步
444051
回 5楼(山寨雷神公司) 的帖子
其实主要的原因是——家里没有了...
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
科学人作者
12年5个月前 IP:未同步
444078
回 8楼(任某人) 的帖子
USB声卡那得追求高音质啊,这可就是音响发烧友玩的了~

其实这个倒是最简单的,随便一个USB音频DAC芯片都可以搞定
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
科学人作者
12年5个月前 IP:未同步
444137
回 15楼(任某人) 的帖子
可以。。。需要编写对应的上位机程序。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
上级专业
同级专业
科学人
学者 笔友
文章
178
回复
1739
学术分
1
2011/07/24注册,6年11个月前活动
暂无简介
主体类型:个人
所属领域:无
认证方式:邮箱
IP归属地:未同步
文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
支持的图片格式:jpg, jpeg, png
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}