只有切换了,目前我想不到其他的方法。我估计你是觉得用库函数切换效率低吧,其实除非要求特别苛刻的的场合,库函数完全可以满足实时性需要。
当然寄存器操作效率最高,给你一个我的操作寄存器切换端口状态的例子,仅供参考:
#define DHT_PIN GPIO_Pin_4
#define DHT_PORT GPIOC
#define DHT_PIN_Mode_In() {DHT_PORT->CRL&=0XFFF0FFFF;DHT_PORT->CRL|=8<<16;DHT_PORT->ODR|=DHT_PIN;}
#define DHT_PIN_Mode_Out() {DHT_PORT->CRL&=0XFFF0FFFF;DHT_PORT->CRL|=3<<16;} |