GpioUser.c 8.76 KB
Newer Older
时昊's avatar
时昊 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
#include "GpioUser.h"
#include "Components.h"



void Gpio_Init(_GpioUser_Enum InitMode)
{
    if (InitMode == Gpio_Uvalid)
    {
        return;
    }

    if ((InitMode == Gpio_KL30_Init) || (InitMode == Gpio_WakeUp_Init))
    {
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN00, GpioOut_High);  //L_油表切电_POW---
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN01, RTE_GPIO_DIR_IN);  //KL15
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN02, RTE_GPIO_DIR_IN);  //段码SPI10-SD-1
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN03, RTE_GPIO_DIR_IN);  //段码SPI10-CSB-1
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN04, RTE_GPIO_DIR_IN);  //段码SPI10-SCL-1
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN05, GpioOut_Low);  //L_BiasBitSW 里程百位---
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN06, GpioOut_Low);  //L_BiasBitSW 里程千位---

        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN00, RTE_GPIO_DIR_IN);  //表盘背光-PWM
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN01, RTE_GPIO_DIR_IN);      //RXD-ESP-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN02, GpioOut_High);      //TXD-ESP-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN03, GpioOut_Low);      //空
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN04, RTE_GPIO_DIR_IN);  //SCL-IIC---
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN05, RTE_GPIO_DIR_IN);  //SDA-IIC---
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN06, RTE_GPIO_DIR_IN);  //转速信号---
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN07, RTE_GPIO_DIR_IN);  //车速信号-IOC-IN-MCU

        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN00, RTE_GPIO_DIR_IN);  //AVDD
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN01, RTE_GPIO_DIR_IN);  //GND
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN02, RTE_GPIO_DIR_IN);  //KL30-AD
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN03, RTE_GPIO_DIR_IN);  //KL15-AD
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN04, RTE_GPIO_DIR_IN);  //TCS信号输入-N-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN05, RTE_GPIO_DIR_IN);  //燃油信号输入-AD
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN06, RTE_GPIO_DIR_IN);  //水温信号输入-AD
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN07, RTE_GPIO_DIR_IN);  //BiasBitSW-燃油-AD---

        RTE_GPIO_Config(RTE_GPIO_PORT03_PIN00, RTE_GPIO_DIR_IN);  //电喷信号输入-N-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT03_PIN01, GpioOut_Low);      //SDB_LED_DRIVER

        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN00, GpioOut_Low);      //SEDIO-编程
        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN01, RTE_GPIO_DIR_IN);  //智能锁信号输入-N-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN02, RTE_GPIO_DIR_IN);  //MODE按键信号输入-N-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN03, RTE_GPIO_DIR_IN);  //SET按键信号输入-N-IN-MCU

        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN00, GpioOut_High);     //切电控制-MCU-OUT-2
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN01, GpioOut_High);     //切电控制-MCU-OUT-1
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN02, RTE_GPIO_DIR_IN);  //位置灯信号输入_P_IN_MCU
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN03, RTE_GPIO_DIR_IN);  //右转向信号输入_P_IN_MCU
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN04, RTE_GPIO_DIR_IN);  //左转向信号输入_P_IN_MCU
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN05, RTE_GPIO_DIR_IN);  //远光信号输入_P_IN_MCU

        RTE_GPIO_Config(RTE_GPIO_PORT06_PIN00, GpioOut_Low);      //存储SCL
        RTE_GPIO_Config(RTE_GPIO_PORT06_PIN01, GpioOut_Low);      //存储SDA
        RTE_GPIO_Config(RTE_GPIO_PORT06_PIN02, GpioOut_Low);      //SCL_MCU
        RTE_GPIO_Config(RTE_GPIO_PORT06_PIN03, GpioOut_Low);      //SDA_MCU

        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN00, RTE_GPIO_DIR_IN);  //段码SPI20-SCL-2
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN01, RTE_GPIO_DIR_IN);  //段码SPI20-CSB-2
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN02, RTE_GPIO_DIR_IN);  //段码SPI20-SD-2
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN03, GpioOut_Low);  //L_BiasBitSW 里程万位---
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN04, GpioOut_Low);  //L_BiasBitSW 里程千位---
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN05, RTE_GPIO_DIR_IN);  //ABS故障信号输入-N-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN06, GpioOut_Low);      //空
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN07, GpioOut_Low);      //空

        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN00, GpioOut_High);  //L_BiasBitSW_POW---
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN01, GpioOut_Low);      //X1
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN02, GpioOut_Low);      //X2
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN03, GpioOut_Low);      //XT1
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN04, GpioOut_Low);      //XT2

        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN00, GpioOut_Low);  //空
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN06, RTE_GPIO_DIR_IN);  //空挡信号输入-N-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN07, GpioOut_Low);      //SWCLK-编程

        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN00, GpioOut_High);     //L_BD433Ctrl_OUT
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN01, GpioOut_High);  //L_BiasBitSW_燃油_OUT---
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN06, RTE_GPIO_DIR_IN);  //A_Version---
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN07, GpioOut_Low);      //空
    }
    else 
    {
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN01, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN02, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN03, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN04, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN05, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN06, GpioOut_Low);

        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN01, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN02, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN03, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN04, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN05, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN06, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN07, RTE_GPIO_DIR_IN);

        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN00, GpioOut_High);
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN01, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN02, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN03, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN04, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN05, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN06, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN07, RTE_GPIO_DIR_IN);

        RTE_GPIO_Config(RTE_GPIO_PORT03_PIN00, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT03_PIN01, GpioOut_Low);

        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN01, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN02, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN03, RTE_GPIO_DIR_IN);

        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN01, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN02, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN03, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN04, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN05, RTE_GPIO_DIR_IN);

        RTE_GPIO_Config(RTE_GPIO_PORT06_PIN00, GpioOut_High);
        RTE_GPIO_Config(RTE_GPIO_PORT06_PIN01, GpioOut_High);
        RTE_GPIO_Config(RTE_GPIO_PORT06_PIN02, GpioOut_High);
        RTE_GPIO_Config(RTE_GPIO_PORT06_PIN03, GpioOut_High);

        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN01, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN02, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN03, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN04, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN05, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN06, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN07, GpioOut_Low);

        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN01, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN02, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN03, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN04, GpioOut_Low);

        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN06, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN07, GpioOut_Low);

        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN01, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN06, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN07, GpioOut_Low);
    }
}