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

📄 main.c

📁 DSP实验开发程序:信号发生器.学习使用CCS
💻 C
字号:
	#include "c5402mmr.h"
	#include "dsplib.h"
	#include "tms320.h"
	#include "math.h"
	#define McBSP0_DXR1  (*(volatile unsigned int *)0x0023)
	extern int MCBSP0RNUM;//直接调用汇编中的全局变量
	extern int admemory;
	extern int N1,DMANUMBER,BUFFERNO;
	extern int delaytime;
	extern int TESTN;
	extern int numflag;
	extern int templatenum;
	extern int timeintnum;
	extern int dmaflag;	
void  main()
{
	int i,j;
	int * DAram;
	int sin_tab[64];
	int speechbegin,speechtruebegin;
	ST1_ADDR->value=0x4800;//XF设置为0
	PMST_ADDR->value=0xefc0;//IPTR=1DF
	c54clkset(0x0f);	//设置dsp全速10Mhz运行
	IMR_ADDR->value=0x0000;//所有可屏蔽中断无效
	GPIOCR_ADDR->value=0x27;//HPI口设置为GPIO使用
	GPIOSR_ADDR->bitval.io5=0;   
	    for(i=0;i<64;i++)
		{
				sin_tab[i]=(int)(0x5000*sin(2*pi*i*1000/16000));
			}
		while(1)
			{


			    c54clkset(9);
			    numflag=1;
				templatenum=0;				//上面语句是初始化控制变量
				asm(" ssbx intm");
				IMR_ADDR->bitval.int0=1;
				IMR_ADDR->bitval.int1=1;
				asm(" rsbx intm");
				while(numflag==1)
				{
					;
				}					//等待按键计数
		    	templatenum=templatenum-1;

				mcbsp0xinit();//初始化mcbsp0的发送,使得其可以发送ad命令字数据
				adinit(0x813b);	//初始化ad73311,使其工作在设定的采样频率下,此处为16K并且进入采样模式
				dmaflag=1;
				DAram=(int *)0x0780;
				//for(i=0;i<226;i++)
				//{
				//	for(j=0;j<64;j++)
				//	{
				//		DAram[i*64+j]=sin_tab[j];
				//	}
				//}
				IMR_ADDR->value=0x0040;//开放dmac0中断
				asm(" rsbx intm");
				//启动dma传送da数据
				DMA_resetmy();
				DMA_init(0x0,(unsigned int)DAram,DXR10_BASE,0x3880-1,0x2000,0x4141);//20帧数据的数量是1760=06e0h
				DMAPREC_ADDR->value=0x01c1;//使能dmac0
				McBSP0_DXR1=*DAram;				//直接播放采样语音
				
				//while(dmaflag>0)
				//{
				//	;
				//}
				dmaflag=1;
				asm(" ssbx intm");
				
				
				SWWSR_ADDR->value=0x7249;//设置等待状态为1,使得LPC特征计算加快

								
				GPIOCR_ADDR->value=0x27;
				GPIOSR_ADDR->bitval.io5=0;//D100灯亮,指示特征计算完毕,可再次输入
				
				
				
				N1=-9;
				DMANUMBER=0;
				MCBSP0RNUM=0;
				numflag=1;
				templatenum=0;				//上面语句是重新初始化控制变量
				
			}			//训练的死循环结束
		
}

⌨️ 快捷键说明

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