GpioUser.c 8.26 KB
Newer Older
时昊's avatar
时昊 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14
#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))
    {
15
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN00, RTE_GPIO_DIR_IN);  //L_油表切电_POW---
时昊's avatar
时昊 committed
16
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN01, RTE_GPIO_DIR_IN);  //KL15
时昊's avatar
时昊 committed
17 18 19
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN02, RTE_GPIO_DIR_IN);  
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN03, GpioOut_Low);  
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN04, RTE_GPIO_DIR_IN);  
时昊's avatar
时昊 committed
20 21 22
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN05, GpioOut_Low);  //L_BiasBitSW 里程百位---
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN06, GpioOut_Low);  //L_BiasBitSW 里程千位---

23
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN00, RTE_GPIO_DIR_OUT);  //表盘背光-PWM
24 25
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN01, GpioOut_Low);      //RXD-ESP-IN-MCU
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN02, GpioOut_Low);      //TXD-ESP-IN-MCU
时昊's avatar
时昊 committed
26
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN03, RTE_GPIO_DIR_IN);     
时昊's avatar
时昊 committed
27
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN04, RTE_GPIO_DIR_IN);  //SCL-IIC---
28
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN05, GpioOut_High);  //SDA-IIC---
时昊's avatar
时昊 committed
29 30
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN06, RTE_GPIO_DIR_IN);  
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN07, RTE_GPIO_DIR_IN); 
时昊's avatar
时昊 committed
31 32 33 34 35

        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
时昊's avatar
时昊 committed
36
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN04, RTE_GPIO_DIR_IN);  
时昊's avatar
时昊 committed
37 38 39 40
        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---

时昊's avatar
时昊 committed
41
        RTE_GPIO_Config(RTE_GPIO_PORT03_PIN00, GpioOut_Low);  
42
        RTE_GPIO_Config(RTE_GPIO_PORT03_PIN01, RTE_GPIO_DIR_IN);      //SDB_LED_DRIVER
时昊's avatar
时昊 committed
43 44

        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN00, GpioOut_Low);      //SEDIO-编程
时昊's avatar
时昊 committed
45 46 47
        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, GpioOut_Low); 
时昊's avatar
时昊 committed
48

时昊's avatar
时昊 committed
49
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN00, RTE_GPIO_DIR_IN);  //切电控制-MCU-OUT-2
50
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN01, GpioOut_Low);     //切电控制-MCU-OUT-1
时昊's avatar
时昊 committed
51 52 53 54
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN02, GpioOut_High);  
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN03, RTE_GPIO_DIR_IN); 
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN04, GpioOut_High);  
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN05, RTE_GPIO_DIR_IN);  
时昊's avatar
时昊 committed
55 56 57 58 59 60

        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

时昊's avatar
时昊 committed
61 62 63
        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); 
时昊's avatar
时昊 committed
64 65
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN03, GpioOut_Low);  //L_BiasBitSW 里程万位---
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN04, GpioOut_Low);  //L_BiasBitSW 里程千位---
66
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN05, GpioOut_Low);  //ABS故障信号输入-N-IN-MCU
时昊's avatar
时昊 committed
67 68
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN06, RTE_GPIO_DIR_IN);     
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN07, GpioOut_Low);      
时昊's avatar
时昊 committed
69 70 71

        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN00, GpioOut_High);  //L_BiasBitSW_POW---
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN01, GpioOut_Low);      //X1
72
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN02, RTE_GPIO_DIR_IN);      //X2
时昊's avatar
时昊 committed
73
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN03, GpioOut_Low);      //XT1
74
        RTE_GPIO_Config(RTE_GPIO_PORT12_PIN04, RTE_GPIO_DIR_IN);      //XT2
时昊's avatar
时昊 committed
75

时昊's avatar
时昊 committed
76 77
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN00, RTE_GPIO_DIR_IN);  
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN06, GpioOut_Low);  
时昊's avatar
时昊 committed
78 79
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN07, GpioOut_Low);      //SWCLK-编程

80 81
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN00, GpioOut_Low);     //L_BD433Ctrl_OUT
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN01, RTE_GPIO_DIR_IN);  //L_BiasBitSW_燃油_OUT---
时昊's avatar
时昊 committed
82 83
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN06, GpioOut_Low);  
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN07, GpioOut_Low);      
时昊's avatar
时昊 committed
84 85 86
    }
    else 
    {
87
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN00, RTE_GPIO_DIR_IN);
时昊's avatar
时昊 committed
88
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN01, RTE_GPIO_DIR_IN);
89
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN02, RTE_GPIO_DIR_IN);
时昊's avatar
时昊 committed
90
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN03, GpioOut_Low);
91
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN04, RTE_GPIO_DIR_IN);
时昊's avatar
时昊 committed
92 93 94
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN05, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT00_PIN06, GpioOut_Low);

95 96
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN00, RTE_GPIO_DIR_OUT);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN01, GpioOut_Low);
时昊's avatar
时昊 committed
97
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN02, GpioOut_Low);
98
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN03, RTE_GPIO_DIR_IN);
时昊's avatar
时昊 committed
99
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN04, RTE_GPIO_DIR_IN);
100
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN05, GpioOut_Low);
时昊's avatar
时昊 committed
101 102 103
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN06, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT01_PIN07, RTE_GPIO_DIR_IN);

104 105
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN00, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT02_PIN01, RTE_GPIO_DIR_IN);
时昊's avatar
时昊 committed
106 107 108 109 110 111 112
        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);

113 114
        RTE_GPIO_Config(RTE_GPIO_PORT03_PIN00, GpioOut_Low);
        RTE_GPIO_Config(RTE_GPIO_PORT03_PIN01, RTE_GPIO_DIR_IN);
时昊's avatar
时昊 committed
115 116 117 118

        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);
119
        RTE_GPIO_Config(RTE_GPIO_PORT04_PIN03, GpioOut_Low);
时昊's avatar
时昊 committed
120

121 122 123
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN00, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN01, GpioOut_High);
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN02, GpioOut_High);
时昊's avatar
时昊 committed
124
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN03, RTE_GPIO_DIR_IN);
125
        RTE_GPIO_Config(RTE_GPIO_PORT05_PIN04, GpioOut_Low);
时昊's avatar
时昊 committed
126 127 128 129 130 131 132 133 134 135 136 137
        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);
138
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN05, GpioOut_Low);
时昊's avatar
时昊 committed
139
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN06, GpioOut_Low);
140
        RTE_GPIO_Config(RTE_GPIO_PORT07_PIN07, RTE_GPIO_DIR_IN);
时昊's avatar
时昊 committed
141 142 143 144 145 146 147

        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);

148 149
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN00, RTE_GPIO_DIR_IN);
        RTE_GPIO_Config(RTE_GPIO_PORT13_PIN06, GpioOut_Low);
时昊's avatar
时昊 committed
150 151 152 153
        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);
154
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN06, GpioOut_Low);
时昊's avatar
时昊 committed
155 156 157
        RTE_GPIO_Config(RTE_GPIO_PORT14_PIN07, GpioOut_Low);
    }
}