天嵌 ARM开发社区

 找回密码
 注册
查看: 1913|回复: 2

中断求助

[复制链接]
hynh 发表于 2009-9-6 22:30:16 | 显示全部楼层 |阅读模式
我用中断模式来实现按键按下灯亮的功能,但是程序能够运行,按下按键后,灯不亮,检查了好久,仍然没发现时什么问题,麻烦大家给看看,谢谢!
#include"2440addr.h"

void int_initial(void)
{
rGPFCON=(2<<(0*2))|(2<<(1*2))|(2<<(2*2))|(2<<(4*2));//the F_gpio 0 1 2 4 is assigned INT mode
rGPFUP=0x0;//all F_gpio are up resistance
rINTMOD=0x0;//all interrup mode are IRQ mode
rINTMSK&= (~(1<<0))& (~(1<<1)) & (~(1<<2)) & (~(1<<4));//all interrupt ruquest are available
}

void led_initial(void)
{
rGPBCON =(1<<(5*2))|(1<<(6*2))|(1<<(7*2))|(1<<(8*2));//GPB5、6、7、8 are assigned output
rGPBUP=0x0;//all B_gpio are up resistance
rGPBDAT=0xffffff;
}

void delay(int a)
{
  int i=a;
   while(i--);
}

void __irq IntHandle()
{
unsigned long oft = rINTOFFSET;
delay(100);

  switch( oft )
    {
        // K4被按下
        case 0:
        {   
            rGPBDAT |= (0x0f<<5);   // 所有LED熄灭
            rGPBDAT &= ~(1<<8);      // LED4点亮
            break;
        }
        
        // K3被按下
        case 2:
        {   
            rGPBDAT |= (0x0f<<5);   // 所有LED熄灭       
            rGPBDAT &= ~(1<<7);      // LED3点亮
            break;
        }

        // K2被按下
        case 4:
        {   
            rGPBDAT |= (0x0f<<5);   // 所有LED熄灭
            rGPBDAT &= ~(1<<6);      // K2被按下,LED2点亮
            break;
        }
        case 1:
        {   
            rGPBDAT |= (0x0f<<5);   // 所有LED熄灭       
            rGPBDAT &= ~(1<<5);      // K1被按下,LED1点亮
            break;
        }

        default:
            break;
    }
     rSRCPND = 1<<oft;
     rINTPND = 1<<oft;
}

void Main()
{
int_initial();
led_initial();
while(1);
}
 楼主| hynh 发表于 2009-9-10 23:18:05 | 显示全部楼层
为什么没就没有人说以句话呢?哪怕是你不愿意帮忙。。。。。。世态炎凉。。。。。。。
gooogleman 发表于 2009-9-11 09:35:56 | 显示全部楼层
void __irq IntHandle()
要绑定到中断栈的..........你看看测试程序,
我这里ADS不给用,晚上回去帮你看看呗。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-5-19 18:17 , Processed in 1.062500 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表