库函数开发控制LED

利用STM32系列开发板与计算机Keil编程设计,载入程序以实现目标:

LED灯闪烁模式自动轮换------模式1:流水灯从左到右,从右到左依次闪烁三次

模式2:全部流水灯闪烁五次

模式3:流水灯编号1、3与流水灯编号2、4,依次闪烁三次

模式4:"流水灯1->流水灯4->流水灯2->流水灯3"依次点亮,循环四次

简单提供代码思路如下:

cpp 复制代码
#include "stm32f4xx.h"
#include "led.h"
#include "delay.h"

void led_flow_once(void) {

    LED0(1); Delay_ms(500); LED0(0);
    LED1(1); Delay_ms(500); LED1(0);
    LED2(1); Delay_ms(500); LED2(0);
    LED3(1); Delay_ms(500); LED3(0);
  
    LED3(1); Delay_ms(500); LED3(0);
    LED2(1); Delay_ms(500); LED2(0);
    LED1(1); Delay_ms(500); LED1(0);
    LED0(1); Delay_ms(500); LED0(0);
}


void led_all_blink(int n) {
    for(int i=0; i<n; i++){
        LED0(1); LED1(1); LED2(1); LED3(1);
        Delay_ms(500);
        LED0(0); LED1(0); LED2(0); LED3(0);
        Delay_ms(500);
    }
}


void led_group_blink(int n) {
    for(int i=0; i<n; i++){
        
        LED0(1); LED2(1);
        LED1(0); LED3(0);
        Delay_ms(500);
        
        LED0(0); LED2(0);
        LED1(1); LED3(1);
        Delay_ms(500);
    }
    
    LED0(0); LED1(0); LED2(0); LED3(0);
}


void led_order_1423(int n) {
    for(int i=0; i<n; i++){
        LED0(1); Delay_ms(500); LED0(0);
        LED3(1); Delay_ms(500); LED3(0);
        LED1(1); Delay_ms(500); LED1(0);
        LED2(1); Delay_ms(500); LED2(0);
    }
}

int main(void)
{
    LED_Hardware_Init();
    Delay_Init();

    while (1)
    {
        
        for(int i=0; i<3; i++){
            led_flow_once();
        }
      
        led_all_blink(5);
        
        led_group_blink(3);
        
        led_order_1423(4);
    }
}
相关推荐
Lester_11013 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元3 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
z20348315203 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
古译汉书3 天前
【IoT死磕系列】Day 7:只传8字节怎么控机械臂?学习工业控制 CANopen 的“对象字典”(附企业级源码)
数据结构·stm32·物联网·http
Alaso_shuang3 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
2501_918126913 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发
z20348315203 天前
STM32F103系列单片机定时器介绍(一)
stm32·单片机
星马梦缘3 天前
驱动层开发——蜂鸣器驱动
stm32·单片机·嵌入式硬件·hal·驱动
小刘爱玩单片机4 天前
【stm32简单外设篇】- 测速传感器模块(光电)
c语言·stm32·单片机·嵌入式硬件
极客小张4 天前
基于STM32的智能水质监测与远程预警系统设计与实现
c语言·python·stm32·单片机·嵌入式硬件·物联网