Init
This commit is contained in:
commit
78a0cd6f3a
|
|
@ -0,0 +1,120 @@
|
|||
//
|
||||
// Created by xemon on 29.08.22.
|
||||
//
|
||||
#include "Gpios.h"
|
||||
#include <SpiPorts.h>
|
||||
#include "SystemDelayInterface.h"
|
||||
|
||||
tGpios GPIOS;
|
||||
|
||||
static void Gpios_InitAudio(tAudioPower *env) {
|
||||
env->shutdownB = GpioPin_Init(GPIOE, GPIO_PIN_8, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->shutdownD = GpioPin_Init(GPIOE, GPIO_PIN_9, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
|
||||
env->gain = GpioPin_Init(GPIOE, GPIO_PIN_10, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->mic = GpioPin_Init(GPIOE, GPIO_PIN_11, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
}
|
||||
|
||||
#ifdef USE_GSM_AND_GNSS_TELIT
|
||||
static void Gpios_InitTelit(tTelitPower *env) {
|
||||
//env->charge.ChargeC = GpioPin_Init(GPIOD, GPIO_PIN_1, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_REVERSE);
|
||||
env->charge.power = GpioPin_Init(GPIOC, GPIO_PIN_6, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->charge.onOff = GpioPin_Init(GPIOA, GPIO_PIN_10, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->ring = GpioPin_Init(GPIOE, GPIO_PIN_12, GPIO_Mode_IN_FLOATING, GPIO_Speed_50MHz, GPIO_PIN_REVERSE);
|
||||
|
||||
// env->discharge.chargeCapacitors = InitGpioPin(GPIO?, GPIO_PIN_?, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
// env->discharge.chargeCapacitorsDNI = InitGpioPin(GPIO?, GPIO_PIN_?, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
static void Gpios_InitBIP(tBipPins *env) {
|
||||
#if USE_POLAR_DEPENDENT_BIP
|
||||
env->uiLeds.red.positiv = GpioPin_Init(GPIOE, GPIO_PIN_13, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE); //-
|
||||
env->uiLeds.red.negativ = GpioPin_Init(GPIOE, GPIO_PIN_2, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE); //+
|
||||
|
||||
env->uiLeds.green.positiv = GpioPin_Init(GPIOE, GPIO_PIN_14, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->uiLeds.green.negativ = GpioPin_Init(GPIOE, GPIO_PIN_3, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
|
||||
env->powerBip.ignitionOn = GpioPin_Init(GPIOC, GPIO_PIN_7, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
// env->powerBip.bacLightOn = GpioPin_Init(GPIOE, GPIO_PIN_4, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
#else
|
||||
env->led.green = GpioPin_Init(GPIOE, GPIO_PIN_3, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->led.red = GpioPin_Init(GPIOE, GPIO_PIN_2, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
#endif
|
||||
|
||||
env->powerMicLed = GpioPin_Init(GPIOA, GPIO_PIN_9, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->buttons.additional = GpioPin_Init(
|
||||
GPIOE, GPIO_PIN_6, GPIO_Mode_IN_FLOATING, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE
|
||||
);
|
||||
|
||||
env->buttons.emergency = GpioPin_Init(
|
||||
GPIOE, GPIO_PIN_5, GPIO_Mode_IN_FLOATING, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE
|
||||
);
|
||||
}
|
||||
|
||||
static void Gpios_InitComInt485(tRs485DirectionPins *env) {
|
||||
env->transmit = GpioPin_Init(GPIOC, GPIO_PIN_12, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->receive = GpioPin_Init(GPIOE, GPIO_PIN_0, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_REVERSE);
|
||||
}
|
||||
|
||||
static void Gpios_InitOnBoardLed(tOnBoardLed *env) {
|
||||
env->green = GpioPin_Init(GPIOD, GPIO_PIN_13, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->blue = GpioPin_Init(GPIOD, GPIO_PIN_14, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->red = GpioPin_Init(GPIOD, GPIO_PIN_15, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
}
|
||||
|
||||
static void Gpios_InitAccelPower(tAccelPins *env) {
|
||||
env->spiChipSelect = GpioPin_Init(GPIOB, GPIO_PIN_12, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_REVERSE);
|
||||
env->int1 = GpioPin_Init(GPIOB, GPIO_PIN_10, GPIO_Mode_IN_FLOATING, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
}
|
||||
|
||||
static void Gpios_InitFlashPower(tFlashPins *env) {
|
||||
env->spiChipSelect = GpioPin_Init(GPIOD, GPIO_PIN_0, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_REVERSE);
|
||||
}
|
||||
|
||||
static void Gpios_InitMainPower(tMainPower *env) {
|
||||
|
||||
GPIO_ConfigPinRemap(GPIO_RMP_SW_JTAG_SW_ENABLE, ENABLE);
|
||||
///======== var_01
|
||||
// env->garage = GpioPin_Init(GPIOB, GPIO_PIN_3, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
// env->ecall = GpioPin_Init(GPIOB, GPIO_PIN_4, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
///======== var_02
|
||||
env->garage = GpioPin_Init(GPIOA, GPIO_PIN_3, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->ecall = GpioPin_Init(GPIOA, GPIO_PIN_4, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
|
||||
env->muteP = GpioPin_Init(GPIOB, GPIO_PIN_5, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->muteN = GpioPin_Init(GPIOB, GPIO_PIN_2, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
|
||||
env->ignition = GpioPin_Init(GPIOE, GPIO_PIN_1, GPIO_Mode_IN_FLOATING, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->standby = GpioPin_Init(GPIOD, GPIO_PIN_12, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
|
||||
env->inAnt = GpioPin_Init(GPIOC, GPIO_PIN_5, GPIO_Mode_Out_OD, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
}
|
||||
|
||||
static void Gpios_InitBattery(tBatteryPower *env) {
|
||||
env->enable = GpioPin_Init(GPIOC, GPIO_PIN_8, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->charge = GpioPin_Init(GPIOB, GPIO_PIN_0, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
}
|
||||
|
||||
static void Gpios_InitPower(tPowerPins *env) {
|
||||
env->comInt485 = GpioPin_Init(GPIOE, GPIO_PIN_7, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->bip = GpioPin_Init(GPIOA, GPIO_PIN_9, GPIO_Mode_Out_PP, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
env->usb = GpioPin_Init(GPIOA, GPIO_PIN_15, GPIO_Mode_IN_FLOATING, GPIO_Speed_50MHz, GPIO_PIN_NOREVERSE);
|
||||
Gpios_InitTelit(&env->telit);
|
||||
|
||||
Gpios_InitAudio(&env->audio);
|
||||
Gpios_InitMainPower(&env->main);
|
||||
Gpios_InitBattery(&env->battery);
|
||||
}
|
||||
|
||||
void Gpios_Init() {
|
||||
tGpios *env = &GPIOS;
|
||||
Gpios_InitFlashPower(&env->flash);
|
||||
Gpios_InitAccelPower(&env->accel);
|
||||
Gpios_InitOnBoardLed(&env->onBoardLed);
|
||||
Gpios_InitComInt485(&env->comIntDir);
|
||||
Gpios_InitBIP(&env->bip);
|
||||
|
||||
Gpios_InitPower(&env->power);
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
//
|
||||
// Created by xemon on 29.08.22.
|
||||
//
|
||||
|
||||
#ifndef UVEOS_DEMO_ON_NIIET_MCU_Gpios_H
|
||||
#define UVEOS_DEMO_ON_NIIET_MCU_Gpios_H
|
||||
|
||||
#include <SerialPorts.h>
|
||||
#include <PowerManagement.h>
|
||||
#include "GpioPin.h"
|
||||
#include "UserInput.h"
|
||||
#include "UserIndication.h"
|
||||
#include "SpiPorts.h"
|
||||
|
||||
typedef struct {
|
||||
tGpioPin powerMicLed;
|
||||
#if USE_POLAR_DEPENDENT_BIP
|
||||
tIndicationBip uiLeds;
|
||||
tPowerBip powerBip;
|
||||
#else
|
||||
tBipLed led;
|
||||
#endif
|
||||
tUserInputPins buttons;
|
||||
} tBipPins;
|
||||
|
||||
typedef struct {
|
||||
tAccelPins accel;
|
||||
tFlashPins flash;
|
||||
tOnBoardLed onBoardLed;
|
||||
tBipPins bip;
|
||||
tRs485DirectionPins comIntDir;
|
||||
|
||||
tPowerPins power;
|
||||
} tGpios;
|
||||
|
||||
extern tGpios GPIOS;
|
||||
|
||||
void Gpios_Init();
|
||||
|
||||
#endif //UVEOS_DEMO_ON_NIIET_MCU_Gpios_H
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
{
|
||||
"dep": [
|
||||
{
|
||||
"type": "git",
|
||||
"provider": "NAVIGATOR_UVEOS_NATION_TELIT",
|
||||
"repo": "GpioPin_NATION_N32G45X"
|
||||
},
|
||||
{
|
||||
"type": "git",
|
||||
"provider": "NAVIGATOR_UVEOS_NATION_TELIT",
|
||||
"repo": "SystemDelay_CMSIS_RTOS"
|
||||
},
|
||||
{
|
||||
"type": "git",
|
||||
"provider": "NAVIGATOR_UVEOS_NATION_TELIT",
|
||||
"repo": "UveosOnNation_VEGA_SerialPorts"
|
||||
},
|
||||
{
|
||||
"type": "git",
|
||||
"provider": "NAVIGATOR_UVEOS_NATION_TELIT",
|
||||
"repo": "UveosOnNation_VEGA_UserIndication"
|
||||
},
|
||||
{
|
||||
"type": "git",
|
||||
"provider": "NAVIGATOR_UVEOS_NATION_TELIT",
|
||||
"repo": "UveosOnNation_VEGA_UserInput"
|
||||
},
|
||||
{
|
||||
"type": "git",
|
||||
"provider": "NAVIGATOR_UVEOS_NATION_TELIT",
|
||||
"repo": "UveosOnNation_VEGA_SpiPorts"
|
||||
}
|
||||
],
|
||||
"cmake": {
|
||||
"inc_dirs": [
|
||||
"./"
|
||||
],
|
||||
"srcs": [
|
||||
"Gpios.c"
|
||||
]
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue