RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //使能GPIOA口时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7; //使能PA4-7 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //带上拉输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHZ; //速度为10MHZ GPIO_Init(GPIOA, &GPIO_InitStructure); //初始化PA4-PA7引脚
在这段程序中,我编译的时候提示:led.c(31): error: #20: identifier "GPIO_Speed_50MHZ" is undefined 但是:我看了下我的stm32f10x_gpio.c中没有这一句:assert_param(IS_GPIO_PIN(GPIO_InitStruct->GPIO_Speed)); 我加上了,但是仍然没有改变;我看我的stm32f10x_gpio.h文件中也定义了:Mode_Speed typedef struct { u16 GPIO_Pin; GPIOSpeed_TypeDef GPIO_Speed; GPIOMode_TypeDef GPIO_Mode; }GPIO_InitTypeDef;
该程序我把关于频率的设定那句GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHZ; //速度为10MHZ 屏蔽了,就没任何问题了.我的固件库是最新的08年7月的,请各位伸出援助之手,谢谢大家了。 |