【OK210试用体验】裸奔GPIO输入&KEY - 在线问答 - 电子技术论坛 - 最好最受欢迎电子论坛!

【OK210试用体验】裸奔GPIO输入&KEY

dvd1478 ( 楼主 ) 2015-9-6 10:28:40  显示全部楼层
1.png
2.png
除是普通引脚的输入外,还可以用外部中断
普通引脚输入读取 代码如下
#define MP0_4CON (*(volatile unsigned long *)0xE0200340)
#define MP0_4DAT (*(volatile unsigned long *)0xE0200344)
#define MP0_4PUD        (*(volatile unsigned long *)0xE0200348)
#define GPD0CON   (*(volatile unsigned long *)0xE02000A0)//buzzer
#define GPD0DAT (*(volatile unsigned long *)0xE02000A4)//buzzer
#define GPH0CON   (*(volatile unsigned long *)0xE0200C00)//key
#define GPH0DAT   (*(volatile unsigned long *)0xE0200C04)//key
void init(void)
{
    GPD0CON&= ~(0xF << 0);
    MP0_4CON = (MP0_4CON & ~0xFFFF0000) | 0x11110000;
    MP0_4PUD=(0x55<<16)&MP0_4PUD;
    MP0_4DAT =0xf<<4;
    GPH0CON &=0x00000FFF;
}
void main(void)
{
    init();
while(1)//循环检测按键是否按下
{
  if(GPH0DAT &(1<<3))//按键1未按下 k1  back
  {
   MP0_4DAT |=1<<4;//off
  }
  else//按键1按下
  {
   MP0_4DAT &=~(1<<4);//on
  }
     if(GPH0DAT &(1<<4))//k2  home
  {
   MP0_4DAT |=1<<5;//off
  }
  else
  {
   MP0_4DAT &=~(1<<5);//on
  }
         if(GPH0DAT &(1<<5))//k3 menu
  {
   MP0_4DAT |=1<<6;//off
  }
  else
  {
   MP0_4DAT &=~(1<<6);//on
  }
         if(GPH0DAT &(1<<6))//k4 power
  {
   MP0_4DAT |=1<<7;//off
  }
  else
  {
   MP0_4DAT &=~(1<<7);//on
  }
  if(GPH0DAT &(1<<7))//k5    search
  {
   MP0_4DAT |=0xf<<4;//all off
  }
  else
  {
   MP0_4DAT &=~(0xf<<4);//all on
  }
}
}


2个回复

himol 发表于 2015-9-12 18:22:40
你好!!!我是新手。。。。。我也申请到ok210的板子  我一直看ok6410 。。。有个问题没搞清。。。6410有j—link可以进行程序的下载和调试。。。而ok210在裸机的情况下怎么下载调试。。。谢谢
dvd1478 发表于 2015-9-14 21:16:52
himol 发表于 2015-9-12 18:22
你好!!!我是新手。。。。。我也申请到ok210的板子  我一直看ok6410 。。。有个问题没搞清。。。6410有j—link可以进行程序的下载和调试。。。而ok210在裸机的情况下怎么下载调试。。。谢谢

9、【OK210试用体验】程序调试与DNW下载(8.30)
https://bbs.elecfans.com/jishu_509084_1_1.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则


关闭

站长推荐上一条 /6 下一条

小黑屋|手机版|Archiver|电子发烧友 ( 湘ICP备2023018690号 )

GMT+8, 2024-3-28 23:43 , Processed in 0.420069 second(s), Total 59, Slave 40 queries .

Powered by 电子发烧友网

© 2015 bbs.elecfans.com

微信扫描
快速回复 返回顶部 返回列表