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

📄 main.c

📁 DSP TMS320LF2407的一些实例程序
💻 C
字号:
/*外部数据RAM测试程序*/
#include "global.c" 
void SystemInit();
void RAM_Test();
void KissDog();
void delay(unsigned int k);
main()
{  

   SystemInit();          	/*系统初始化*/
  
   MCRC=MCRC & 0xFF00; 	    //IOPE0-7设为IO口模式
   PEDATDIR=0xFF00;   	    //所有LED=0, 

   RAM_Test();
   PEDATDIR=0xFFFF;  		//所有LED点亮  
   while(1)
   {
   		PEDATDIR = 0xFF00;
   		delay(50000);
   		PEDATDIR = 0xFFFF;
   		delay(50000);
   	} 
   
}

void delay(unsigned	int	 k)
{
	unsigned	int	 i;
	for (i=0;i<k;i++)	k=k;	
}	
void SystemInit() 
{  
 
	asm(" SETC	INTM ");	/* 关闭总中断 */
	asm(" CLRC  SXM  ");	/* 禁止符号位扩展 */ 
	asm(" CLRC  CNF  ");    /* B0块映射为 on-chip DARAM*/
	asm(" CLRC  OVM  ");    /* 累加器结果正常溢出*/
	SCSR1=0x82FC;         	/* 系统时钟CLKOUT=20*2=40M */
 							/* 打开ADC,EVA,EVB,CAN和SCI的时钟,系统时钟CLKOUT=40M */
	WDCR=0x006F;			/* 禁止看门狗,看门狗时钟64分频 */ 
	KissDog();    			/* 初始化看门狗 */  
    IFR=0xFFFF;				/* 清除中断标志 */
    IMR=0x0000;				      
    
} 
 
void RAM_Test()
{
  
    unsigned int i=0,j=0,t=0;  
    unsigned int *ExRamStart=(unsigned int *)0x8000;
 
     for(i=0;i<0x8000;i++)  
    	{  
      		
       		*(ExRamStart + i)=i;
       		if ( *(ExRamStart + i) != i)
       			while(1);
     	}

     for(i=0;i<0x8000;i++)  
    	{  
      		
       		*(ExRamStart + i)=0x5555;
       		if ( *(ExRamStart + i) != 0x5555)
       			while(1);
     	}
       	
     for (i=0;i<0x8000;i++)
     	{
       		*(ExRamStart + i)=0xAAAA;
       		if ( *(ExRamStart + i) != 0xAAAA)
       			while(1);
		}
		     	
}


void KissDog()				/*踢除看门狗 */
{
	WDKEY=0x5555;
	WDKEY=0xAAAA;
}

⌨️ 快捷键说明

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