0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Tiny4412之按键驱动电路图分析

454398 来源:博客园 作者: z572089387 2020-10-07 15:22 次阅读

按键驱动跟之前的LED,蜂鸣器的方法类似;通过底板,核心板我们可以看到按键的电路图:

通过电路图我们可以看出,当按键按下去为低电平,松开为高电平;所以我们要检测XEINT26的状态,通过芯片手册找到GPX3_2的说明;

有芯片手册可知:GPX3CON为0为检测,GPAC3DAT为1是高电平下面贴出代码:按键KEY1,KEY2,KEY3分别控制输出字符串,KEY4控制退出:

#define GPX3CON (*(volatile unsigned long *)0x11000c60)
#define GPX3DAT (*(volatile unsigned long *)0x11000c64)
int (*printf)(char *, ...) = 0xc3e114d8;
void (*udelay)(int) = 0xc3e25f90;//延时程序
int main()
{
GPX3CON &= ~(0xffff << 8);
while(1) {
/*key1*/
if((GPX3DAT & (0x1 << 2)) == 0) {
printf("key 1 down\n");
printf("hello world\n");
udelay(250000);
}
/*key2*/
if((GPX3DAT & (0x1 << 3)) == 0) {
printf("key 2 down\n");
printf("good monig\n");
udelay(250000);
}
/*key3*/
if((GPX3DAT & (0x1 << 4)) == 0) {
printf("key 3 down\n");
printf("welcom key 3\n");
udelay(250000);
}
/*key4*/
if((GPX3DAT & (0x1 << 5)) == 0) {
printf("key 4 down\n");
break;
}
}
printf("Over\n");
return 0;
}

开发板运行结果如下:


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    240

    文章

    23128

    浏览量

    658245
  • 蜂鸣器
    +关注

    关注

    12

    文章

    889

    浏览量

    45860
  • 按键驱动
    +关注

    关注

    0

    文章

    11

    浏览量

    7126
收藏 人收藏

    评论

    相关推荐

    (exynos4412)Tiny4412裸机开发-按键检测

    上篇文章已经介绍过LED裸机编程,完成LED灯控制,这篇文章就介绍利用这款开发板继续完成按键编程,了解GPIO口基本的输入输出配置。
    的头像 发表于 08-11 09:50 1773次阅读

    【代码】tiny4412裸机Demo

    ` 本帖最后由 zsm_linux 于 2014-8-15 10:31 编辑 我想肯定很多人需要,下载自CSDN, 为数不多的4412资料资料包含: 需要资料联系QQ 1402284892`
    发表于 08-15 10:05

    免费试用“Tiny4412开发板——友善臂Cortex-A9”

    本帖最后由 L490351555 于 2015-8-19 08:38 编辑 大家好,这两天咱们的论坛搞了一个开发板投票试用活动。现在有一个投票项就是“Tiny4412开发板——友善
    发表于 08-18 19:09

    友善臂Ubuntu使用手册

    友善臂Ubuntu使用手册本手册介绍如何在友善臂开发板 Tiny4412 以及 NanoPC-T1 上安装和使用 Ubuntu 系统。
    发表于 12-18 10:42

    4412烧Android时不能启动,停在ANDROID界面

    我也大家玩高大上的4412了,跟着最新光盘提供的"tiny4412用户烧写"手册,刷ANDROID时,烧写可以成功,但就是启动不了,一直停在ANDROID图标界面。串口也一直打印
    发表于 05-13 07:45

    请问在4412的USB驱动程序里该如何修改?

    tiny4412遇到一个问题,4412作为USB设备与作为主机的PC连接,物理连接是USB线,在4412上需要把USB上的特殊数据解析出来,当做并口数据处理。请问在4412的USB
    发表于 05-17 00:12

    Tiny4412-Uboot启动后无法加载uImage

    好吧。。在这里先祈求,有哪位大大,或者老师,能关注下。个人一度试图移植tiny4412的uboot和kernel还有根文件系统。。。。。然后顺带学习一下设备树的用法这个是uboot配置ls/dev
    发表于 08-30 05:45

    TINY4412 UART程序设计得相关资料分享

    嵌入式实验: TINY4412 UART 程序设计一、实验目的熟悉UART通信相关的寄存器的功能和设置方法,设置引脚复用,选择UART接收和发送对应的引脚用于UART通信,数据流格式设置,设置
    发表于 11-09 06:11

    如何实现Tiny4412通过NRF24L01 2.4G无线模块发送数据呢

    Linux下SPI设备驱动该怎样去编写呢?如何实现Tiny4412通过NRF24L01 2.4G无线模块发送数据呢?
    发表于 12-17 06:36

    iny4412嵌入式Linux操作系统启动流程是怎样的

    本次介绍一下友善tiny4412嵌入式Linux操作系统分析首先,可以从官方提供的用户手册中得到这样一张,它简单表达了裸机烧写启动系统的流程,不过这张图中缺少对BL2的描述,所以
    发表于 12-20 07:50

    按键脉冲复位电路图

    按键脉冲复位电路图
    发表于 04-05 09:38 5703次阅读
    <b class='flag-5'>按键</b>脉冲复位<b class='flag-5'>电路图</b>

    如何使用ARM contexA9开发板进行LED驱动编程的详细资料说明

    关于友善臂出的这款contexA9开发板,目前在网络上的资源较少,特别是内核的,非常少,鉴于这种情况,我将会写一个系列的驱动来做关于tiny4412这款板子开发的总结。
    发表于 05-07 18:21 2次下载
    如何使用ARM contexA9开发板进行LED<b class='flag-5'>驱动</b>编程的详细资料说明

    友善Tiny4412核心板介绍

    Tiny4412是一款高性能的四核Cortex-A9核心板,由广州友善臂设计、生产和发行销售。
    的头像 发表于 11-05 17:40 1.2w次阅读
    友善<b class='flag-5'>之</b>臂<b class='flag-5'>Tiny4412</b>核心板介绍

    嵌入式实验: TINY4412 UART 程序设计

    嵌入式实验: TINY4412 UART 程序设计一、实验目的熟悉UART通信相关的寄存器的功能和设置方法,设置引脚复用,选择UART接收和发送对应的引脚用于UART通信,数据流格式设置,设置
    发表于 11-03 20:06 13次下载
    嵌入式实验: <b class='flag-5'>TINY4412</b> UART 程序设计

    Linux驱动开发-编写RFID-RC522射频刷卡模块驱动

    当前文章介绍如果在Linux系统下编写MF-RC522模块驱动,配合应用层,完成IC卡号读取,扇区读写,密码验证等等。当前开发板采用友善Tiny4412,芯片是三星的EXYNOS4412
    的头像 发表于 09-17 15:14 2967次阅读
    Linux<b class='flag-5'>驱动</b>开发-编写RFID-RC522射频刷卡模块<b class='flag-5'>驱动</b>