GPIO_Pin_Set(GPIOD,PIN8,x)的写法只是固件库适用,HAL库不能用,况且这里是写不是读。
F7X系列只能用HAL库:
写:HAL_GPIO_WritePin(GPIOD, GPIO_PIN_8,GPIO_PIN_SET)
读:HAL_GPIO_ReadPin(GPIOD,GPIO_PIN_8 )
宏定义相当于替换,你看看 while(GPIO_Pin_Set(GPIOD,PIN8) == 1) 是个什么?
GPIO_Pin_Set()一般是没有返回值的viod类型, 不知道你的函数定义里面是什么样的。标准库函数中,读是“void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)”,写是“uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)”
至于下面一条说 “原子的案例里这样也不能写”,那得看报什么错?本身这个函数这样写是没有语法问题的。
页:
1
[2]