From 662e0b43a3e6a36946deac42c678abefd5c782c6 Mon Sep 17 00:00:00 2001 From: cfif Date: Wed, 17 Dec 2025 16:17:49 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Inc/GpioPin.h | 6 ++++-- Src/GpioPin.c | 19 +++++++++++++++---- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/Inc/GpioPin.h b/Inc/GpioPin.h index bbd2e1f..821cc07 100644 --- a/Inc/GpioPin.h +++ b/Inc/GpioPin.h @@ -20,12 +20,14 @@ tGpioPin vInitGpioPinPull( uint32_t pinMask, GPIO_PinDirectionType direction, bool reverse, - GPIO_PinLevelType gpio_pull + GPIO_PinLevelType ePinLevel, + bool bPullEn, + PORT_PullStatusType ePullSel ); void GpioPinSet(tGpioPin *pin, bool value); - bool GpioPinGet(tGpioPin *pin); +void GpioPinToggle(tGpioPin *pin); #endif //HVAC_M7_GPIOPIN_H diff --git a/Src/GpioPin.c b/Src/GpioPin.c index a071c62..7e6baf1 100644 --- a/Src/GpioPin.c +++ b/Src/GpioPin.c @@ -8,14 +8,22 @@ tGpioPin vInitGpioPinPull( uint32_t pinMask, GPIO_PinDirectionType direction, bool reverse, - GPIO_PinLevelType gpio_pull + GPIO_PinLevelType ePinLevel, + bool bPullEn, + PORT_PullStatusType ePullSel ) { - GPIO_InitType tGpioInitStruct; + PORT_InitType tInitStruct = {0}; + GPIO_InitType tGpioInitStruct = {0}; + + tInitStruct.bPullEn = bPullEn; + tInitStruct.ePullSel = ePullSel; + tInitStruct.u32PortPins = pinMask; + tInitStruct.uPortPinMux.u32PortPinMode = PORT_GPIO_MODE; + PORT_InitPins((PORT_InstanceType)port, &tInitStruct); tGpioInitStruct.u32GpioPins = pinMask; tGpioInitStruct.ePinDirection = direction; - tGpioInitStruct.ePinLevel = gpio_pull; - + tGpioInitStruct.ePinLevel = ePinLevel; GPIO_InitPins(port, &tGpioInitStruct); tGpioPin pin = { @@ -52,3 +60,6 @@ bool GpioPinGet(tGpioPin *pin) { return value; } +void GpioPinToggle(tGpioPin *pin) { + GPIO_Toggle(pin->port, pin->pin); +} \ No newline at end of file