目錄
1、GPIO_ReadInputData:
2、GPIO_ReadInputDataBit:
總結
? GPIO_ReadInputData
?和?GPIO_ReadInputDataBit
?是兩個函數,通常用于讀取微控制器GPIO(通用輸入輸出)引腳的輸入狀態,特別是在STM32系列微控制器中。它們之間的主要區別在于返回的數據類型和用途:
1、GPIO_ReadInputData:
- 功能: 讀取特定GPIO端口的所有輸入引腳的狀態,并返回一個16位(或32位,具體取決于微控制器)無符號整型值。這個值的每一位對應于端口引腳的狀態(低電平或高電平)。
例子:0000 0000 1111 1111,代表PA0~PA15,共16個引腳,那么16位二進制數的第0位代表PA0。
- 用法: 適合在一次讀取中獲取多個引腳的狀態。例如,如果你要檢查一個端口上多個引腳的狀態,可以使用這個函數。
uint16_t inputData = GPIO_ReadInputData(GPIOA);
2、GPIO_ReadInputDataBit:
- 功能: 讀取特定GPIO引腳的狀態,并返回一個布爾值(通常是0或1),指示該引腳是低電平還是高電平。
- 用法: 適合單個引腳狀態的測試。例如,如果你只關心某個特定引腳的狀態,可以使用這個函數。
BitAction pinState = GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0);
總結
- 使用?
GPIO_ReadInputData
?時,可以同時讀取多個引腳的狀態,返回的是所有引腳狀態的集合。 - 使用?
GPIO_ReadInputDataBit
?時,關注單個引腳,返回的是該引腳的具體狀態。