【STM32】GPIO之LED

00. 目录

01. STM32F4 IO简介

参考:【STM32】GPIO概述

02. 控制原理

在这里插入图片描述

硬件只有 LED(DS0 和 DS1)。其电路在 ALIENTEK 探索者 STM32F4 开发板上默认是已经连接好了的。DS0 接 PF9,DS1 接 PF10。

对应的引脚为低电平的时候LED就亮,否则LED就灭。

03. 程序示例一

所有LED灭

int main(void)
{
	GPIO_InitTypeDef gpio_InitTypeDef;
	
	gpio_InitTypeDef.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;
	gpio_InitTypeDef.GPIO_Mode = GPIO_Mode_OUT;
	gpio_InitTypeDef.GPIO_Speed = GPIO_Speed_100MHz;
	gpio_InitTypeDef.GPIO_OType = GPIO_OType_PP;
	gpio_InitTypeDef.GPIO_PuPd = GPIO_PuPd_UP;
	
	
	delay_init(168);
	

	//1. 初始化GPIO的时钟
	RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);
	
	//2. 初始化GPIO
	GPIO_Init(GPIOF, &gpio_InitTypeDef);
	
	//3. 设置高电平
	GPIO_SetBits(GPIOF, GPIO_Pin_9 | GPIO_Pin_10);

	return 0;
}

04. 程序示例二

所有的LED亮

int main(void)
{
	GPIO_InitTypeDef gpio_InitTypeDef;
	
	gpio_InitTypeDef.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;
	gpio_InitTypeDef.GPIO_Mode = GPIO_Mode_OUT;
	gpio_InitTypeDef.GPIO_Speed = GPIO_Speed_100MHz;
	gpio_InitTypeDef.GPIO_OType = GPIO_OType_PP;
	gpio_InitTypeDef.GPIO_PuPd = GPIO_PuPd_UP;
	
	
	delay_init(168);
	

	//1. 初始化GPIO的时钟
	RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);
	
	//2. 初始化GPIO
	GPIO_Init(GPIOF, &gpio_InitTypeDef);
	
	//3. 设置低电平
	//GPIO_ResetBits(GPIOF, GPIO_Pin_9 | GPIO_Pin_10);
    
	return 0;
}

05. 程序示例三

LED闪烁

#include "stm32f4xx.h"

#include "delay.h"

int main(void)
{
	GPIO_InitTypeDef gpio_InitTypeDef;
	
	gpio_InitTypeDef.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;
	gpio_InitTypeDef.GPIO_Mode = GPIO_Mode_OUT;
	gpio_InitTypeDef.GPIO_Speed = GPIO_Speed_100MHz;
	gpio_InitTypeDef.GPIO_OType = GPIO_OType_PP;
	gpio_InitTypeDef.GPIO_PuPd = GPIO_PuPd_UP;
	
	
	delay_init(168);
	

	//1. 初始化GPIO的时钟
	RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);
	
	//2. 初始化GPIO
	GPIO_Init(GPIOF, &gpio_InitTypeDef);
	
	//3. LED闪烁
	while(1)
	{
		//灭
		GPIO_SetBits(GPIOF, GPIO_Pin_9 | GPIO_Pin_10);
		delay_ms(1000);
		
		//亮
		GPIO_ResetBits(GPIOF, GPIO_Pin_9 | GPIO_Pin_10);
		delay_ms(1000);
	}
	
	
	return 0;
}

06. 附录

6.1 【STM32】STM32系列教程汇总

网址:【STM32】STM32系列教程汇总

扫描二维码关注公众号,回复: 11618119 查看本文章

07. 声明

该教程参考了正点原子的《STM32 F4 开发指南》

猜你喜欢

转载自blog.csdn.net/dengjin20104042056/article/details/108119150