博客
关于我
STM32F429流水灯设计
阅读量:399 次
发布时间:2019-03-05

本文共 2359 字,大约阅读时间需要 7 分钟。

F429?????LED????

??????

F429?????LED???????????????GPIO?????????????????????????????????

??????

1. ???????

??led???????????

  • bsp_led_715.h?LED???
  • bsd_led.c?LED????
  • Delay.h????????
2. ??LED???

?bsp_led_715.h???LED????

#ifndef __LED_H_715#define __LED_H_715#include "stm32f4xx.h"// LED????#define LED1(a) if(a) { GPIO_ResetBits(GPIOH, GPIO_Pin_10); GPIO_SetBits(GPIOH, GPIO_Pin_11); GPIO_SetBits(GPIOH, GPIO_Pin_12); } else { GPIO_SetBits(GPIOH, GPIO_Pin_10); GPIO_SetBits(GPIOH, GPIO_Pin_11); GPIO_SetBits(GPIOH, GPIO_Pin_12); }#define LED2(a) if(a) { GPIO_SetBits(GPIOH, GPIO_Pin_10); GPIO_ResetBits(GPIOH, GPIO_Pin_11); GPIO_SetBits(GPIOH, GPIO_Pin_12); } else { GPIO_SetBits(GPIOH, GPIO_Pin_10); GPIO_SetBits(GPIOH, GPIO_Pin_11); GPIO_SetBits(GPIOH, GPIO_Pin_12); }#define LED3(a) if(a) { GPIO_SetBits(GPIOH, GPIO_Pin_10); GPIO_SetBits(GPIOH, GPIO_Pin_11); GPIO_ResetBits(GPIOH, GPIO_Pin_12); } else { GPIO_SetBits(GPIOH, GPIO_Pin_10); GPIO_SetBits(GPIOH, GPIO_Pin_11); GPIO_SetBits(GPIOH, GPIO_Pin_12); }#endif
3. ??GPIO

?bsd_led.c???GPIO?????

#include "stm32f4xx.h"#include "bsp_led_715.h"void LED_GPIO_Config(void){    GPIO_InitTypeDef GPIO_InitStructure;    // ??GPIOH??    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOH, ENABLE);    // ??GPIO10?????    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;    GPIO_Speed = GPIO_Speed_2MHz;    GPIO_Init(GPIOH, &GPIO_InitStructure);}
4. ??????

?Delay.h??????????

#ifndef DELAY_H#define DELAY_Hvoid Delay(__IO uint32_t nCount);#endif
#include "Delay.h"void Delay(__IO uint32_t nCount){    for(; nCount != 0; nCount--)    {        // ??????????????????        __asm(" NOP");    }}
5. ?????

?main.c???LED???

#include "stm32f4xx.h"#include "./led/bsp_led_715.h"void Delay(__IO uint32_t nCount);int main(void){    // ???LED??    LED_GPIO_Config();    while(1)    {        // LED1??        LED1(ON);        Delay(0xFFFFFF);        LED1(OFF);        Delay(0xFFFFFF);        // LED2??        LED2(ON);        Delay(0xFFFFFF);        LED2(OFF);        Delay(0xFFFFFF);        // LED3??        LED3(ON);        Delay(0xFFFFFF);        LED3(OFF);        Delay(0xFFFFFF);    }}

????

??????????????F429???????LED???????????????GPIO???????????LED??????????????????LED??????????????????

转载地址:http://psfzz.baihongyu.com/

你可能感兴趣的文章
nginx负载均衡的五种算法
查看>>
nginx转发端口时与导致websocket不生效
查看>>
Nginx运维与实战(二)-Https配置
查看>>
Nginx配置Https证书
查看>>
Nginx配置ssl实现https
查看>>
Nginx配置TCP代理指南
查看>>
Nginx配置——不记录指定文件类型日志
查看>>
nginx配置一、二级域名、多域名对应(api接口、前端网站、后台管理网站)
查看>>
Nginx配置代理解决本地html进行ajax请求接口跨域问题
查看>>
nginx配置全解
查看>>
Nginx配置参数中文说明
查看>>
nginx配置域名和ip同时访问、开放多端口
查看>>
Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
查看>>
Nginx配置如何一键生成
查看>>
Nginx配置实例-负载均衡实例:平均访问多台服务器
查看>>
Nginx配置文件nginx.conf中文详解(总结)
查看>>
Nginx配置负载均衡到后台网关集群
查看>>
ngrok | 内网穿透,支持 HTTPS、国内访问、静态域名
查看>>
NHibernate学习[1]
查看>>
NHibernate异常:No persister for的解决办法
查看>>