stm32之5.长按按键(使用时钟源)调整跑马灯速度


源码

#include <stm32f4xx.h>

#include "led.h"

#include "delay.h"

#include "my_str.h"

#include "beep.h"

#include "key.h"

int main(void)

{

key_init();

Led_init();

while(1)

{

/* 长按按键才能够识别 */

if(Bit_RESET==GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0))

{

RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW));

RCC->CFGR |= RCC_CFGR_SW_PLL;

}

if(Bit_RESET==GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_2))

{

RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW));

RCC->CFGR |= RCC_CFGR_SW_HSI;

}

if(Bit_RESET==GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_3))

{

RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW));

RCC->CFGR |= RCC_CFGR_SW_HSE;

}

GPIO_WriteBit(GPIOF,GPIO_Pin_9,Bit_RESET);

MY_DelayMs(500);

GPIO_WriteBit(GPIOF,GPIO_Pin_9,Bit_SET);

MY_DelayMs(500);

GPIO_WriteBit(GPIOF,GPIO_Pin_10,Bit_RESET);

MY_DelayMs(500);

GPIO_WriteBit(GPIOF,GPIO_Pin_10,Bit_SET);

MY_DelayMs(500);

GPIO_WriteBit(GPIOE,GPIO_Pin_13,Bit_RESET);

MY_DelayMs(500);

GPIO_WriteBit(GPIOE,GPIO_Pin_13,Bit_SET);

MY_DelayMs(500);

GPIO_WriteBit(GPIOE,GPIO_Pin_14,Bit_RESET);

MY_DelayMs(500);

GPIO_WriteBit(GPIOE,GPIO_Pin_14,Bit_SET);

MY_DelayMs(500);

}

}

相关推荐
电子硬件笔记39 分钟前
嵌入式硬件:如何理解高频电子线路,从入门开始
嵌入式硬件·硬件架构·硬件工程·嵌入式实时数据库
EVERSPIN44 分钟前
推荐高性能MCU微控制器N32H785EC(MCU单片机特征)
单片机·嵌入式硬件·微控制器·mcu微控制器·mcu单片机
d111111111d2 小时前
STM32外设学习--TIM定时器--输入捕获---测频方法。
stm32·单片机·学习
光子物联单片机2 小时前
C语言基础开发入门系列(八)C语言指针的理解与实战
c语言·开发语言·stm32·单片机·mcu
Tracy9733 小时前
XMAU7118_VC1:16通道PDM到I²S/TDM音频转换器产品介绍
嵌入式硬件·音视频·智能硬件·xmos模组固件
聚能芯罗180380464763 小时前
HLD3350AL深圳智芯一级代理聚能芯半导体CMOS 技术耐压 50V低压差线性稳压器原厂技术支持
嵌入式硬件
Shylock_Mister3 小时前
ESP32堆栈空间优化全攻略
c语言·嵌入式硬件·物联网
点灯小铭4 小时前
基于单片机的超声波自动泥浆回收系统
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
Tracy9734 小时前
OT83211_VC1:4通道 ASRC OTG(44.1kHz~192kHz)音频采样率转换器产品介绍
嵌入式硬件·音视频·xmos 模组·xmos模组固件
电鱼智能的电小鱼9 小时前
基于电鱼 AI 工控机的智慧工地视频智能分析方案——边缘端AI检测,实现无人值守下的实时安全预警
网络·人工智能·嵌入式硬件·算法·安全·音视频