博客
关于我
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/

你可能感兴趣的文章
PLSQL_案例优化系列_体验逻辑结构如何影响SQL优化(案例3)
查看>>
PLSQL中INDEX BY TABLE的 DELETE操作
查看>>
plsql学习笔记---plsql相关概念,以及基础结构
查看>>
plsql数据库异常---plsql 登录后,提示数据库字符集(AL32UTF8)和客户端字符集(ZHS16GBK)不一致
查看>>
plsql查询乱码问题解决
查看>>
PLSQL的DBMS_GETLINE
查看>>
quartz简单demo,教你最快使用quartz
查看>>
PlutoSDR学习笔记(一)—函数API手册
查看>>
Quartz安装包中的15个example
查看>>
Quartz学习总结(2)——定时任务框架Quartz详解
查看>>
pm2 start命令中的json格式详解
查看>>
pm2启动报错
查看>>
pm2通过配置文件部署nodejs代码到服务器
查看>>
Unknown character set: 'utf8mb4'
查看>>
PML调用PDMS内核命令研究
查看>>
PMM安装-第一篇
查看>>
PMP知识要点(第九章)
查看>>
PNETLab 镜像包官方下载太慢?不急,最新版本PNET_4.2.10分享!
查看>>
pnpm : 无法加载文件...
查看>>
pnpm 如何安装指定版本
查看>>