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

你可能感兴趣的文章
Python 多处理模块的 .join() 方法到底在做什么?
查看>>
python 多线程与GIL
查看>>
Python 多线程学习(转)
查看>>
python 多进程-基础
查看>>
python 多进程-进阶-进程池
查看>>
python 多进程-进阶-进程间通信之Pipe
查看>>
python 多进程-进阶-进程间通信之Queue
查看>>
Python编程快速入门
查看>>
Python编程基础(附Pycharm与开发环境)
查看>>
python 如何“否定“value : 如果为真则返回假,如果为假则返回真
查看>>
Python 如何在 Web 环境中使用 Matplotlib 进行数据可视化
查看>>
python 如何把字符串转换成浮点数
查看>>
python 如果文件夹不存在就创建文件夹
查看>>
Python 如果有很多或以收缩形式
查看>>
Python 子进程 Popen 与 Pyinstaller
查看>>
Python 子进程 Popen.communicate() 等价于 Popen.stdout.read()?
查看>>
Python 子进程 Popen:为什么会出现“ls *.txt“?不行?
查看>>
Python 子进程参数
查看>>
python 字典 key 和value 互换
查看>>
Python 字典 vs If 语句速度
查看>>