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

📄 sys.c

📁 使用TI DSP 2407A 进行开发的源代码
💻 C
字号:

#include "sys.h"

typedef  volatile  struct  sys_reg  SYS_REG_STRUCT;
SYS_REG_STRUCT  * sys_reg_ptr; 

void dsp_setup() 
{ 
   unsigned int temp=0;

   asm (" clrc CNF ");      //B0区被配置为数据空间
  
/*––––––––––––––––––––––––*/
/* Disable watchdog timer */
/*––––––––––––––––––––––––*/
   temp = WDCR;
   temp = temp | 0x68;
   WDCR = temp;

}

void set_system(void)
{
  unsigned int temp=0;

  temp = SCSR1;
  temp |= (ADC_CLKEN | SCI_CLKEN | EVB_CLKEN | EVA_CLKEN);
   //temp |= (ADC_CLKEN | SCI_CLKEN | EVB_CLKEN );
  SCSR1 = temp;
}

void set_pll( void )
{
  unsigned int temp=0;

  temp = SCSR1;
  temp &= 0xF1FF;
  temp |= CLKPS_2;	    // 
  SCSR1 = temp;
  
  // wait_ms(200);
}

void disable_interrupts()
{
     asm (" setc  INTM");
   
    
}


void enable_interrupts()
 {
    IFR = 0xFFFF; /* Clear pending interrupts */
    IMR = 0x003F; /* Enable all CPU Interrupts: */

    asm (" clrc  INTM "); /* Global interrupt enable */
}

void sysinit(void)
{
   
    

//	sys_reg_ptr-> SCSR1=0x0;
//	sys_reg_ptr-> SCSR2=0x0;

	disable_interrupts();
	dsp_setup();
	set_pll();
	set_system();
	enable_interrupts();

}


unsigned int wait_us(unsigned int delay_val )
{
	unsigned int temp,i;
	temp = delay_val/4;
	for (i=0;i<temp;i++)
	{
	i=i;
    }

    return;
}

unsigned int wait_ms(unsigned int delay_val )
{
	 unsigned int i;
     for ( i = 0; i < delay_val; i++ )
     {
 	 wait_us(970);
     }
}

unsigned int wait_second(unsigned int delay_val )
{
	unsigned  int i;
/*    unsigned int ms_ctr;  */

    for ( i = 0; i < delay_val; i++ )
    {
	wait_ms(995);
    }
}

unsigned int wait_minute(unsigned int delay_val )
{
	 unsigned int i;
/*    unsigned int ms_ctr;  */

    for ( i = 0; i < delay_val; i++ )
    {
	wait_ms(60);
    }
}







⌨️ 快捷键说明

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