25 #define GPIO_PORT_P1 1
26 #define GPIO_PORT_P2 2
27 #define GPIO_PORT_P3 3
28 #define GPIO_PORT_P4 4
29 #define GPIO_PORT_P5 5
30 #define GPIO_PORT_P6 6
31 #define GPIO_PORT_P7 7
32 #define GPIO_PORT_P8 8
33 #define GPIO_PORT_P9 9
34 #define GPIO_PORT_P10 10
35 #define GPIO_PORT_PA 1
36 #define GPIO_PORT_PB 3
37 #define GPIO_PORT_PC 5
38 #define GPIO_PORT_PD 7
39 #define GPIO_PORT_PE 9
40 #define GPIO_PORT_PJ 11
43 #define GPIO_PIN0 (0x0001)
44 #define GPIO_PIN1 (0x0002)
45 #define GPIO_PIN2 (0x0004)
46 #define GPIO_PIN3 (0x0008)
47 #define GPIO_PIN4 (0x0010)
48 #define GPIO_PIN5 (0x0020)
49 #define GPIO_PIN6 (0x0040)
50 #define GPIO_PIN7 (0x0080)
51 #define GPIO_PIN8 (0x0100)
52 #define GPIO_PIN9 (0x0200)
53 #define GPIO_PIN10 (0x0400)
54 #define GPIO_PIN11 (0x0800)
55 #define GPIO_PIN12 (0x1000)
56 #define GPIO_PIN13 (0x2000)
57 #define GPIO_PIN14 (0x4000)
58 #define GPIO_PIN15 (0x8000)
59 #define PIN_ALL8 (0xFF)
60 #define PIN_ALL16 (0xFFFF)
62 #define GPIO_PRIMARY_MODULE_FUNCTION (0x01)
63 #define GPIO_SECONDARY_MODULE_FUNCTION (0x02)
64 #define GPIO_TERTIARY_MODULE_FUNCTION (0x03)
66 #define GPIO_HIGH_TO_LOW_TRANSITION (0x01)
67 #define GPIO_LOW_TO_HIGH_TRANSITION (0x00)
69 #define GPIO_INPUT_PIN_HIGH (0x01)
70 #define GPIO_INPUT_PIN_LOW (0x00)
123 uint_fast16_t selectedPins);
171 uint_fast16_t selectedPins);
230 uint_fast8_t selectedPort, uint_fast16_t selectedPins,
290 uint_fast8_t selectedPort, uint_fast16_t selectedPins,
338 uint_fast16_t selectedPins);
383 uint_fast16_t selectedPins);
430 uint_fast16_t selectedPins);
479 uint_fast16_t selectedPins);
528 uint_fast16_t selectedPins);
576 uint_fast16_t selectedPins);
615 uint_fast16_t selectedPins);
654 uint_fast16_t selectedPins);
709 uint_fast16_t selectedPins);
748 uint_fast16_t selectedPins);
802 uint_fast16_t selectedPins, uint_fast8_t edgeSelect);
876 void (*intHandler)(
void));
931 uint_fast8_t selectedPins);
968 uint_fast8_t selectedPins);
971 #define GPIO_selectInterruptEdge GPIO_interruptEdgeSelect
972 #define GPIO_clearInterrupt GPIO_clearInterruptFlag
void GPIO_setAsPeripheralModuleFunctionInputPin(uint_fast8_t selectedPort, uint_fast16_t selectedPins, uint_fast8_t mode)
This function configures the peripheral module function in the input direction for the selected pin f...
Definition: gpio.c:94
void GPIO_setAsPeripheralModuleFunctionOutputPin(uint_fast8_t selectedPort, uint_fast16_t selectedPins, uint_fast8_t mode)
This function configures the peripheral module function in the output direction for the selected pin ...
Definition: gpio.c:69
uint8_t GPIO_getInputPinValue(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function gets the input value on the selected pin.
Definition: gpio.c:177
uint_fast16_t GPIO_getEnabledInterruptStatus(uint_fast8_t selectedPort)
This function gets the interrupt status of the provided PIN and masks it with the interrupts that are...
Definition: gpio.c:244
void GPIO_setDriveStrengthLow(uint_fast8_t selectedPort, uint_fast8_t selectedPins)
Definition: gpio.c:287
uint_fast16_t GPIO_getInterruptStatus(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function gets the interrupt status of the selected pin.
Definition: gpio.c:210
void GPIO_interruptEdgeSelect(uint_fast8_t selectedPort, uint_fast16_t selectedPins, uint_fast8_t edgeSelect)
This function selects on what edge the port interrupt flag should be set for a transition.
Definition: gpio.c:231
void GPIO_toggleOutputOnPin(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function toggles the output on the selected Pin.
Definition: gpio.c:138
void GPIO_registerInterrupt(uint_fast8_t selectedPort, void(*intHandler)(void))
Definition: gpio.c:298
void GPIO_setAsInputPin(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function configures the selected Pin as input pin.
Definition: gpio.c:58
void GPIO_clearInterruptFlag(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function clears the interrupt flag on the selected pin.
Definition: gpio.c:220
void GPIO_setAsOutputPin(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function configures the selected Pin as output pin.
Definition: gpio.c:48
void GPIO_setOutputLowOnPin(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function sets output LOW on the selected Pin.
Definition: gpio.c:128
void GPIO_setDriveStrengthHigh(uint_fast8_t selectedPort, uint_fast8_t selectedPins)
Definition: gpio.c:276
void GPIO_setAsInputPinWithPullUpResistor(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function sets the selected Pin in input Mode with Pull Up resistor.
Definition: gpio.c:163
void GPIO_enableInterrupt(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function enables the port interrupt on the selected pin.
Definition: gpio.c:191
void GPIO_setOutputHighOnPin(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function sets output HIGH on the selected Pin.
Definition: gpio.c:118
void GPIO_disableInterrupt(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function disables the port interrupt on the selected pin.
Definition: gpio.c:200
void GPIO_setAsInputPinWithPullDownResistor(uint_fast8_t selectedPort, uint_fast16_t selectedPins)
This function sets the selected Pin in input Mode with Pull Down resistor.
Definition: gpio.c:148
void GPIO_unregisterInterrupt(uint_fast8_t selectedPort)
Definition: gpio.c:316