/** PIN MANAGER Generated Driver File @Company: Microchip Technology Inc. @File Name: pin_manager.h @Summary: This is the generated manager file for the PIC24 / dsPIC33 / PIC32MM MCUs device. This manager configures the pins direction, initial state, analog setting. @Description: This source file provides implementations for PIN MANAGER. Generation Information : Product Revision : PIC24 / dsPIC33 / PIC32MM MCUs - 1.171.4 Device : PIC24FV16KM202 The generated drivers are tested against the following: Compiler : XC16 v2.10 MPLAB : MPLAB X v6.05 */ /* (c) 2020 Microchip Technology Inc. and its subsidiaries. You may use this software and any derivatives exclusively with Microchip products. THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE, INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE, OR ITS INTERACTION WITH MICROCHIP PRODUCTS, COMBINATION WITH ANY OTHER PRODUCTS, OR USE IN ANY APPLICATION. IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY, THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE. MICROCHIP PROVIDES THIS SOFTWARE CONDITIONALLY UPON YOUR ACCEPTANCE OF THESE TERMS. */ #ifndef _PIN_MANAGER_H #define _PIN_MANAGER_H /** Section: Includes */ #include /** Section: Device Pin Macros */ /** @Summary Sets the GPIO pin, RA0, high using LATA0. @Description Sets the GPIO pin, RA0, high using LATA0. @Preconditions The RA0 must be set to an output. @Returns None. @Param None. @Example // Set RA0 high (1) IO_RA0_SetHigh(); */ #define IO_RA0_SetHigh() (_LATA0 = 1) /** @Summary Sets the GPIO pin, RA0, low using LATA0. @Description Sets the GPIO pin, RA0, low using LATA0. @Preconditions The RA0 must be set to an output. @Returns None. @Param None. @Example // Set RA0 low (0) IO_RA0_SetLow(); */ #define IO_RA0_SetLow() (_LATA0 = 0) /** @Summary Toggles the GPIO pin, RA0, using LATA0. @Description Toggles the GPIO pin, RA0, using LATA0. @Preconditions The RA0 must be set to an output. @Returns None. @Param None. @Example // Toggle RA0 IO_RA0_Toggle(); */ #define IO_RA0_Toggle() (_LATA0 ^= 1) /** @Summary Reads the value of the GPIO pin, RA0. @Description Reads the value of the GPIO pin, RA0. @Preconditions None. @Returns None. @Param None. @Example uint16_t portValue; // Read RA0 postValue = IO_RA0_GetValue(); */ #define IO_RA0_GetValue() _RA0 /** @Summary Configures the GPIO pin, RA0, as an input. @Description Configures the GPIO pin, RA0, as an input. @Preconditions None. @Returns None. @Param None. @Example // Sets the RA0 as an input IO_RA0_SetDigitalInput(); */ #define IO_RA0_SetDigitalInput() (_TRISA0 = 1) /** @Summary Configures the GPIO pin, RA0, as an output. @Description Configures the GPIO pin, RA0, as an output. @Preconditions None. @Returns None. @Param None. @Example // Sets the RA0 as an output IO_RA0_SetDigitalOutput(); */ #define IO_RA0_SetDigitalOutput() (_TRISA0 = 0) /** @Summary Sets the GPIO pin, RA1, high using LATA1. @Description Sets the GPIO pin, RA1, high using LATA1. @Preconditions The RA1 must be set to an output. @Returns None. @Param None. @Example // Set RA1 high (1) IO_RA1_SetHigh(); */ #define IO_RA1_SetHigh() (_LATA1 = 1) /** @Summary Sets the GPIO pin, RA1, low using LATA1. @Description Sets the GPIO pin, RA1, low using LATA1. @Preconditions The RA1 must be set to an output. @Returns None. @Param None. @Example // Set RA1 low (0) IO_RA1_SetLow(); */ #define IO_RA1_SetLow() (_LATA1 = 0) /** @Summary Toggles the GPIO pin, RA1, using LATA1. @Description Toggles the GPIO pin, RA1, using LATA1. @Preconditions The RA1 must be set to an output. @Returns None. @Param None. @Example // Toggle RA1 IO_RA1_Toggle(); */ #define IO_RA1_Toggle() (_LATA1 ^= 1) /** @Summary Reads the value of the GPIO pin, RA1. @Description Reads the value of the GPIO pin, RA1. @Preconditions None. @Returns None. @Param None. @Example uint16_t portValue; // Read RA1 postValue = IO_RA1_GetValue(); */ #define IO_RA1_GetValue() _RA1 /** @Summary Configures the GPIO pin, RA1, as an input. @Description Configures the GPIO pin, RA1, as an input. @Preconditions None. @Returns None. @Param None. @Example // Sets the RA1 as an input IO_RA1_SetDigitalInput(); */ #define IO_RA1_SetDigitalInput() (_TRISA1 = 1) /** @Summary Configures the GPIO pin, RA1, as an output. @Description Configures the GPIO pin, RA1, as an output. @Preconditions None. @Returns None. @Param None. @Example // Sets the RA1 as an output IO_RA1_SetDigitalOutput(); */ #define IO_RA1_SetDigitalOutput() (_TRISA1 = 0) /** @Summary Sets the GPIO pin, RA4, high using LATA4. @Description Sets the GPIO pin, RA4, high using LATA4. @Preconditions The RA4 must be set to an output. @Returns None. @Param None. @Example // Set RA4 high (1) IO_RA4_SetHigh(); */ #define IO_RA4_SetHigh() (_LATA4 = 1) /** @Summary Sets the GPIO pin, RA4, low using LATA4. @Description Sets the GPIO pin, RA4, low using LATA4. @Preconditions The RA4 must be set to an output. @Returns None. @Param None. @Example // Set RA4 low (0) IO_RA4_SetLow(); */ #define IO_RA4_SetLow() (_LATA4 = 0) /** @Summary Toggles the GPIO pin, RA4, using LATA4. @Description Toggles the GPIO pin, RA4, using LATA4. @Preconditions The RA4 must be set to an output. @Returns None. @Param None. @Example // Toggle RA4 IO_RA4_Toggle(); */ #define IO_RA4_Toggle() (_LATA4 ^= 1) /** @Summary Reads the value of the GPIO pin, RA4. @Description Reads the value of the GPIO pin, RA4. @Preconditions None. @Returns None. @Param None. @Example uint16_t portValue; // Read RA4 postValue = IO_RA4_GetValue(); */ #define IO_RA4_GetValue() _RA4 /** @Summary Configures the GPIO pin, RA4, as an input. @Description Configures the GPIO pin, RA4, as an input. @Preconditions None. @Returns None. @Param None. @Example // Sets the RA4 as an input IO_RA4_SetDigitalInput(); */ #define IO_RA4_SetDigitalInput() (_TRISA4 = 1) /** @Summary Configures the GPIO pin, RA4, as an output. @Description Configures the GPIO pin, RA4, as an output. @Preconditions None. @Returns None. @Param None. @Example // Sets the RA4 as an output IO_RA4_SetDigitalOutput(); */ #define IO_RA4_SetDigitalOutput() (_TRISA4 = 0) /** @Summary Sets the GPIO pin, RB6, high using LATB6. @Description Sets the GPIO pin, RB6, high using LATB6. @Preconditions The RB6 must be set to an output. @Returns None. @Param None. @Example // Set RB6 high (1) IO_RB6_SetHigh(); */ #define IO_RB6_SetHigh() (_LATB6 = 1) /** @Summary Sets the GPIO pin, RB6, low using LATB6. @Description Sets the GPIO pin, RB6, low using LATB6. @Preconditions The RB6 must be set to an output. @Returns None. @Param None. @Example // Set RB6 low (0) IO_RB6_SetLow(); */ #define IO_RB6_SetLow() (_LATB6 = 0) /** @Summary Toggles the GPIO pin, RB6, using LATB6. @Description Toggles the GPIO pin, RB6, using LATB6. @Preconditions The RB6 must be set to an output. @Returns None. @Param None. @Example // Toggle RB6 IO_RB6_Toggle(); */ #define IO_RB6_Toggle() (_LATB6 ^= 1) /** @Summary Reads the value of the GPIO pin, RB6. @Description Reads the value of the GPIO pin, RB6. @Preconditions None. @Returns None. @Param None. @Example uint16_t portValue; // Read RB6 postValue = IO_RB6_GetValue(); */ #define IO_RB6_GetValue() _RB6 /** @Summary Configures the GPIO pin, RB6, as an input. @Description Configures the GPIO pin, RB6, as an input. @Preconditions None. @Returns None. @Param None. @Example // Sets the RB6 as an input IO_RB6_SetDigitalInput(); */ #define IO_RB6_SetDigitalInput() (_TRISB6 = 1) /** @Summary Configures the GPIO pin, RB6, as an output. @Description Configures the GPIO pin, RB6, as an output. @Preconditions None. @Returns None. @Param None. @Example // Sets the RB6 as an output IO_RB6_SetDigitalOutput(); */ #define IO_RB6_SetDigitalOutput() (_TRISB6 = 0) /** @Summary Sets the GPIO pin, RB7, high using LATB7. @Description Sets the GPIO pin, RB7, high using LATB7. @Preconditions The RB7 must be set to an output. @Returns None. @Param None. @Example // Set RB7 high (1) IO_RB7_SetHigh(); */ #define IO_RB7_SetHigh() (_LATB7 = 1) /** @Summary Sets the GPIO pin, RB7, low using LATB7. @Description Sets the GPIO pin, RB7, low using LATB7. @Preconditions The RB7 must be set to an output. @Returns None. @Param None. @Example // Set RB7 low (0) IO_RB7_SetLow(); */ #define IO_RB7_SetLow() (_LATB7 = 0) /** @Summary Toggles the GPIO pin, RB7, using LATB7. @Description Toggles the GPIO pin, RB7, using LATB7. @Preconditions The RB7 must be set to an output. @Returns None. @Param None. @Example // Toggle RB7 IO_RB7_Toggle(); */ #define IO_RB7_Toggle() (_LATB7 ^= 1) /** @Summary Reads the value of the GPIO pin, RB7. @Description Reads the value of the GPIO pin, RB7. @Preconditions None. @Returns None. @Param None. @Example uint16_t portValue; // Read RB7 postValue = IO_RB7_GetValue(); */ #define IO_RB7_GetValue() _RB7 /** @Summary Configures the GPIO pin, RB7, as an input. @Description Configures the GPIO pin, RB7, as an input. @Preconditions None. @Returns None. @Param None. @Example // Sets the RB7 as an input IO_RB7_SetDigitalInput(); */ #define IO_RB7_SetDigitalInput() (_TRISB7 = 1) /** @Summary Configures the GPIO pin, RB7, as an output. @Description Configures the GPIO pin, RB7, as an output. @Preconditions None. @Returns None. @Param None. @Example // Sets the RB7 as an output IO_RB7_SetDigitalOutput(); */ #define IO_RB7_SetDigitalOutput() (_TRISB7 = 0) /** @Summary Sets the GPIO pin, RB8, high using LATB8. @Description Sets the GPIO pin, RB8, high using LATB8. @Preconditions The RB8 must be set to an output. @Returns None. @Param None. @Example // Set RB8 high (1) IO_RB8_SetHigh(); */ #define IO_RB8_SetHigh() (_LATB8 = 1) /** @Summary Sets the GPIO pin, RB8, low using LATB8. @Description Sets the GPIO pin, RB8, low using LATB8. @Preconditions The RB8 must be set to an output. @Returns None. @Param None. @Example // Set RB8 low (0) IO_RB8_SetLow(); */ #define IO_RB8_SetLow() (_LATB8 = 0) /** @Summary Toggles the GPIO pin, RB8, using LATB8. @Description Toggles the GPIO pin, RB8, using LATB8. @Preconditions The RB8 must be set to an output. @Returns None. @Param None. @Example // Toggle RB8 IO_RB8_Toggle(); */ #define IO_RB8_Toggle() (_LATB8 ^= 1) /** @Summary Reads the value of the GPIO pin, RB8. @Description Reads the value of the GPIO pin, RB8. @Preconditions None. @Returns None. @Param None. @Example uint16_t portValue; // Read RB8 postValue = IO_RB8_GetValue(); */ #define IO_RB8_GetValue() _RB8 /** @Summary Configures the GPIO pin, RB8, as an input. @Description Configures the GPIO pin, RB8, as an input. @Preconditions None. @Returns None. @Param None. @Example // Sets the RB8 as an input IO_RB8_SetDigitalInput(); */ #define IO_RB8_SetDigitalInput() (_TRISB8 = 1) /** @Summary Configures the GPIO pin, RB8, as an output. @Description Configures the GPIO pin, RB8, as an output. @Preconditions None. @Returns None. @Param None. @Example // Sets the RB8 as an output IO_RB8_SetDigitalOutput(); */ #define IO_RB8_SetDigitalOutput() (_TRISB8 = 0) /** @Summary Sets the GPIO pin, RB9, high using LATB9. @Description Sets the GPIO pin, RB9, high using LATB9. @Preconditions The RB9 must be set to an output. @Returns None. @Param None. @Example // Set RB9 high (1) IO_RB9_SetHigh(); */ #define IO_RB9_SetHigh() (_LATB9 = 1) /** @Summary Sets the GPIO pin, RB9, low using LATB9. @Description Sets the GPIO pin, RB9, low using LATB9. @Preconditions The RB9 must be set to an output. @Returns None. @Param None. @Example // Set RB9 low (0) IO_RB9_SetLow(); */ #define IO_RB9_SetLow() (_LATB9 = 0) /** @Summary Toggles the GPIO pin, RB9, using LATB9. @Description Toggles the GPIO pin, RB9, using LATB9. @Preconditions The RB9 must be set to an output. @Returns None. @Param None. @Example // Toggle RB9 IO_RB9_Toggle(); */ #define IO_RB9_Toggle() (_LATB9 ^= 1) /** @Summary Reads the value of the GPIO pin, RB9. @Description Reads the value of the GPIO pin, RB9. @Preconditions None. @Returns None. @Param None. @Example uint16_t portValue; // Read RB9 postValue = IO_RB9_GetValue(); */ #define IO_RB9_GetValue() _RB9 /** @Summary Configures the GPIO pin, RB9, as an input. @Description Configures the GPIO pin, RB9, as an input. @Preconditions None. @Returns None. @Param None. @Example // Sets the RB9 as an input IO_RB9_SetDigitalInput(); */ #define IO_RB9_SetDigitalInput() (_TRISB9 = 1) /** @Summary Configures the GPIO pin, RB9, as an output. @Description Configures the GPIO pin, RB9, as an output. @Preconditions None. @Returns None. @Param None. @Example // Sets the RB9 as an output IO_RB9_SetDigitalOutput(); */ #define IO_RB9_SetDigitalOutput() (_TRISB9 = 0) /** Section: Function Prototypes */ /** @Summary Configures the pin settings of the PIC24FV16KM202 @Description This is the generated manager file for the PIC24 / dsPIC33 / PIC32MM MCUs device. This manager configures the pins direction, initial state, analog setting. @Preconditions None. @Returns None. @Param None. @Example void SYSTEM_Initialize(void) { // Other initializers are called from this function PIN_MANAGER_Initialize(); } */ void PIN_MANAGER_Initialize (void); #endif