【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 的项目实现。

相关推荐
东城居士4 天前
理解设备树下的platform驱动编写
linux·嵌入式系统
玄芯散人6 天前
【金丹·76】CPU缓存三层塔
嵌入式系统·计算机体系结构·cpu缓存
东城居士12 天前
Linux驱动阻塞与非阻塞访问的理解
linux·嵌入式系统
东城居士1 个月前
理解pinctrl和gpio子系统驱动
linux·嵌入式系统
东城居士1 个月前
验证第一个Linux字符驱动程序
linux·嵌入式系统
东城居士1 个月前
Linux驱动程序开发环境的快速搭建
linux·嵌入式系统
捷瑞电子工坊2 个月前
深入理解CMSIS内核函数:__disable_irq() 与 __enable_irq()
stm32·嵌入式系统·cmsis·中断控制·临界区保护
在水一缸3 个月前
从“铁锁”到开源:John Deere和解协议背后的维修权革命与技术启示
开源·嵌入式系统·软件架构·固件安全·维修权
爱刷碗的苏泓舒3 个月前
网络通信入门:电脑连接 GNSS 定位终端的Wi‑Fi热点下载文件的原理
ssh·网络通信·gnss·嵌入式系统·数据传输·wifi热点·终端调试
万亿少女的梦1683 个月前
基于STM32F103C8T6与ASR Pro的语音控制四足机器人设计
stm32·语音识别·嵌入式系统·四足机器人·舵机控制