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

📄 sysinit.c

📁 文件系统在DSP5509上的实现
💻 C
字号:
/*********************************************************** 
                   系统变量初始化
 
***********************************************************/


#include "VoiceProcess.h"
int ioport *port0;
Uint16 old_intm;
Uint16 rcvEventId2;
Uint16 rcvEventId1;
/*--------------------------------------*/
  int checkflag=0;
 
/*************************************************************/

void dsp_init();
int mcbsp_init();
void GPIO_init();
void sys_init();


/*------------------------------ 设定DSP工作模式 -----------*/ 
void dsp_init()                          
{  
	port0=(int *)0x6c00;
    *port0=0x1;
    *(int *)0x0=0x1000; //同步串口2接收中断使能
}


int mcbsp_init()
{
//	串口1的初始化	
	old_intm = IRQ_globalEnable();

	// Get Event Id's associated with MCBSP 0 receive and transmit 
  	rcvEventId1 = MCBSP_getRcvEventId(hMcbsp1);

	// Enable receive/transmit interrupts   
  	IRQ_enable(rcvEventId1);          

	/* Start MCBSP. The MCBSP_Handle object, hMcbsp0 has been predefined */
	/* in the code automatically generated by the DSPBIOS/CCSL GUI config*/
	MCBSP_start(hMcbsp1,
          MCBSP_XMIT_START | MCBSP_RCV_START |
          MCBSP_SRGR_START | MCBSP_SRGR_FRAMESYNC,
            0x300u);
	MCBSP_ASSERT_HANDLE(hMcbsp1,return 10); 
   	return 1;
}
/*------------------------- 串口1、串口2的初始化 --------------------*/
/*int mcbsp_init()
{	
	old_intm = IRQ_globalEnable();
     
                                                  
  	rcvEventId2 = MCBSP_getRcvEventId(hMcbsp2);
  	rcvEventId1 = MCBSP_getRcvEventId(hMcbsp1); 
  	
   
    IRQ_clear(rcvEventId2); 
    IRQ_clear(rcvEventId1); 
    
                     
  	IRQ_enable(rcvEventId2);   
  
  	IRQ_disable(rcvEventId1);
   
 	MCBSP_start(hMcbsp1,
          MCBSP_XMIT_START | MCBSP_RCV_START |
          MCBSP_SRGR_START | MCBSP_SRGR_FRAMESYNC,
            0x300u);   	
 	MCBSP_start(hMcbsp2,
          MCBSP_XMIT_START | MCBSP_RCV_START |
          MCBSP_SRGR_START | MCBSP_SRGR_FRAMESYNC,
            0x300u); 
     	 	                         
	MCBSP_ASSERT_HANDLE(hMcbsp1,return 10); 
	MCBSP_ASSERT_HANDLE(hMcbsp2,return 11);

   return 1;
}
*/
/*-------------- 初始化GPIO0~GPIO7,设定GPIO引脚为输出 ----------*/
void GPIO_init()
{   

 	GPIO_pinEnable(GPIO_PIN1);
    GPIO_pinDirection(GPIO_PIN1,GPIO_OUTPUT);
    
    GPIO_pinEnable(GPIO_PIN2);
    GPIO_pinDirection(GPIO_PIN2,GPIO_OUTPUT);
    
    GPIO_pinEnable(GPIO_PIN0);
    GPIO_pinDirection(GPIO_PIN0,GPIO_OUTPUT);
    
    GPIO_pinEnable(GPIO_PIN3);
    GPIO_pinDirection(GPIO_PIN3,GPIO_OUTPUT);
    
    GPIO_pinEnable(GPIO_PIN4);
    GPIO_pinDirection(GPIO_PIN4,GPIO_OUTPUT);
    
    GPIO_pinEnable(GPIO_PIN6);   //Led
    GPIO_pinDirection(GPIO_PIN6,GPIO_OUTPUT); 
    
    GPIO_pinEnable(GPIO_PIN7);   //led
    GPIO_pinDirection(GPIO_PIN7,GPIO_OUTPUT);
    
    GPIO_pinEnable(GPIO_PIN10);   //dog
    GPIO_pinDirection(GPIO_PIN10,GPIO_OUTPUT);
   //PIO_pinWrite(GPIO_PIN9,0);
    
    //GPIO_RSET(IODIR,0x0ff);//设置GPIO口为输出,某位"0"为输入、"1"为输出
           
}


void sys_init()
{
	int a;
  	checkflag=0;     
abc:
  	a=0;                     			
 	dsp_init();                            //设定DSP工作模式
 
 	GPIO_init();                           //GPIO0~GPIO7的初始化 
  
 	a=mcbsp_init();                          //串行口1、2的初始化
 	if(a!=1)
 	   goto abc;
}
 




⌨️ 快捷键说明

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