单片机IO对codecWM8988的输出beep声,怎么才能好听!

2020-02-05 09:01发布

图就是8988部分的原理图,beepsound就是直接接一个51的IO,又方波模拟输入,然后在输出,做为beep声,可是这样的话,找不到一人合适的频率,不是太尖锐就是,低的很难听,我把的我程序写一下,大家指点一下!
void beep_process_vol_up()
{
                int i=200;
                codec_command(0x45,0xf1); //(0xd1:-9dB,0xe1:-12dB,0xf1:-15dB)
                codec_command(0x48,0xf0); //(0xd0:-9dB,0xe0:-12dB,0xf0:-15dB)

                while((P2_6==1)||(i--))
                {
                                LED1=LED_ON;


                                BEEP_OUT=1;
                                Delay_1us(250);         //A                                                                                                               
                                //Delay_1us(300);


                                BEEP_OUT=0;
                                Delay_1us(250);         //B
                                Delay_1us(100);
                }
                codec_command(0x45,0x50);
                codec_command(0x48,0x50);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。