#if BEEP_TYPE==YOUYUAN
DEBUG_LED_PORT->BSRRH = GPIO_Pin_7;
#else
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, DISABLE);
TIM_Cmd(TIM4, DISABLE);
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_Pin = BEEP;
GPIO_InitStructure.GPIO_OType =GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd =GPIO_PuPd_DOWN;
GPIO_InitStructure.GPIO_Speed =GPIO_Speed_25MHz;
GPIO_Init(DEBUG_LED_PORT,&GPIO_InitStructure);
GPIO_ResetBits(DEBUG_LED_PORT,BEEP);
#endif
自己在看代码的时候,有一个疑问,#if 和 #else的范围是什么,是和if...else语句一样不加括号只包括语句后的一句?实际查阅资料发现不是,#else....#endif之间的都是#else需要执行的部分。