Inital working code
This commit is contained in:
		
							
								
								
									
										166
									
								
								mcc_generated_files/system/interrupt.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										166
									
								
								mcc_generated_files/system/interrupt.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,166 @@ | ||||
| /** | ||||
|  * Interrupt Manager Generated Driver API Header File | ||||
|  *  | ||||
|  * @file interrupt.h | ||||
|  *  | ||||
|  * @defgroup interrupt INTERRUPT | ||||
|  *  | ||||
|  * @brief This file contains API prototypes and other data types for the Interrupt Manager driver. | ||||
|  * | ||||
|  * @version Interrupt Manager Driver Version 2.0.6 | ||||
| */ | ||||
|  | ||||
| /* | ||||
| <EFBFBD> [2025] Microchip Technology Inc. and its subsidiaries. | ||||
|  | ||||
|     Subject to your compliance with these terms, you may use Microchip  | ||||
|     software and any derivatives exclusively with Microchip products.  | ||||
|     You are responsible for complying with 3rd party license terms   | ||||
|     applicable to your use of 3rd party software (including open source   | ||||
|     software) that may accompany Microchip software. SOFTWARE IS ?AS IS.?  | ||||
|     NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS  | ||||
|     SOFTWARE, INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT,   | ||||
|     MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. 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 RELATED TO THE SOFTWARE WILL NOT  | ||||
|     EXCEED AMOUNT OF FEES, IF ANY, YOU PAID DIRECTLY TO MICROCHIP FOR  | ||||
|     THIS SOFTWARE. | ||||
| */ | ||||
|  | ||||
| #ifndef INTERRUPT_H | ||||
| #define INTERRUPT_H | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Enables global interrupts. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| #define INTERRUPT_GlobalInterruptEnable() (INTCONbits.GIE = 1) | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Disables global interrupts. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| #define INTERRUPT_GlobalInterruptDisable() (INTCONbits.GIE = 0) | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Returns the Global Interrupt Enable bit status. | ||||
|  * @param None. | ||||
|  * @retval 0 - Global interrupt disabled. | ||||
|  * @retval 1 - Global interrupt enabled. | ||||
|  */ | ||||
| #define INTERRUPT_GlobalInterruptStatus() (INTCONbits.GIE) | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Enables peripheral interrupts. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| #define INTERRUPT_PeripheralInterruptEnable() (INTCONbits.PEIE = 1) | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Disables peripheral interrupts. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| #define INTERRUPT_PeripheralInterruptDisable() (INTCONbits.PEIE = 0) | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Initializes peripheral interrupt priorities, enables or disables priority vectors and initializes the external interrupt. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| void INTERRUPT_Initialize (void); | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Clears the Interrupt flag for the external interrupt, INT. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| #define EXT_INT_InterruptFlagClear()       (PIR0bits.INTF = 0) | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Clears the interrupt enable for the external interrupt, INT. This way, the external interrupts on this pin will not be serviced by the interrupt handler. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| #define EXT_INT_InterruptDisable()     (PIE0bits.INTE = 0) | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Sets the interrupt enable for the external interrupt, INT. This way, the external interrupts on this pin will be serviced by the interrupt handler. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| #define EXT_INT_InterruptEnable()       (PIE0bits.INTE = 1) | ||||
|  | ||||
|  | ||||
|  | ||||
| /** | ||||
|    Section: External Interrupt Handlers | ||||
|  */ | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Executes the ISR whenever the signal on the INT pin transitions to the preconfigured state. | ||||
|  * @pre Interrupt Manager is initialized. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| void INT_ISR(void); | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Allows for a specific callback function to be called in the INT ISR and for a nonspecific interrupt handler to be called at run time. | ||||
|  * @pre Interrupt Manager is initialized. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| void INT_CallBack(void); | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Allows selecting an interrupt handler for EXT_INT - INT at application run time. | ||||
|  * @pre Interrupt Manager is initialized. | ||||
|  * @param (*InterruptHandler)(void) - InterruptHandler function pointer. | ||||
|  * @return None. | ||||
|  */ | ||||
| void INT_SetInterruptHandler(void (* InterruptHandler)(void)); | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Dynamic interrupt handler to be called every time the INT ISR is executed. It allows any function to be registered at run time. | ||||
|  * @pre Interrupt Manager is initialized. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| extern void (*INT_InterruptHandler)(void); | ||||
|  | ||||
| /** | ||||
|  * @ingroup interrupt | ||||
|  * @brief Default interrupt handler to be called every time the INT ISR is executed. It allows any function to be registered at run time. | ||||
|  * @pre Interrupt Manager is initialized. | ||||
|  * @param None. | ||||
|  * @return None. | ||||
|  */ | ||||
| void INT_DefaultInterruptHandler(void); | ||||
|  | ||||
| #endif  // INTERRUPT_H | ||||
| /** | ||||
|  End of File | ||||
| */ | ||||
		Reference in New Issue
	
	Block a user