野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12996|回复: 3

流水灯不亮

[复制链接]
发表于 2016-1-17 23:12:01 | 显示全部楼层 |阅读模式
代码如下:bsp_led.h

#ifndef __LED_H
#define __LED_H
#include "stm32f10x.h"

#define macLED1_GPIO_PORT GPIOB
#define macLED1_GPIO_CLK RCC_APB2Periph_GPIOB
#define macLED1_GPIO_PIN GPIO_Pin_5

#define macLED2_GPIO_PORT GPIOB
#define macLED2_GPIO_CLK RCC_APB2Periph_GPIOB
#define macLED2_GPIO_PIN GPIO_Pin_0

#define macLED3_GPIO_PORT GPIOB
#define macLED3_GPIO_CLK RCC_APB2Periph_GPIOB
#define macLED3_GPIO_PIN GPIO_Pin_1

#define ON 0
#define OFF 1

#define LED1(a)    if(a) \
                         GPIO_SetBits(macLED1_GPIO_PORT,macLED1_GPIO_PIN);\
                   else \
                                                                         GPIO_ResetBits(macLED1_GPIO_PORT,macLED1_GPIO_PIN)
#define LED2(a)    if(a) \
                         GPIO_SetBits(macLED2_GPIO_PORT,macLED2_GPIO_PIN);\
                   else \
                                                                         GPIO_ResetBits(macLED2_GPIO_PORT,macLED2_GPIO_PIN)
#define LED3(a)    if(a) \
                         GPIO_SetBits(macLED3_GPIO_PORT,macLED3_GPIO_PIN);\
                   else \
                                                                         GPIO_ResetBits(macLED3_GPIO_PORT,macLED3_GPIO_PIN)


void LED_GPIO_Config(void);
#endif



bsp_led.c
#include "bsp_LED.h"

void LED_GPIO_Config(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;
        RCC_APB2PeriphClockCmd(macLED1_GPIO_CLK,ENABLE);
        GPIO_InitStructure.GPIO_Pin = macLED1_GPIO_PIN;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_Init(macLED1_GPIO_PORT,&GPIO_InitStructure);
        GPIO_InitStructure.GPIO_Pin = macLED2_GPIO_PIN;
        GPIO_Init(macLED2_GPIO_PORT,&GPIO_InitStructure);
        GPIO_InitStructure.GPIO_Pin = macLED3_GPIO_PIN;
        GPIO_Init(macLED3_GPIO_PORT,&GPIO_InitStructure);
        GPIO_SetBits(macLED1_GPIO_PORT,macLED1_GPIO_PIN);
        GPIO_SetBits(macLED2_GPIO_PORT,macLED2_GPIO_PIN);
        GPIO_SetBits(macLED3_GPIO_PORT,macLED3_GPIO_PIN);
}


main.c
#include "stm32f10x.h"
#include "bsp_LED.h"

/**
  * @brief  Main program.
  * @param  None
  * @retval None
  */
void Delay(__IO u32 nCount);
int main(void)
{

  while (1)
  {
                LED1(ON);
                Delay(0x0FFFEF);
                LED1(OFF);
                LED2(ON);
                Delay(0x0FFFEF);
                LED2(OFF);
                LED3(ON);
                Delay(0x0FFFEF);
                LED3(OFF);
  }
}
void Delay(__IO u32 nCount)
{
        for(;nCount!=0;nCount--);
}


jtag(SMD模式,只用了4根线)和ISP下载都试了,下载成功了,但是板子上灯不亮

用的是mini初学板,LED的引脚是查的光盘中的原理图
看到书上说如果GPIO复用了其他的引脚还需要打开其他的始终不知道是不是这个问题
回复

使用道具 举报

发表于 2016-1-17 23:30:52 | 显示全部楼层
你的main函数里面有没有写    LED_GPIO_Config();
回复 支持 1 反对 0

使用道具 举报

发表于 2016-1-18 00:58:11 | 显示全部楼层
仔细看教程,仔细再仔细!!!!!!!
回复 支持 反对

使用道具 举报

发表于 2016-1-18 11:34:04 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-27 12:38 , Processed in 0.040277 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表