123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #include "power12V_driver.h"
- FlagStatus SwitchOnFlag; //开关打开标志,初始化为关闭标志
- //12V驱动IO初始化
- void Power12V_Driver_Init(void)
- {
- GPIO_InitTypeDef GPIO_InitStruct;
- __HAL_RCC_GPIOA_CLK_ENABLE();
-
- /*Configure GPIO pin Output Level */
- HAL_GPIO_WritePin(POWER12V_EN_GPIO_Port, POWER12V_EN_Pin, GPIO_PIN_RESET);
-
- /*Configure GPIO pin : PtPin */
- GPIO_InitStruct.Pin = POWER12V_EN_Pin;
- GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
- GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
- HAL_GPIO_Init(POWER12V_EN_GPIO_Port, &GPIO_InitStruct);
-
- SwitchOnFlag = RESET; //初始化为关闭标志
- }
- //12V驱动IO设置处理
- void Power12V_Driver_Process(FlagStatus SwitchStatus)
- {
- if(SwitchStatus == SET)
- {
- if(SwitchOnFlag == RESET)
- {
- //打开12V驱动电源
- HAL_GPIO_WritePin(POWER12V_EN_GPIO_Port, POWER12V_EN_Pin, GPIO_PIN_SET);
- SwitchOnFlag = SET;
- }
- }
- else if(SwitchStatus == RESET)
- {
- if(SwitchOnFlag == SET)
- {
- //关闭12V驱动电源
- HAL_GPIO_WritePin(POWER12V_EN_GPIO_Port, POWER12V_EN_Pin, GPIO_PIN_RESET);
- SwitchOnFlag = RESET;
- }
- }
- }
|