一般來說,內核在72Mhz,IO速度為50Mhz,外部中斷的響應時間為6個周期值168ns左右。
GPIOX->IDR&GPIO_Pin_X 在某項目中以為讀取該寄存器的值是1,其實是按管腳索引的該IO的寄存器狀態,該值不是1。
GPIOX->IDR為各端口寄存器狀態。
首先開啟外設時鍾,初始化引腳的配置狀態。
外部有輸入時IO寄存器的值就會變化,例如讀取GPIOA的第2引腳,當外部輸入為1時讀出的值為0x00000002&0x2 = 0x2;
所以該值為2。要是兄台想實現數據讀取實現方法為:(GPIOX->IDR&GPIO_Pin_X)?1:0;這樣就可以得出狀態數值了。