我的程序如下
#include "delay.h"
#include "sys.h"
#include "wdg.h"
#include "main.h"
void GPIO_Configuration(void);
u16 g_DebugTime=0;
int main(void)
{
u8 static TestnumberOld=0;
SystemInit();
NVIC_Configuration(); //中断配置
SysTick_Config(SystemCoreClock/1000); //这个值需要研究==================
GPIO_Configuration();
while(1)
{
if(g_DebugTime>1000)
{
GPIO_WriteBit(GPIOB,GPIO_Pin_0,Bit_RESET);
GPIO_WriteBit(GPIOB,GPIO_Pin_1,Bit_RESET);
GPIO_WriteBit(GPIOB,GPIO_Pin_3,Bit_RESET);
}else
{
if(!g_DebugTime) g_DebugTime=2000;
GPIO_WriteBit(GPIOB,GPIO_Pin_0,Bit_SET);
GPIO_WriteBit(GPIOB,GPIO_Pin_1,Bit_SET);
GPIO_WriteBit(GPIOB,GPIO_Pin_3,Bit_SET);
}
}
}
void GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //open gpioB clock
/* Configure PB.3,10-15 as Output push-pull for OUTPUT and CS,CLK*/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 |GPIO_Pin_1 |GPIO_Pin_3;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
}
配置PB0 PB1 PB3 为输出,控制LED闪烁,但是测试发现    B3控制的LED不会闪烁 PB0 和PB1控制的LED闪烁正常
PB0    B1    B3输出高电平的时候LED应该亮的
使用Jlink仿真 发现如下异常
注意图中红色标注的 PB的 IDR为啥没有打钩,而 PB0和PB1的打钩了呢?????
|