刚拿到火牛开发板,再看一个点亮LED的例子,里面有一句不理解,贴出来请大家指教一下,还请不吝赐教:lol。
一段代码如下:
/* Turn on LD2 and LD3 */
GPIO_SetBits(GPIOD, GPIO_Pin_8);
/* Turn off LD1 */
GPIO_ResetBits(GPIOD, GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11);
/* Insert delay */
Delay(0xEFFFF);
/* Turn on LD2 and LD3 */
GPIO_SetBits(GPIOD, GPIO_Pin_9);
/* Turn off LD1 */
GPIO_ResetBits(GPIOD, GPIO_Pin_8 | GPIO_Pin_10 | GPIO_Pin_11);
/* Insert delay */
Delay(0xEFFFF);
这一段,是给GPIO_Pin_8 输出高电平,我在 stm32f10x_gpio.c 中找到这个
void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin){
/* Check the parameters */
assert_param(IS_GPIO_ALL_PERIPH(GPIOx));
assert_param(IS_GPIO_PIN(GPIO_Pin));
GPIOx->BSRR = GPIO;
}
那么assert_param(IS_GPIO_PIN(GPIO_Pin)); 这个函数是怎样找到这个引脚的,它的地址是多少啊,IS_GPIO_PIN()函数原型在哪里啊? |