前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >(二)STM32L4(RT- Thread)——独立按键

(二)STM32L4(RT- Thread)——独立按键

作者头像
小点点
发布2022-12-12 15:29:06
4170
发布2022-12-12 15:29:06
举报
文章被收录于专栏:小点点

目录

学习目标

成果展示 

硬件知识

代码 

总结 


学习目标

        今天要介绍的是有关独立按键的知识,简单来说,非常简单,所以就不详细介绍了。

成果展示 

https://player.bilibili.com/player.html?aid=733631244

独立按键

硬件知识

代码 

代码语言:javascript
复制
#include <rtthread.h>
#include <rtdevice.h>
#include <board.h>

#define DBG_TAG "main"
#define DBG_LVL DBG_LOG
#include <rtdbg.h>

int main(void)
{
    unsigned int count = 1;

    /* 设置 RGB 灯引脚的模式为输出模式 */
    rt_pin_mode(PIN_LED_R, PIN_MODE_OUTPUT);
	rt_pin_mode(PIN_LED_G, PIN_MODE_OUTPUT);
	rt_pin_mode(PIN_LED_B, PIN_MODE_OUTPUT);
    /* 设置 KEY 引脚的模式为输入模式 */
    rt_pin_mode(PIN_KEY0, PIN_MODE_INPUT);
	rt_pin_mode(PIN_KEY1, PIN_MODE_INPUT);
	rt_pin_mode(PIN_KEY2, PIN_MODE_INPUT);

    while (count > 0)
    {
        /* 读取按键 KEY 的引脚状态 */
        if (rt_pin_read(PIN_KEY0) == PIN_LOW)
        {
            rt_thread_mdelay(50);
            if (rt_pin_read(PIN_KEY0) == PIN_LOW)
            {
                /* 按键已被按下,输出 log,点亮 LED 灯 */
                LOG_D("KEY0 pressed!");
                rt_pin_write(PIN_LED_R, PIN_LOW);
            }
        }
		else if (rt_pin_read(PIN_KEY1) == PIN_LOW)
        {
            rt_thread_mdelay(50);
            if (rt_pin_read(PIN_KEY1) == PIN_LOW)
            {
                /* 按键已被按下,输出 log,点亮 LED 灯 */
                LOG_D("KEY1 pressed!");
				rt_pin_write(PIN_LED_G, PIN_LOW);
            }
        }
		else if (rt_pin_read(PIN_KEY2) == PIN_LOW)
        {
            rt_thread_mdelay(50);
            if (rt_pin_read(PIN_KEY2) == PIN_LOW)
            {
                /* 按键已被按下,输出 log,点亮 LED 灯 */
                LOG_D("KEY2 pressed!");
				rt_pin_write(PIN_LED_B, PIN_LOW);
            }
        }
        else 
        {
            /* 按键没被按下,熄灭 LED 灯 */
            rt_pin_write(PIN_LED_R, PIN_HIGH);
			rt_pin_write(PIN_LED_G, PIN_HIGH);
			rt_pin_write(PIN_LED_B, PIN_HIGH);
        }
        rt_thread_mdelay(10);
        count++;
    }
    return 0;
}

总结  

        下一个。 

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-12-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 学习目标
  • 成果展示 
  • 硬件知识
  • 代码 
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档