diff --git a/Gpios.c b/Gpios.c index c7d3575..e85f86f 100644 --- a/Gpios.c +++ b/Gpios.c @@ -2,7 +2,6 @@ // Created by xemon on 29.08.22. // #include "Gpios.h" -#include #include "SystemDelayInterface.h" tGpios GPIOS; @@ -12,70 +11,21 @@ static void vPowerManagementInitComInt485(tRs485DirectionPins *env) { env->receive = InitGpioPin(GPIOD, GPIO_PINS_4, GPIO_MODE_OUTPUT, GPIO_PIN_REVERSE); } -static void Gpios_InitFlash(tFlashPins *env) { - env->spiChipSelect1 = InitGpioPin(GPIOD, GPIO_PINS_15, GPIO_MODE_OUTPUT, GPIO_PIN_REVERSE); - env->spiChipSelect2 = InitGpioPin(GPIOD, GPIO_PINS_14, GPIO_MODE_OUTPUT, GPIO_PIN_REVERSE); - env->spiHold = InitGpioPin(GPIOG, GPIO_PINS_6, GPIO_MODE_OUTPUT, GPIO_PIN_REVERSE); - env->spiWp = InitGpioPin(GPIOG, GPIO_PINS_4, GPIO_MODE_OUTPUT, GPIO_PIN_REVERSE); - -} - -static void Gpios_InitSIM800F(tSIM800FPower *env) { - env->pwrkey = InitGpioPin(GPIOF, GPIO_PINS_10, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->reset = InitGpioPin(GPIOA, GPIO_PINS_4, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->pwr_en = InitGpioPin(GPIOG, GPIO_PINS_0, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->dtr_sleep = InitGpioPin(GPIOA, GPIO_PINS_5, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); -} - -static void Gpios_InitPRO04(tPRO04Power *env) { - env->onOff = InitGpioPin(GPIOF, GPIO_PINS_1, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->reset = InitGpioPin(GPIOF, GPIO_PINS_0, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->pwr_en = InitGpioPin(GPIOC, GPIO_PINS_13, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); -} - static void Gpios_Power(tPower *env) { -// env->gpio1 = InitGpioPin(GPIOE, GPIO_PINS_4, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE); -// env->gpio4 = InitGpioPin(GPIOE, GPIO_PINS_2, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE); -/* - gpio_init_type GPIOInit; - gpio_default_para_init(&GPIOInit); +} - GPIOInit.gpio_mode = GPIO_MODE_INPUT; - GPIOInit.gpio_pull = GPIO_PULL_NONE; - GPIOInit.gpio_pins = GPIO_PINS_4; - gpio_init(GPIOE, &GPIOInit); - - GPIOInit.gpio_mode = GPIO_MODE_INPUT; - GPIOInit.gpio_pull = GPIO_PULL_NONE; - GPIOInit.gpio_pins = GPIO_PINS_2; - gpio_init(GPIOE, &GPIOInit); -*/ - - - - env->gonec_pwr_amp = InitGpioPinPull(GPIOE, GPIO_PINS_6, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE, GPIO_PULL_DOWN); - env->gonec_boot = InitGpioPin(GPIOE, GPIO_PINS_5, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->gonec_reset = InitGpioPinPull(GPIOE, GPIO_PINS_3, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE, GPIO_PULL_UP); - - - -// env->gonec_reset = InitGpioPin(GPIOE, GPIO_PINS_3, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); -// env->gonec_reset = InitGpioPinOpenDrain(GPIOE, GPIO_PINS_3, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE); - - env->tx_pwr_5 = InitGpioPin(GPIOB, GPIO_PINS_6, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->tx_pwr_en = InitGpioPin(GPIOB, GPIO_PINS_9, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->tx_pwr_good = InitGpioPin(GPIOB, GPIO_PINS_5, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE); - - env->discretOut1_pd3 = InitGpioPin(GPIOD, GPIO_PINS_3, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - env->discretOut1_pd0 = InitGpioPin(GPIOD, GPIO_PINS_2, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); - -// env->discretIn1_pg2 = InitGpioPinPull(GPIOG, GPIO_PINS_2, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE, GPIO_PULL_UP); - env->discretIn1_pg2 = InitGpioPin(GPIOG, GPIO_PINS_2, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE); - - - env->discretIn1_pg3 = InitGpioPin(GPIOG, GPIO_PINS_3, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE); +static void Gpios_InitSIM7682E(tSIM7682EPower *env) { + env->pwrkey = InitGpioPin(GPIOG, GPIO_PINS_9, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); + env->reset = InitGpioPin(GPIOG, GPIO_PINS_11, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); + env->pwr_en = InitGpioPin(GPIOD, GPIO_PINS_15, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); + env->pwr_mon = InitGpioPin(GPIOG, GPIO_PINS_0, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE); +} +static void Gpios_InitSIM68(tSIM68Power *env) { + env->reset = InitGpioPin(GPIOD, GPIO_PINS_13, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); + env->pwr_en = InitGpioPin(GPIOD, GPIO_PINS_14, GPIO_MODE_OUTPUT, GPIO_PIN_NOREVERSE); + env->ppc_mcu = InitGpioPin(GPIOD, GPIO_PINS_12, GPIO_MODE_INPUT, GPIO_PIN_NOREVERSE); } @@ -92,9 +42,7 @@ void Gpios_Init() { tGpios *env = &GPIOS; vPowerManagementInitComInt485(&env->comIntDir); - Gpios_InitFlash(&env->flashSPI); - Gpios_InitSIM800F(&env->SIM800FPower); - Gpios_InitPRO04(&env->PRO04Power); Gpios_Power(&env->Power); - + Gpios_InitSIM7682E(&env->SIM7682EPower); + Gpios_InitSIM68(&env->SIM68Power); } \ No newline at end of file diff --git a/Gpios.h b/Gpios.h index a629d5d..06ddcdd 100644 --- a/Gpios.h +++ b/Gpios.h @@ -8,14 +8,12 @@ #include #include #include "GpioPin.h" -#include "SpiPorts.h" typedef struct { tRs485DirectionPins comIntDir; - tFlashPins flashSPI; - tSIM800FPower SIM800FPower; - tPRO04Power PRO04Power; + tSIM7682EPower SIM7682EPower; + tSIM68Power SIM68Power; tPower Power; } tGpios;