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

你可能感兴趣的文章
opengl 深度详解,多重采样时,如何在OpenGL纹理中解析深度值?
查看>>
OpenGL 的内置矩阵种种
查看>>
OpenGL/OpenGL ES 入门:基础变换 - 初识向量/矩阵
查看>>
OpenGL中shader读取实现
查看>>
OpenGL中旋转平移缩放等变换的顺序对模型的影响
查看>>
Opengl中的gluProject函数认识
查看>>
OpenGl介绍
查看>>
OPENGL半透明图像产生黑色光环
查看>>
OpenGL和图形卡
查看>>
OpenGL字体绘制
查看>>
OpenGL学习
查看>>
openGL学习步骤
查看>>
OpenGL的基本概念介绍
查看>>
OpenGL着色器、纹理开发案例
查看>>
OpenGL程序无法启动此应用程序,因为计算机中丢失glut32.dll(转))
查看>>
opengl绘制几何体的函数
查看>>
openGL缓存概念和缓存清除(01)
查看>>
OpenJDK11 下的HSDB工具使用入门
查看>>
openjdk踩坑
查看>>
openjudge 1792 迷宫 解析报告
查看>>