⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tone.c

📁 ICETEK-DM642-EDUlabv1.3.rar
💻 C
字号:
#include "tonecfg.h"
#include <csl_mcasp.h>

#include "evmdm642.h"
#include "evmdm642_aic23.h"

/* 每周期正弦波数据个数 */
#define SINE_TABLE_SIZE   48

/* 编码解码模块(AIC23)初始化参数 */
EVMDM642_AIC23_Config config = { \
    0x0017,  /* 0 DSK6713_AIC23_LEFTINVOL  左声道线输入音量 */ \
    0x0017,  /* 1 DSK6713_AIC23_RIGHTINVOL 右声道线输入音量 */\
    0x01f9,  /* 2 DSK6713_AIC23_LEFTHPVOL  左声道耳机音量 */  \
    0x01f9,  /* 3 DSK6713_AIC23_RIGHTHPVOL 右声道耳机音量 */ \
    0x0011,  /* 4 DSK6713_AIC23_ANAPATH    模拟通路控制 */      \
    0x0000,  /* 5 DSK6713_AIC23_DIGPATH    数字通路控制 */     \
    0x0000,  /* 6 DSK6713_AIC23_POWERDOWN  节能控制 */             \
    0x0043,  /* 7 DSK6713_AIC23_DIGIF      数字音频接口格式 */ \
    0x0082,  /* 8 DSK6713_AIC23_SAMPLERATE 采样率控制 */            \
    0x0001   /* 9 DSK6713_AIC23_DIGACT     激活数字接口 */   \
};

/* 正弦波形数据,16位采样(0-65535) */
Uint16 sinetable[SINE_TABLE_SIZE] = 
{
    0x0000, 0x10b4, 0x2120, 0x30fb, 0x3fff, 0x4dea, 0x5a81, 0x658b,
    0x6ed8, 0x763f, 0x7ba1, 0x7ee5, 0x7ffd, 0x7ee5, 0x7ba1, 0x76ef,
    0x6ed8, 0x658b, 0x5a81, 0x4dea, 0x3fff, 0x30fb, 0x2120, 0x10b4,
    0x0000, 0xef4c, 0xdee0, 0xcf06, 0xc002, 0xb216, 0xa57f, 0x9a75,
    0x9128, 0x89c1, 0x845f, 0x811b, 0x8002, 0x811b, 0x845f, 0x89c1,
    0x9128, 0x9a76, 0xa57f, 0xb216, 0xc002, 0xcf06, 0xdee0, 0xef4c
};


// main() - 主函数,初始化BSL,产生声音输出
void main()
{
    EVMDM642_AIC23_CodecHandle hCodec;	// 自定义设备句柄准备使用
    Int16 msec, sample;
    
    EVMDM642_init();	// 首先必须初始化BSL
     
	// 初始化和启动AIC23模块,同时取得句柄
    hCodec = EVMDM642_AIC23_openCodec(0, &config, EVMDM642_AIC23_OUTPUT);
    
    // 产生5秒钟的1KHz波形输出
    for ( msec = 0; msec < 5000; msec++ )
    {
        for ( sample = 0; sample < SINE_TABLE_SIZE; sample++ )
        {
            //利用句柄发送音频数据,32位数据的高16位将送左声道,低16位右声道
            while (!EVMDM642_AIC23_write(hCodec, (sinetable[sample] << 16) | sinetable[sample]));
        }
    }

    // 关闭AIC23模块、释放句柄
    EVMDM642_AIC23_closeCodec(hCodec);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -