资源简介
DSP原理及其C编程开发技术的源码.
代码片段和文件信息
//AdaptIDFIR.c Adaptive FIR for system ID of an FIR (uses C67 tools)
#include “bp55.cof“ //fixed FIR filter coefficients
#include “noise_gen.h“ //support noise generation file
#define beta 1E-13 //rate of convergence
#define WLENGTH 60 //# of coefffor adaptive FIR
float w[WLENGTH+1]; //buffer coeff for adaptive FIR
int dly_adapt[WLENGTH+1]; //buffer samples of adaptive FIR
int dly_fix[N+1]; //buffer samples of fixed FIR
short out_type = 1; //output for adaptive/fixed FIR
int fb; //feedback variable
shift_reg sreg; //shift register
int prand(void) //pseudo-random sequence {-11}
{
int prnseq;
if(sreg.bt.b0)
prnseq = -8000; //scaled negative noise level
else
prnseq = 8000; //scaled positive noise level
fb =(sreg.bt.b0)^(sreg.bt.b1); //XOR bits 01
fb^=(sreg.bt.b11)^(sreg.bt.b13); //with bits 1113 -> fb
sreg.regval<<=1;
sreg.bt.b0=fb; //close feedback path
return prnseq; //return noise sequence
}
interrupt void c_int11() //ISR
{
int i;
int fir_out = 0; //init output of fixed FIR
int adaptfir_out = 0; //init output of adapt FIR
float E; //error=diff of fixed/adapt out
dly_fix[0] = prand(); //input noise to fixed FIR
dly_adapt[0]=dly_fix[0]; //as well as to adaptive FIR
for (i = N-1; i>= 0; i--)
{
fir_out +=(h[i]*dly_fix[i]); //fixed FIR filter output
dly_fix[i+1] = dly_fix[i]; //update samples of fixed FIR
}
for (i = 0; i < WLENGTH; i++)
adaptfir_out +=(w[i]*dly_adapt[i]); //adaptive FIR filter output
E = fir_out - adaptfir_out; //error signal
for (i = WLENGTH-1; i >= 0; i--)
{
w[i] = w[i]+(beta*E*dly_adapt[i]); //update weights of adaptive FIR
dly_adapt[i+1] = dly_adapt[i]; //update samples of adaptive FIR
}
if (out_type == 1) //slider position for adapt FIR
output_sample(adaptfir_out); //output of adaptive FIR filter
else if (out_type == 2) //slider position for fixed FIR
output_sample(fir_out); //output of fixed FIR filter
return;
}
void main()
{
int T=0 i=0;
for (i = 0; i < WLENGTH; i++)
{
w[i] = 0.0; //init coeff for adaptive FIR
dly_adapt[i] = 0; //init buffer for adaptive FIR
}
for (T = 0; T < N; T++)
dly_fix[T] = 0; //init buffer for fixed FIR
sreg.regval=0xFFFF; //initial seed value
fb = 1; //initial feevack value
comm_intr(); //init DSK codec McBSP
while (1); //infinite loop
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2008-11-28 08:56 dsp
文件 924 2001-10-29 19:40 dsp\readme.txt
..AD..R 0 2008-11-28 08:56 dsp\Twosumlasmfloat
文件 19456 2001-08-27 06:31 dsp\Twosumlasmfloat\twosumlasmfloat.doc
..AD..R 0 2008-11-28 08:56 dsp\Twosumlasmfix
文件 19456 2001-08-27 06:30 dsp\Twosumlasmfix\twosumlasmfix.doc
..AD..R 0 2008-11-28 08:56 dsp\Twosumfloat
文件 19456 2001-08-27 06:35 dsp\Twosumfloat\twosumfloat.doc
..AD..R 0 2008-11-28 08:56 dsp\Twosumfix
文件 19456 2001-08-27 06:33 dsp\Twosumfix\twosumfix.doc
..AD..R 0 2008-11-28 08:56 dsp\Twosum
文件 19456 2001-08-27 06:28 dsp\Twosum\twosum.doc
..AD..R 0 2008-11-28 08:56 dsp\two_tones
文件 3396 2001-08-17 15:30 dsp\two_tones\cc_build_Debug.log
文件 1614 2001-07-21 04:34 dsp\two_tones\two_tones.c
文件 15614 2001-05-06 18:56 dsp\two_tones\two_tones.out
文件 892 2001-08-17 15:36 dsp\two_tones\two_tones.pjt
..AD..R 0 2008-11-28 08:56 dsp\SweepDE
文件 22799 2001-08-22 03:38 dsp\SweepDE\SweepDE.out
文件 863 2001-08-22 03:41 dsp\SweepDE\SweepDE.pjt
文件 2531 2001-08-22 03:38 dsp\SweepDE\cc_build_Debug.log
文件 2015 2001-07-21 05:06 dsp\SweepDE\sweepDE.c
..AD..R 0 2008-11-28 08:56 dsp\sweep8000
文件 969 2001-07-09 06:00 dsp\sweep8000\Sweep8000.c
文件 30427 2001-08-22 03:35 dsp\sweep8000\Sweep8000.out
文件 872 2001-08-22 03:35 dsp\sweep8000\Sweep8000.pjt
文件 2415 2001-08-22 03:34 dsp\sweep8000\cc_build_Debug.log
文件 45702 2001-07-09 08:11 dsp\sweep8000\sine8000_table.h
..AD..R 0 2008-11-28 08:56 dsp\Support
文件 559 2001-08-15 05:18 dsp\Support\C6xdsk.cmd
............此处省略512个文件信息
相关资源
- 获取图片每个像素点的rgb值源码
- Qt软件编程的心电监测平台.rar
- 《测量平差程序设计》宋力杰编著一
- 校园失物招领系统原创开源源码
- STEP5编程软件
- FLASH拼图游戏源码
- LogiCAD编程软件
- 操作系统大型实验报告加源码
- 作业管理系统源码带论文
- 班级管理系统源码课程设计
- 操作系统实验指导——基于Linux内核完
- delphi实现谷歌翻译源码.zip
- [精品]代码整洁之道.epub
- 计算机专业毕设论文源码任务书开题
- 基于安卓仓库管理软件源码
- RT-THREAD 编程指南.pdf
- AP6212最新驱动源码 bcmdhd.1.579.77.41.x.
- 中国象棋人机博弈源码
- STM32 LCD12864带日历时钟功能的电子密
- 学生在线选课系统源码
- KTV点歌系统.zip
- MAX+plus Ⅱ实现的计算机组成原理课设
- openfoam编程指南
- 南方数据源码.zip
- DNF最新源码.rar
- vue2.0+node.js+MongoDB全栈打造商城-源码
- 计算机原理硬件实验一8255A可编程并行
- 实现QQ注册登录并保存注册信息源码
- app inventor 打地鼠
- STM32F407ZGT6串口通信源码
评论
共有 条评论