用AD转换声音信号,DA还原声音,一直实现不了,论坛里有人做过吗?

2019-07-20 23:10发布

最近一直在弄用AD转换声音信号,然后用DA还原播放声音,可是一直都实现不了,希望有人指导一下,谢谢!以下是主要的代码(我是采用DMA方式传输的)
AD主要代码(在AD的实验上加了DMA配置和定时器2中断实现AD开始转换):
#define ADC1_DR_Address    0x4001244C
u16 ADC_Value;
//DMA配置

//定时器2配置



DAC1主要代码(利用DMA传输、定时器6定时触发DAC)
#define DAC_DHR12R1_Address      0x40007408
uint16_t DAC_Value;



主函数主要部分
extern u16 ADC_Value;
extern uint16_t DAC_Value;

DMA_Config(ADC1_DR_Address,(u32)&ADC_Value,1);
再初始化其他函数后
while(1)
{
DAC_Value = ADC_Value;
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
49条回答
伊轩海
1楼-- · 2019-07-24 04:14
回复【24楼】xuande:
---------------------------------
好的!再继续调试
lovelydog
2楼-- · 2019-07-24 05:13
牛人太多了,太厉害了,我这个新手表示膜拜。
xuande
3楼-- · 2019-07-24 10:32
 精彩回答 2  元偷偷看……
伊轩海
4楼-- · 2019-07-24 10:40
回复【28楼】xuande:
---------------------------------
那么问题来了,我用一块miniSTM32V3.0的AD采集声音,接着通过串口传到另一块miniSTM32V3.0,然后用DA转换的时候,又不行了,喇叭又发出“哒哒哒......”的声音了,波特率用的是115200.。。麻烦指点指点,谢谢!
xuande
5楼-- · 2019-07-24 10:57
 精彩回答 2  元偷偷看……
伊轩海
6楼-- · 2019-07-24 13:13
回复【30楼】xuande:
---------------------------------
嗯嗯,明天试试。。
1、那我用AD采集到的12位数据值是分开高4位、低8位分别发送好呢?还是一次性发送12位的数据给串口好?
2、好像串口的数据位是8位,如果12位的数据分开高4位、低8位发送,那还原的声音会不会出现断续的呢?

一周热门 更多>