天嵌 ARM开发社区

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

#define CPLD_BANK0_BASE 0XE0000000请问这是什么地址

[复制链接]
bdyz1016 发表于 2013-6-8 15:57:15 | 显示全部楼层 |阅读模式
#define CPLD_BANK0_BASE (0XE0000000)
static int __init s3c2410_key_init(void)
{
    int ret;
    // 初始化Bank6设置
        unsigned int bswcon = inl((unsigned int)S3C2410_BWSCON);
             bswcon = (bswcon & 0xFFFCFFFF) | 0x00000000;
             outl(bswcon,(unsigned int)S3C2410_BWSCON);
             bswcon = inl((unsigned int)S3C2410_BWSCON);
        注释说初始化bank6,bank6不是27-24吗

             outb(0xFF,0xE0000000+0x02600000);  
        outb(0xF9,0xE0000000+0x02600000);
             .......
static irqreturn_t key_interrupt(int irq, void *dev_id, struct pt_regs *regs)
{
  unsigned char vector,tmp;
   
  vector = inb(CPLD_BANK0_BASE + 0x02200000);                              
  tmp = inb(CPLD_BANK0_BASE + 0x02600000);                                 
  if(0 == (vector & 0x4)){
    printk("key1\n");
    outb(tmp | (1<<2), CPLD_BANK0_BASE+0x02600000);   
    inb(CPLD_BANK0_BASE + 0x02600000);
    outb(tmp & (~(1<<2)), CPLD_BANK0_BASE+0x02600000);  
  }
  else if(0 == (vector & 0x2)){
    printk("key2\n");
    outb(tmp | (1<<1), CPLD_BANK0_BASE+0x02600000);     
    inb(CPLD_BANK0_BASE + 0x02600000);
    outb(tmp & (~(1<<1)), CPLD_BANK0_BASE+0x02600000);   
  }

  return IRQ_HANDLED;  
}
亚瑟王 发表于 2013-6-9 09:53:56 | 显示全部楼层
不知道你贴的代码从哪里来的,在我的印象中天嵌科技没有提供过类似的代码的。
 楼主| bdyz1016 发表于 2013-6-9 12:07:33 | 显示全部楼层
不是天嵌的,我们教材上的。是个按键中断的,用到了CPLD
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-5-16 04:01 , Processed in 1.078125 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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