GPIO是單片機的引腳輸入輸出功能。
輸出功能,就是把引腳變高和變低。
輸入功能,就是檢測引腳上的電平是高電平還是低電平 。
輸出功能什麼時候用?
當你需要控制引腳爲高電平或低電平時,該功能就是作爲GPIO輸出功能使用。例如,控制LED亮滅的時候,如下圖所示:
當給LED1_P低電平的時候,LED亮;給LED1_P高電平的時候,LED滅,所以需要把連接LED引腳的單片機引腳變高和變低來控制,這時候,單片機引腳就是作爲GPIO輸出功能使用。
輸入功能什麼時候用?
當你需要檢測引腳上的高低電平的時候,就是用GPIO的輸入功能。例如,檢測按鍵的按下與放開,如下圖所示:
上圖中,把KEY1和KEY2和WAKUP連接到單片機引腳。當沒有按鍵的時候,這三個引腳是高電平,當按下按鍵後,這三個引腳就是低電平。所以判斷引腳上的高低電平,就是GPIO的輸入功能。
在某些單片機中,GPIO的輸入功能和輸出功能需要分別設置,例如ARM單片機。
在某些單片機中,GPIO的輸入功能和輸出功能不需要設置,例如通用的51單片機。