【Mini-F5265-OB开发板试用测评】按键控制测试

本文介绍了如何使用按键控制 MCU 引脚的输出电平。

原理

由原理图可知

板载用户按键 K1 和 K2 分别与主控的 PB0 和 PB1 相连。

代码

c++ 复制代码
#define _MAIN_C_

#include "platform.h"
#include "gpio_key_input.h"
#include "main.h"

int main(void)
{
    PLATFORM_Init();

    GPIO_KEY_Input_Sample();

    while (1)
    {
    }
}

函数 GPIO_KEY_Input_Sample()

c++ 复制代码
void GPIO_KEY_Input_Sample(void)
{
    static uint8_t KeyState[2] =
    {
        0, 0,
    };
    static uint8_t KeyCount[2] =
    {
        0, 0,
    };

    printf("\r\nTest %s", __FUNCTION__);

    GPIO_Configure();

    printf("\r\nPress KEY1 or KEY2...");

    while (1)
    {
        KEY_FSM_Handler(&KeyState[0], &KeyCount[0], GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_0), Bit_RESET, "KEY1");
        KEY_FSM_Handler(&KeyState[1], &KeyCount[1], GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_1), Bit_RESET, "KEY2");

        PLATFORM_LED_Enable(LED1, (FunctionalState)GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_0));
        PLATFORM_LED_Enable(LED2, (FunctionalState)GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_1));

        PLATFORM_DelayMS(10);
    }
}

效果

按键控制 LED

总结

本文展示了板载按键控制 LED 的项目实现。

相关推荐
东城居士7 天前
理解Linux RTC驱动
linux·嵌入式系统
东城居士11 天前
理解Linux LCD驱动编程
linux·嵌入式系统·1024程序员节
东城居士25 天前
理解设备树下的platform驱动编写
linux·嵌入式系统
玄芯散人1 个月前
【金丹·76】CPU缓存三层塔
嵌入式系统·计算机体系结构·cpu缓存
东城居士1 个月前
Linux驱动阻塞与非阻塞访问的理解
linux·嵌入式系统
东城居士2 个月前
理解pinctrl和gpio子系统驱动
linux·嵌入式系统
东城居士2 个月前
验证第一个Linux字符驱动程序
linux·嵌入式系统
东城居士2 个月前
Linux驱动程序开发环境的快速搭建
linux·嵌入式系统
捷瑞电子工坊2 个月前
深入理解CMSIS内核函数:__disable_irq() 与 __enable_irq()
stm32·嵌入式系统·cmsis·中断控制·临界区保护
在水一缸4 个月前
从“铁锁”到开源:John Deere和解协议背后的维修权革命与技术启示
开源·嵌入式系统·软件架构·固件安全·维修权