STM32G030C8T6按键扫描与LED程序V0.3(五)

本实例基于RIBEE_02开发板设计,5个按键分别是PB5、PC13、PA0、PA2、PB0,其余25个LED进行点亮动作,实现按键输入与LED输出逻辑功能。

1.上芯片图与电路图

 2.配置晶振,启用内部晶振,失能外部晶振。设置晶振倍频与分频,外设基础时钟配置为64MHZ。

 3.编写LED与按键KEY驱动程序

LED.H文件

#ifndef __LED_H
#define __LED_H

/* Includes ------------------------------------------------------------------*/
#include "stm32g0xx_hal.h"

typedef struct
{
    uint8_t NUM;
} HORSE_Struct;
/*************  共25个灯跑马点亮   *************/
typedef enum {
    BLUE_B1= 1,       //蓝灯
    GREEN_B2,         //绿灯
    YELLOW_B10,       //黄灯
    RED_B11,          //红灯
    WHITE_B12,        //白灯
    BLUE_B13,         //蓝灯
    GREEN_B14,        //绿灯
    YELLOW_B15,       //黄灯
    RED_A8,           //红灯
    WHITE_A9,         //白灯
    BLUE_C6,          //蓝灯
    GREEN_C7,         //绿灯
    YELLOW_A10,       //黄灯
    RED_A11,          //红灯
    WHITE_A12,        //白灯
    BLUE_D0,          //蓝灯
    GREEN_D1,         //绿灯
    YELLOW_D2,        //黄灯
    RED_D3,           //红灯
    WHITE_B3,         //白灯
    BLUE_B4,          //蓝灯
    GREEN_B6,         //绿灯
    YELLOW_B7,        //黄灯
    RED_B8,           //红灯
    WHITE_B9,         //白灯
} LEDEnum;
/* Private defines -----------------------------------------------------------*/
#define PA8_Pin GPIO_PIN_8
#define PA8_GPIO_Port GPIOA
#define PA8_High()   HAL_GPIO_WritePin(GPIOA, PA8_Pin, GPIO_PIN_SET)
#define PA8_Low()    HAL_GPIO_WritePin(GPIOA, PA8_Pin, GPIO_PIN_RESET)

#define PA9_Pin GPIO_PIN_9
#define PA9_GPIO_Port GPIOA
#define PA9_High()   HAL_GPIO_WritePin(GPIOA, PA9_Pin, GPIO_PIN_SET)
#define PA9_Low()    HAL_GPIO_WritePin(GPIOA, PA9_Pin, GPIO_PIN_RESET)

#define PA10_Pin GPIO_PIN_10
#define PA10_GPIO_Port GPIOA
#define PA10_High()   HAL_GPIO_WritePin(GPIOA, PA10_Pin, GPIO_PIN_SET)
#define PA10_Low()    HAL_GPIO_WritePin(GPIOA, PA10_Pin, GPIO_PIN_RESET)

#define PA11_Pin GPIO_PIN_11
#define PA11_GPIO_Port GPIOA
#define PA11_High()   HAL_GPIO_WritePin(GPIOA, PA11_Pin, GPIO_PIN_SET)
#define PA11_Low()    HAL_GPIO_WritePin(GPIOA, PA11_Pin, GPIO_PIN_RESET)

#define PA12_Pin GPIO_PIN_12
#define PA12_GPIO_Port GPIOA
#define PA12_High()   HAL_GPIO_WritePin(GPI
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值