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

📄 readme.txt

📁 TI DM642的微端口音频驱动程序,TI DDK中的例子,支持最多4路音频同时输出
💻 TXT
字号:
#
#  Copyright 2003 by Texas Instruments Incorporated.
#  All rights reserved. Property of Texas Instruments Incorporated.
#  Restricted rights to use, duplicate or disclose this code are
#  granted through contract.
#  
#
# "@(#) DDK 1.10.00.23 07-02-03 (ddk-b12)"
TITLE
-----
EVM642_EDMA_AIC23 (IOM McASP driver for EVM642/AIC23 codec)

DOCUMENTATION
-------------
The documentation for this device driver can be found at:
	/ddk/docs/evmdm642_edma_aic23.pdf

USAGE
-----
This device driver is a mini-driver for the AIC23 codec on the TMS320DM642 EVM
and uses the generic C6X1X_EDMA_MCASP driver to transfer data to and from the 
serial ports. Because this driver is dependent on the generic C6X1X_EDMA_MCASP 
driver, an application must link both the libraries from this driver and from 
the generic driver in order for it to function correctly. These two libraries 
are called evm642_edma_aic23.l64 and c6x1x_edma_mcbap.l64 which are located
in ddk/lib directory.

DESCRIPTION
-----------
EVMDM642_EDMA_AIC23 is an IOM driver for the Texas Instrument DM642 EVM. 
The board has an AIC23 codec on it. The driver is implemented using EDMA. 

FILES
-----
- evmdm642_edma_aic23.pjt: project file for building the driver library for 
  small model on the platform. 
- evmdm642_edma_aic23.c: initialization of McASP, EDMA and codec
- aic23.c: codec setting api
- ddk/include/evmdm642_edma_aic23.h: driver interface header file
- ddk/include/c6x1x_edma_mcasp.h: generic driver header file
- ddk/src/serialport/c6x1x_edma_mcasp/c6x1x_edma_mcasp.c: generic driver 
  implementation
- readme.txt: this file

NOTES
-----
- Files in the library are compiled with "no optimization switch" turned on, 
  and the same is true for the project files. If you plan to use this module 
  in a project release, you should rebuild the library with optimization 
  turned on.

Known Problems At Release
-------------------------
- None.

Q&A
---
Q1: How do I use the default EVMDM642_EDMA_AIC23_DevParams parameters? 
Q2: How do I change the codec parameters or other parameters?
Q3: If I change sampling frequency, do I need to change de-emphasis?
Q4: Where can I find the documentation for writing IOM drivers?

---
Q1: How do I use the default EVMDM642_EDMA_AIC23_DevParams parameters?
A1: Specify a NULL value to the User-Defined Device parameter when you add the 
    driver from the Configuration Tool. The default value for codec sample 
    rate is 48Khz.

Q2: How do I change the codec parameters or other parameters?
A2: You need to define the codec structure and device structure with 
    all the fields before main().
       
       Example1: Default codec parameters and different edma interrupt id.
            EVMDM642_EDMA_AIC23_DevParams myParams =  {			\
    		EVMDM642_EDMA_AIC23_VERSION_1,				\
    		TRUE, 							\
    		C6X1X_EDMA_MCASP_EXTERNAL,				\
        	C6X1X_EDMA_MCASP_EXTERNAL,   				\
       		C6X1X_EDMA_MCASP_EXTERNAL,			   	\
    		10, 							\
    		-1, 							\
    		-1, 							\
    		NULL,  							\
    		EVMDM642_EDMA_AIC23_INTR_MASK_DEFAULT,                  \
    		EVMDM642_EDMA_AIC23_INTR_MASK_DEFAULT,                  \
    		EVMDM642_EDMA_AIC23_INTR_MASK_DEFAULT, 			\
    		AIC23_DEFAULTPARAMS_EVMDM642				\
	    };

	   Pass "_myParams" to the User-Defined Device parameter.
       
       This example shows how to use default codec parameters and edma 
       will be plugged into hwi10.

       Example2: Different codec parameters (for example, DM642 beta EVM 
       has AIC23 codec clock frequency 12.288Mhz).

           #define CODEC { 			\
	       AIC23_REG0_DEFAULT, 		\
	       AIC23_REG1_DEFAULT,		\
	       AIC23_REG2_DEFAULT,		\
	       AIC23_REG3_DEFAULT,		\
	       AIC23_REG4_DEFAULT,		\
	       AIC23_REG5_DEFAULT,		\
	       AIC23_REG6_DEFAULT,		\
	       AIC23_REG7_DEFAULT,		\
	       AIC23_REG8_12288,		\
	       AIC23_REG9_DEFAULT		\
	   }

	   EVMDM642_EDMA_AIC23_DevParams myParams =  {			\
    		EVMDM642_EDMA_AIC23_VERSION_1,				\
    		TRUE, 							\
    		C6X1X_EDMA_MCASP_EXTERNAL,				\
        	C6X1X_EDMA_MCASP_EXTERNAL,   				\
       		C6X1X_EDMA_MCASP_EXTERNAL,			   	\
    		EVMDM642_EDMA_AIC23_EDMA_ID_DEFAULT, 			\
    		-1, 							\
    		-1, 							\
    		NULL,  							\
    		EVMDM642_EDMA_AIC23_INTR_MASK_DEFAULT,                  \
    		EVMDM642_EDMA_AIC23_INTR_MASK_DEFAULT,                  \
    		EVMDM642_EDMA_AIC23_INTR_MASK_DEFAULT, 			\
    		CODEC							\
	    };
	   Pass "_myParams" to the User-Defined Device parameter.
       
	This example shows how to use codec parameter with codec clock rate 
	12.288Mhz.

Q3: If I change sampling frequency, do I need to change de-emphasis?
A3: Audio CD's are coded in a way so that they emphaize certain frequencies
    (as a kind of noise reduction), so an audio signal read from a CD needs to 
    be de-emphasized to get the correct signal back. As the most popular data
    rates from audio CD's are 32, 44.1, and 48Khz, they are included in the 
    codec settings. The other setttins in the data rate register are for 
    speech on the lower range and high-end audio on the upper range. Normally,
    they don't emphsize certain parts of the signal spectrum. Therefore, there
    is no de-emphsis setting for them.

    Hence, if you change sampling frequency from 44.1khz to 32 khz and are 
    doing an advanced audio application, you should consider modifying bits
    1-2 of Register 5 for de-emphasis. 

Q4: Where can I find the documentation for writing IOM drivers?
A4: The literature number is SPRU616, DSP/BIOS Device Driver Developer's Guide.

⌨️ 快捷键说明

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