本帖最后由 8677343898 于 2018-3-6 09:19 编辑
今天遇到的问题:
在KEIL上写好LED驱动代码,经过Jlink链接STM32103c调试,发现要驱动的灯不亮,飞行器四周的灯确莫名其妙的逐渐变亮;
代码如下:
#include "stm32f10x.h"
#define LED2_GPIO GPIOB
#define LED2_Pin GPIO_Pin_3
#define LED3_GPIO GPIOC
#define LED3_Pin GPIO_Pin_13
#define LED2_ON LED2_GPIO->BRR = LED2_Pin;
#define LED2_OFF LED2_GPIO->BSRR = LED2_Pin;
#define LED3_ON LED3_GPIO->BSRR = LED3_Pin;
#define LED3_OFF LED3_GPIO->BRR = LED3_Pin;
static void delay(uint16_t n)
{
uint16_t i,j;
for(i=0;i<n;i++)
for(j=0;j<n; j++);
}
int main(void)
{
<font color="#ff0000"> void LED_Init();</font>
while(1)
{
LED2_ON;
delay(1000);
LED3_ON;
delay(1000);
LED2_OFF;
delay(1000);
LED3_OFF;
delay(1000);
}
}
void LED_Init(void)
{
GPIO_InitTypeDef GPIO_Structure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable,ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);
GPIO_Structure.GPIO_Pin= LED2_Pin;
GPIO_Structure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Structure.GPIO_Mode=GPIO_Mode_Out_PP;//
GPIO_Init(LED2_GPIO,&GPIO_Structure);
GPIO_Structure.GPIO_Pin= LED3_Pin;
GPIO_Structure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Structure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(LED3_GPIO,&GPIO_Structure);
}
暂时还未解决。------------------------------------------------------------------------------------------------------------------------
解决了。犯了个智障的错误。见代码上标红的地方。声明了函数却没有使用。Dammit
|