查看: 1477|回复: 0

[分享] 【NXP OKdo E1双核Cortex M33开发板】-中断和按键

[复制链接]
  • TA的每日心情
    开心
    2024-3-26 15:16
  • 签到天数: 266 天

    [LV.8]以坛为家I

    3298

    主题

    6545

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    32003
    最后登录
    2024-4-9
    发表于 2020-11-30 17:13:20 | 显示全部楼层 |阅读模式
    【NXP OKdo E1双核Cortex M33开发板】-中断和按键


    转自网友:Angel_YY
    在学习完时钟和定时器相关知识后,GPIO的输入,中断的使用还需要进一步了解,所以本实验开始学习驱动开发板上的按键。
    1.png
    根据开发板的管脚图,可以看到两个用户按键分别使用了PIO1_9和PIO0_5。SW201使用了WAKEUP管脚。
    2.png
    在原理图上可以查看到,WAKEUP使用的是PIO1_18引脚。
    3.png
    在引脚配置界面搜索PIO1_9,选中后配置引脚信号为PINT0。
    4.png
    在引脚配置界面搜索PIO0_5,选中后配置引脚信号为PINT1。
    5.png
    在引脚配置界面搜索PIO1_18,选中后配置引脚信号为PINT2。
    6.png
    更新源代码,提示pin_mux文件会有所更改。
    7.png
    在SDK配置界面添加驱动,这里增加inputmux和pint驱动即可。这两个驱动就可以是的GPIO能够处理输入和中断了。
    8.png
    返回到代码编辑界面,在驱动列表中就可以发现增加了相关文件。在主程序文件中增加头文件,以便使用相关函数。增加三个全局变量,记录按键事件。
    9.png
    定义三个按键中断函数,其中前两个中断中按键值自动增加,范围0~5循环,根据值设置led灯的亮度。第三个按键用来标记一个状态,可以指示是手动控制led还是自动控制。
    10.png
    在main函数中初始化PINT,然后设置三个输入引脚属性,这里我们采用上升沿产生中断,中断回调函数指定为前面实现的函数。
    11.png
    在主循环中增加一个条件,用来控制是手动控制LED还是自动控制LED的亮度。

    通过按钮,就可以手动控制LED的亮度调节了。

    签到签到
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

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

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-20 03:01 , Processed in 0.113061 second(s), 22 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

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