单片机学习小组
直播中

大红枣

11年用户 630经验值
私信 关注

什么是DAC?

什么是DAC?

回帖(1)

陈福蓓

2022-2-14 14:05:31
  实验任务:
1)输出一个周期2khz的正弦波(循环)。此波形驱动作用至蜂鸣器或喇叭,会呈现一个“滴…”的单音;
  2)将一段数字音频歌曲数据转换为模拟音频波形输出(循环)。
提示:首先用音频制作工具如audition制作一段数字化的2khz正弦波wav文件,制作时须指定采样频率、量化位数和通道数,以及时间长度。MCU资源有限,建议采样8khz,量化16bit,单通道,时长仅仅2秒左右。音频wav数据可以用类似汉字字模的保存方式,直接copy到Keil代码中数组中,不必使用SD卡上的wav文件(野火开发板是读取SD卡上的wav文件)。
在成功完成单音音频的还原输出后(示波器观察),再实验转换一首你喜欢的歌曲片段(或者自己唱录一句,如“我还是从前那个少年miya”)为wav文件,进行还原输出。
一.DAC

1.什么是DAC

数模转换器,又称D/A转换器,简称DAC,它是把数字量转变成模拟的器件。D/A转换器基本上由4个部分组成,即权电阻网络、运算放大器、基准电源和模拟开关。模数转换器中一般都要用到数模转换器,模数转换器即A/D转换器,简称ADC,它是把连续的模拟信号转变为离散的数字信号的器件。
2.构成和特点

DAC主要由数字寄存器、模拟电子开关、位权网络、求和运算放大器和基准电压源(或恒流源)组成。用存于数字寄存器的数字量的各位数码,分别控制对应位的模拟电子开关,使数码为1的位在位权网络上产生与其位权成正比的电流值,再由运算放大器对各电流值求和,并转换成电压值 [1] 。
根据位权网络的不同,可以构成不同类型的DAC,如权电阻网络DAC、R–2R倒T形电阻网络DAC和单值电流型网络DAC等。权电阻网络DAC的转换精度取决于基准电压VREF,以及模拟电子开关、运算放大器和各权电阻值的精度。它的缺点是各权电阻的阻值都不相同,位数多时,其阻值相差甚远,这给保证精度带来很大困难,特别是对于集成电路的制作很不利,因此在集成的DAC中很少单独使用该电路 [1] 。
它由若干个相同的R、2R网络节组成,每节对应于一个输入位。节与节之间串接成倒T形网络。R–2R倒T形电阻网络DAC是工作速度较快、应用较多的一种。和权电阻网络比较,由于它只有R、2R两种阻值,从而克服了权电阻阻值多,且阻值差别大的缺点 [1] 。
电流型DAC则是将恒流源切换到电阻网络中,恒流源内阻极大,相当于开路,所以连同电子开关在内,对它的转换精度影响都比较小,又因电子开关大多采用非饱和型的ECL开关电路,使这种DAC可以实现高速转换,转换精度较高 [1] 。
二.正弦波输出

采用野火的DAC—输出正弦波 文件。
1.准备工作

因为任务要求是2KHZ,我们根据DAC中信号频率的计算公式
(1)对代码进行修改

(2)进入matlab

复制下面的数据

(3)打开代码进行修改

  复制到const uint16_t Sine12bit

2. 编译运行


  成功后烧录到板子上,连接示波器,通过调频得到结果


三.音频波形输出

1、音频文件

(1)通过 Adobe Audition 截取生成一段音频文件

(2)设置参数,然后导出

(3)通过WavToC工具,将wav音频文件转为c语言代码程序

将生成的数据替换工程中的波形数据

3.实验结果


  烧录程序,通过示波器显示如下

举报

更多回帖

发帖
×
20
完善资料,
赚取积分