资源简介
dsp上代码 用于实现自动增益功能,用c语言编码,

代码片段和文件信息
/*****************************************************************************/
/* Filename: agc_aduio.c */
/* Author:ZhangYong */
/* 2002-12 */
/*****************************************************************************/
#include “agc_face.h“
#include “agc_func.h“
int dIndOut;
int Read_BSP1(void);
void Write_BSP1(int);
void Led_Light(void);
int AGC_audio(int);
// Main program
void main()
{
init_board();
while (1)
{
dIn=Read_BSP1();
dOut=AGC_audio(dIn);
Write_BSP1(dOut);
Led_Light();
}
}
int Read_BSP1(void)
{
int dDataIn;
*(volatile u16 *)SPSA_ADDR(1)=SPCR1_SUBADDR; //Receive Data from McBSP1
while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
dDataIn=*(volatile u16*)DRR1_ADDR(1);
return dDataIn;
}
void Write_BSP1(int dDataOut)
{
*(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR; //Transmit Data To McBSP1
while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
*(volatile u16 *)DXR1_ADDR(1)=dDataOut;
}
void Led_Light(void)
{
static int i=0;
if(i>1024)
{
// *(int *)(0x0007)^=0x2000;
*(volatile u16 *)reg_ST1 ^= 0x2000; //Every 1024 times XF changed
i=0;
}
i++;
}
int AGC_audio(int AGC_in)
{
int AGC_out;
static int dTime=0;
static float AGC_Coff=1.0;
static int maxAGC_in=0;
static int maxArrIn=0;
if(AGC_in>maxArrIn)
maxArrIn=AGC_in;
if(-1*AGC_in>maxArrIn)
maxArrIn=-1*AGC_in;
if(dTime>4096)
{
if(maxArrIn maxAGC_in=maxArrIn;
maxArrIn=0;
dTime=0;
}
dTime++;
if(AGC_in > maxAGC_in)
{
maxAGC_in=AGC_in;
if(maxAGC_in>1)
AGC_Coff=20000.0/maxAGC_in;
}
if((-1*AGC_in)>maxAGC_in)
{
maxAGC_in=-1*AGC_in;
if(maxAGC_in>1)
AGC_Coff=20000.0/maxAGC_in;
}
AGC_out=AGC_in*AGC_Coff;
if(AGC_out>20000)
AGC_out=20000;
if(AGC_out<-20000)
AGC_out=-20000;
return AGC_out;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2005-06-09 15:15 agc_audio\
文件 2016 2003-05-31 15:36 agc_audio\agc_audio.c
文件 2016 2003-01-05 11:54 agc_audio\agc_audio.c.bak
文件 501 2003-01-05 10:45 agc_audio\agc_audio.cmd
文件 2837 2003-06-07 16:58 agc_audio\agc_audio.paf
文件 877 2003-01-05 13:43 agc_audio\agc_audio.pjt
文件 2743 2003-01-05 12:05 agc_audio\agc_face.h
文件 2897 2003-01-05 12:05 agc_audio\agc_func.h
文件 472 2003-01-05 12:05 agc_audio\cc_build_Debug.log
文件 462 2003-01-05 12:16 agc_audio\cc_build_Release.log
目录 0 2005-06-09 15:15 agc_audio\Debug\
文件 294 2003-01-05 12:05 agc_audio\Debug.lkf
文件 294 2003-01-05 12:05 agc_audio\Debug.lkv
目录 0 2005-06-09 15:15 agc_audio\Release\
文件 300 2003-01-05 12:15 agc_audio\Release.lkf
文件 300 2003-01-05 12:15 agc_audio\Release.lkv
文件 393 2003-01-04 15:24 agc_audio\vectors.asm
- 上一篇:xm
l解析 CMarkup类 c++ - 下一篇:银行排队系统课程设计
相关资源
- DSP28335永磁同步电机控制
- dsp控制永磁同步电机
- dsp课程设计——语音加密.zip
- 2014年DSP大作业
- 基于C6000系列DSP的C程序包
- 变频器源码 DSPIC30F5015电机控制专用芯
- 数字信号处理C语言程序集DSP算法大全
- ti官方DSP2812例程
- DSP 77个C语言程序 包括FFTFIR IIR等的D
- FPGA并行编程(Xilinx官方翻译版本)
- C/C++语言硬件程序设计——基于TMS32
- TMS320C6xx系列DSP编程工具与指南
- ADSP SHARC系列DSP应用系统设计及附赠数
- dsp
- 顾卫刚手把手教你学DSP基于2812
- DSP2812的C语言例程及开发板相关资料
- 零基础学TMS320F281x DSP C语言开发.pdf
- DSPIC数字信号控制器C程序开发及应用
- 手把手教你学DSP:基于TMS320F28335 pdf电
- 数字图像处理各种算法 C语言实现
- DSP的PID控制程序
- dsp2812三相PWM逆变源程序C++
- TMS320f28035 eCAN 主机从机通信测试
- 一个基于DSP的软件无线电的c语言设计
- DSPF2812双闭环控制电机
- 第6章 C语言和汇编语言混合编程(
- dsp 54x生成正弦波的C语言样例
- DSP小波变换源代码
- TI官方2833xflash擦写api文档与库安装文
- 14个经典DSP实验测试程序_C语言
评论
共有 条评论