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

📄 main.c

📁 使用DSP的MCBSP与EDMA连接ADC和DAC,进行信号的采样与重建
💻 C
字号:
#include "config2cfg.h"
#include <csl.h>
#include <csl_mcbsp.h>
#include <csl_edma.h>
#include "tanln.h"

void main(void)
{	
	Edma_init();	
	LOG_printf(&trace,"the main function is correct");
}
							   
void mcbsp_init(void) 
{   
	MCBSP_start ( hMcbsp0, MCBSP_RCV_START | MCBSP_XMIT_START | MCBSP_SRGR_START | MCBSP_SRGR_FRAMESYNC, 0x8000);  
	IRQ_clear(IRQ_EVT_XINT0);	
	IRQ_enable(IRQ_EVT_XINT0); 
}

void Edma_init(void)
{	
	IRQ_clear(IRQ_EVT_EDMAINT);
	IRQ_enable(IRQ_EVT_EDMAINT);
	
	EDMA_intClear(13);
	EDMA_intEnable(13);
	
	MCBSP_start(hMcbsp0, MCBSP_RCV_START | MCBSP_XMIT_START | MCBSP_SRGR_START | MCBSP_SRGR_FRAMESYNC, 0x8000);
}

void DAC_ISR(void)
{	
	static int s_swa_TempDataSim;
	
	s_swa_TempDataSim =  g_swa_MatlabSinDataInput[g_sw_MatsinDataCnt++];
	
	MCBSP_write(hMcbsp0 , s_swa_TempDataSim);

 	g_sw_MatsinDataCnt &= 99;
 	
 	LOG_printf(&trace,"Here Recruiting");
}

void Edma_ISR(void)//保证EDMA的中断率
{	
	static unsigned int u_sc_PingPongFlg = PING_STATE;
	int i; 
  	
  	EDMA_intClear(13);
  	
 	LOG_printf(&trace, "Enter Edma ISR");
  	//工程上需要通过多个区域的缓冲来保证数据流量控制
 	if(u_sc_PingPongFlg == PING_STATE)
 	{
 		for ( i = 0 ; i < 16 ; i++ )
 		{
  		    //g_swd_TxpingData[i] = (g_swd_RxpongData[i])<<2;
			//a
			
			
			g_uhwa_AdcSmplBuff[g_uw_AdcSmplCnt++] =  g_swd_RxpingData[i];
  			
  			g_uw_AdcSmplCnt &= 1023; 
  			LOG_printf(&trace, "twics"); 
   		}
   		
   		LOG_printf(&trace, "Copy From Ping Buff"); 
   		
   		u_sc_PingPongFlg = 	PONG_STATE;
 	}
 	else
 	{
 		for ( i = 0 ; i < 16 ; i++ )
 		{
 		//g_swd_TxpongData[i] = (g_swd_RxpingData[i])<<2;
  			g_uhwa_AdcSmplBuff[g_uw_AdcSmplCnt++] =  g_swd_RxpongData[i];
  			
  			g_uw_AdcSmplCnt &= 1023;
  		}	 	
   		LOG_printf(&trace, "Copy From Pong Buff"); 
   		
   		u_sc_PingPongFlg = 	PING_STATE;
 	}
}


void ADC_ISR(void)
{
	int i;
  	for ( i = 0 ; i < 20 ; i++ )
	{  	
		g_uhwa_AdcSmplBuff[g_uw_AdcSmplCnt++] =  g_swa_MatlabSinDataInput[i] ;
 	 	g_uw_AdcSmplCnt &= 1023; 
	}
}

⌨️ 快捷键说明

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