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

📄 main.c

📁 s3c2410上的中断控制实验代码
💻 C
字号:
#include "2410lib.h"
#include "2410addr.h"
#define rGPFCON (*(volatile unsigned *)0x56000050)
#define rGPFDAT (*(volatile unsigned *)0x56000054)
#define rGPFUP (*(volatile unsigned *)0x56000058)
//SB1202->EINT0
void __irq Eint0Handler();//外部函数的声明

void led_init(void)
{

	rGPFCON=(rGPFCON&(~(0xff<<8)))|(0x55<<8);
	rGPFUP=rGPFUP|(0x0f<<4);
	rGPFDAT=rGPFDAT&(~(0x0f<<4));
}

void led_on_off(void)
{
	rGPFDAT=rGPFDAT^(0x0f<<4);// 异或,对应的位取反
}

 void eint0_init(void)
 {
 	 //下面这四条语句是设置GPF0的工作模式和请求电平触发方式  
	rGPFCON=(rGPFCON|0x03)&0xFFFFFFFE;//GPF0设置为EINT0
    rGPFUP|=0x01;   //disable GPF0 pull up	
  	rEXTINT0 &= ~(7);	
	rEXTINT0 |=  (2);	//set eint0 falling edge int
 }



int Main()
{
	  
	  //下面这三条语句中的作用是初始化串口控制器,可以暂不深究 
   	 Port_Init();   	 
     Uart_Select(0);
     Uart_Init(0,115200);
     //
     

    
    //将外部中断函数填写到中断向量表中并使能中断
   led_init();
   eint0_init();
    pISR_EINT0=(unsigned)Eint0Handler;
    EnableIrq(BIT_EINT0);//开中断
    
    while(1)
    {     
    Uart_Printf("the main is running\n");
    Delay(500);
         
    }
     
}


⌨️ 快捷键说明

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