比葫芦画瓢做了一个板子输出口的检测程序,编译通过刷到板子上却没反应,请教是什么问题

2019-10-14 23:49发布

[mw_shl_code=c,true][mw_shl_code=c,true]#ifndef __GPIO_OUT_LED_H                //gpio_out_led.h
#define __GPIO_OUT_LED_H
#include "sys.h"

//定义IO_Out*输出对应的管脚

#define IO_Out1 PBout(1)        // PB1
#define IO_Out2 PBout(2)        // PB2
#define IO_Out3 PBout(3)        // PB3
#define IO_Out4 PBout(4)        // PB4
#define IO_Out5 PBout(5)        // PB5
#define IO_Out6 PEout(5)        // PE5       
#define IO_Out7 PEout(6)        // PE6       
#define IO_Out8 PBout(8)        // PB8
#define IO_Out9 PBout(9)        // PB9
#define IO_Out10 PEout(1)        // PE1
#define IO_Out11 PDout(11)        // PD11
#define IO_Out12 PBout(12)        // PB12
#define IO_Out13 PBout(13)        // PB13
#define IO_Out14 PBout(14)        // PB14
#define IO_Out15 PBout(15)        // PB15

void GPIO_OUT_LED_Init(void);//初始化

                                                     
#endif
[/mw_shl_code][mw_shl_code=c,true]#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "gpio_out_led.h"

int main(void)
{       
        delay_init();                                    //延时函数初始化          
        GPIO_OUT_LED_Init();                          //初始化与LED连接的硬件接口
        while(1)
        {
                IO_Out1=1;
                delay_ms(900);         //延时300ms
                IO_Out1=0;
               
                IO_Out2=1;
                delay_ms(900);         //延时300ms
                IO_Out2=0;
               
                IO_Out3=1;
                delay_ms(900);         //延时300ms
                IO_Out3=0;
               
                IO_Out4=1;
                delay_ms(900);         //延时300ms
                IO_Out4=0;
               
                IO_Out5=1;
                delay_ms(900);         //延时300ms
                IO_Out5=0;
               
                IO_Out6=1;
                delay_ms(900);         //延时300ms
                IO_Out6=0;
               
                IO_Out7=1;
                delay_ms(900);         //延时300ms
                IO_Out7=0;
               
                IO_Out8=1;
                delay_ms(900);         //延时300ms
                IO_Out8=0;
               
                IO_Out9=1;
                delay_ms(900);         //延时300ms
                IO_Out9=0;
               
                IO_Out10=1;
                delay_ms(900);         //延时300ms
                IO_Out10=0;
               
                IO_Out11=1;
                delay_ms(900);         //延时300ms
                IO_Out11=0;
               
                IO_Out12=1;
                delay_ms(900);         //延时300ms
                IO_Out12=0;
               
                IO_Out13=1;
                delay_ms(900);         //延时300ms
                IO_Out13=0;
               
                IO_Out14=1;
                delay_ms(900);         //延时300ms
                IO_Out14=0;
               
                IO_Out15=1;
                delay_ms(900);         //延时300ms
                IO_Out15=0;

        }
}[/mw_shl_code]#include "gpio_out_led.h"

//初始化输出口.并使能相应的时钟                    
//GPIO_OUT_LED初始化
void GPIO_OUT_LED_Init(void)
{

GPIO_InitTypeDef  GPIO_InitStructure;
       
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOE|RCC_APB2Periph_GPIOD, ENABLE);         //使能PB,PE,PD端口时钟
       
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_8|
        GPIO_Pin_9|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;                                 //LED-->PB 端口配置
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;                  //推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度为50MHz
GPIO_Init(GPIOB, &GPIO_InitStructure);                                         //根据设定参数初始化GPIOB
GPIO_ResetBits(GPIOB,GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_8|
        GPIO_Pin_9|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15);                                                 //PB 输出0

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1|GPIO_Pin_5|GPIO_Pin_6;                             //LED-->PE端口配置
GPIO_Init(GPIOE, &GPIO_InitStructure);                                           //推挽输出 ,IO口速度为50MHz
GPIO_ResetBits(GPIOE,GPIO_Pin_1|GPIO_Pin_5|GPIO_Pin_6);                                                  //PE.5 输出0

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;                             //LED-->PD端口配置
GPIO_Init(GPIOD, &GPIO_InitStructure);                                           //推挽输出 ,IO口速度为50MHz
GPIO_ResetBits(GPIOD,GPIO_Pin_11);                                                  //PD.11 输出0
       
       
}

[/mw_shl_code]
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
jxzz031
1楼-- · 2019-10-15 05:45
附件是工程文件,里面的设置也更了啊,不知道是哪里出了问题,请高手指教
正点原子
2楼-- · 2019-10-15 09:35
 精彩回答 2  元偷偷看……
jxzz031
3楼-- · 2019-10-15 09:36
STM32F105VCT6芯片,软件仿真不行,硬件仿真失败。。把下载线拿掉后发现,程序根本没有刷进去。

我们是用的四根线下载,接PA13  SWDIO和PA14  SWCLK 连接到JLINK排线上,这样下载的,是不是下载上设置有误???

一周热门 更多>