使用库开发,读取IO电平时,一直读到的是0,代码如下:
u8 btnv = GPIOB_ReadPortPin(GPIO_Pin_18);
查了一两个小时,最后才注意到 #define GPIOB_ReadPortPin( pin ) (R32_PB_PIN&pin) ,这玩意得到的是一个32位的值。
编写库的时候,为啥不转换一下呢,ReadPortPin 的理解难道读取的不是一个 bool 型吗?搞得我现在想直接改库吧又为难,要考虑后续的库的兼容性和移植。再自己封装一个.h 文件也不合适,尴尬得很。
((R32_PB_PIN&pin) >0?true:false)
|