打印
[STM32F1]

实现不了DA还原声音,AD转换声音信号

[复制链接]
1699|36
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gongche|  楼主 | 2022-2-4 22:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一直实现不了DA还原声音,AD转换声音信号

使用特权

评论回复
沙发
juventus9554| | 2022-2-4 22:58 | 只看该作者
楼主程序可以公开吗?贴程序看下吧,这么说看不出什么原因

使用特权

评论回复
板凳
gongche|  楼主 | 2022-2-4 23:00 | 只看该作者
最近一直在弄用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;

int main(void)
{
             NVIC_Configuration();                 uart_init(9600);                 //´

        TIM2_Configuration(1663,0x0);//44.1KHz,0x0表示不分频
        TIM2_NVIC_Configuration();
        DMA_Config();
        Adc_Init(ADC_Channel_2);                                  //初始化ADC1通道2         

    DMA_Config(ADC1_DR_Address,(u32)&ADC_Value,1);
   
   while(1)
   {
       DAC_Value = ADC_Value;
   }
}

使用特权

评论回复
地板
supernan| | 2022-2-4 23:04 | 只看该作者
你是用44.1kHZ的采样声音的话,要想DA还原的话必须使用内插函数SINX/X 才能完整地重建声音

使用特权

评论回复
5
songqian17| | 2022-2-4 23:06 | 只看该作者

你可以先不使用声音,你采样的正弦波,看你这种方法能不能还原正弦波

使用特权

评论回复
6
gongche|  楼主 | 2022-2-4 23:09 | 只看该作者

什么是内插函数?

使用特权

评论回复
7
zhanghqi| | 2022-2-4 23:12 | 只看该作者
就是你采用44.1Khz的采样,你在周期22us 之间要插入固定的值才能还原原信号,利用你采样得到的值,通过内插函数得出插入的的值DA值

使用特权

评论回复
8
liuzaiy| | 2022-2-4 23:14 | 只看该作者

这个内插函数 很有名 叫sinc 函数

使用特权

评论回复
9
gongche|  楼主 | 2022-2-4 23:19 | 只看该作者
呵呵,没用过,也不会用

使用特权

评论回复
10
zwll| | 2022-2-4 23:22 | 只看该作者
电路没有问题吧?

使用特权

评论回复
11
gongche|  楼主 | 2022-2-4 23:25 | 只看该作者
我试过把声音采集的电路和播放的电路直接连起来,对着咪头说话,喇叭有声音,应该没问题

使用特权

评论回复
12
xxrs| | 2022-2-4 23:27 | 只看该作者
怎么觉得这还不如用DSP

使用特权

评论回复
13
supernan| | 2022-2-4 23:29 | 只看该作者
方波哪来的?

使用特权

评论回复
14
gongche|  楼主 | 2022-2-4 23:31 | 只看该作者
原来我在while函数中加了延时,产生的,后来去掉延时,DA可以还原声音了,只不过喇叭伴随“沙沙沙...”的声音,很奇怪,请教怎么会有“沙沙沙....” 的声响

使用特权

评论回复
15
gongche|  楼主 | 2022-2-4 23:46 | 只看该作者
你的数据不连续,有断的地方?

使用特权

评论回复
16
gongche|  楼主 | 2022-2-4 23:48 | 只看该作者
没有断的地方,就是喇叭发出的声音伴随着“沙沙沙...”的响

使用特权

评论回复
17
yinxiangh| | 2022-2-4 23:50 | 只看该作者
你的采用电路设计的怎么样?

使用特权

评论回复
18
pangb| | 2022-2-4 23:50 | 只看该作者
usb没有广播的概念吧。lz构思的usb连接拓扑就不是一主多从,是中继转发的模式。不知道想干吗。

使用特权

评论回复
19
午夜粪车| | 2022-2-4 23:52 | 只看该作者
软件的采样频率呢?满足奈奎斯可采样定理吗?

使用特权

评论回复
20
gongche|  楼主 | 2022-2-4 23:54 | 只看该作者
没有:)

使用特权

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

本版积分规则

768

主题

9410

帖子

2

粉丝