i don't understand why it's not commit in MPLAB

This commit is contained in:
Rémi Heredero 2023-03-03 15:03:48 +01:00
parent a977d9300d
commit 95af13e627
12 changed files with 2099 additions and 10 deletions

View File

@ -0,0 +1,239 @@
/**
EUSART1 Generated Driver File
@Company
Microchip Technology Inc.
@File Name
eusart1.c
@Summary
This is the generated driver implementation file for the EUSART1 driver using PIC10 / PIC12 / PIC16 / PIC18 MCUs
@Description
This source file provides APIs for EUSART1.
Generation Information :
Product Revision : PIC10 / PIC12 / PIC16 / PIC18 MCUs - 1.81.8
Device : PIC18F97J60
Driver Version : 2.1.1
The generated drivers are tested against the following:
Compiler : XC8 2.36 and above
MPLAB : MPLAB X 6.00
*/
/*
(c) 2018 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. It is your responsibility to comply with third party
license terms applicable to your use of third party software (including open source software) that
may accompany Microchip software.
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.
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.
*/
/**
Section: Included Files
*/
#include "eusart1.h"
/**
Section: Macro Declarations
*/
#define EUSART1_TX_BUFFER_SIZE 8
#define EUSART1_RX_BUFFER_SIZE 8
/**
Section: Global Variables
*/
volatile uint8_t eusart1RxHead = 0;
volatile uint8_t eusart1RxTail = 0;
volatile uint8_t eusart1RxBuffer[EUSART1_RX_BUFFER_SIZE];
volatile eusart1_status_t eusart1RxStatusBuffer[EUSART1_RX_BUFFER_SIZE];
volatile uint8_t eusart1RxCount;
volatile eusart1_status_t eusart1RxLastError;
/**
Section: EUSART1 APIs
*/
void (*EUSART1_FramingErrorHandler)(void);
void (*EUSART1_OverrunErrorHandler)(void);
void (*EUSART1_ErrorHandler)(void);
void EUSART1_DefaultFramingErrorHandler(void);
void EUSART1_DefaultOverrunErrorHandler(void);
void EUSART1_DefaultErrorHandler(void);
void EUSART1_Initialize(void)
{
// disable interrupts before changing states
PIE1bits.RC1IE = 0;
EUSART1_SetRxInterruptHandler(EUSART1_Receive_ISR);
// Set the EUSART1 module to the options selected in the user interface.
// ABDOVF no_overflow; SCKP async_noninverted_sync_fallingedge; BRG16 16bit_generator; WUE disabled; ABDEN disabled; RXDTP not_inverted;
BAUDCON1 = 0x08;
// SPEN enabled; RX9 9-bit; CREN enabled; ADDEN disabled; SREN disabled;
RCSTA1 = 0xD0;
// TX9 9-bit; TX9D 0; SENDB sync_break_complete; TXEN enabled; SYNC synchronous; BRGH hi_speed; CSRC master_mode;
TXSTA1 = 0xF4;
//
SPBRG1 = 0x8A;
//
SPBRGH1 = 0x02;
EUSART1_SetFramingErrorHandler(EUSART1_DefaultFramingErrorHandler);
EUSART1_SetOverrunErrorHandler(EUSART1_DefaultOverrunErrorHandler);
EUSART1_SetErrorHandler(EUSART1_DefaultErrorHandler);
eusart1RxLastError.status = 0;
eusart1RxHead = 0;
eusart1RxTail = 0;
eusart1RxCount = 0;
// enable receive interrupt
PIE1bits.RC1IE = 1;
}
bool EUSART1_is_tx_ready(void)
{
return (bool)(PIR1bits.TX1IF && TXSTA1bits.TXEN);
}
bool EUSART1_is_rx_ready(void)
{
return (eusart1RxCount ? true : false);
}
bool EUSART1_is_tx_done(void)
{
return TXSTA1bits.TRMT;
}
eusart1_status_t EUSART1_get_last_status(void){
return eusart1RxLastError;
}
uint8_t EUSART1_Read(void)
{
uint8_t readValue = 0;
RCSTA1bits.SREN = 1;
while(0 == eusart1RxCount)
{
}
eusart1RxLastError = eusart1RxStatusBuffer[eusart1RxTail];
readValue = eusart1RxBuffer[eusart1RxTail++];
if(sizeof(eusart1RxBuffer) <= eusart1RxTail)
{
eusart1RxTail = 0;
}
PIE1bits.RC1IE = 0;
eusart1RxCount--;
PIE1bits.RC1IE = 1;
return readValue;
}
void EUSART1_Write(uint8_t txData)
{
RCSTA1bits.SREN = 0;
RCSTA1bits.CREN = 0;
while(0 == PIR1bits.TX1IF)
{
}
TXREG1 = txData; // Write the data byte to the USART.
}
void EUSART1_Receive_ISR(void)
{
eusart1RxStatusBuffer[eusart1RxHead].status = 0;
if(RCSTA1bits.FERR){
eusart1RxStatusBuffer[eusart1RxHead].ferr = 1;
EUSART1_FramingErrorHandler();
}
if(RCSTA1bits.OERR){
eusart1RxStatusBuffer[eusart1RxHead].oerr = 1;
EUSART1_OverrunErrorHandler();
}
if(eusart1RxStatusBuffer[eusart1RxHead].status){
EUSART1_ErrorHandler();
} else {
EUSART1_RxDataHandler();
}
// or set custom function using eusart1_SetRxInterruptHandler()
}
void EUSART1_RxDataHandler(void){
// use this default receive interrupt handler code
eusart1RxBuffer[eusart1RxHead++] = RCREG1;
if(sizeof(eusart1RxBuffer) <= eusart1RxHead)
{
eusart1RxHead = 0;
}
eusart1RxCount++;
}
void EUSART1_DefaultFramingErrorHandler(void){}
void EUSART1_DefaultOverrunErrorHandler(void){
// EUSART1 error - restart
RCSTA1bits.CREN = 0;
RCSTA1bits.CREN = 1;
}
void EUSART1_DefaultErrorHandler(void){
EUSART1_RxDataHandler();
}
void EUSART1_SetFramingErrorHandler(void (* interruptHandler)(void)){
EUSART1_FramingErrorHandler = interruptHandler;
}
void EUSART1_SetOverrunErrorHandler(void (* interruptHandler)(void)){
EUSART1_OverrunErrorHandler = interruptHandler;
}
void EUSART1_SetErrorHandler(void (* interruptHandler)(void)){
EUSART1_ErrorHandler = interruptHandler;
}
void EUSART1_SetRxInterruptHandler(void (* interruptHandler)(void)){
EUSART1_RxDefaultInterruptHandler = interruptHandler;
}
/**
End of File
*/

View File

@ -0,0 +1,477 @@
/**
EUSART1 Generated Driver API Header File
@Company
Microchip Technology Inc.
@File Name
eusart1.h
@Summary
This is the generated header file for the EUSART1 driver using PIC10 / PIC12 / PIC16 / PIC18 MCUs
@Description
This header file provides APIs for driver for EUSART1.
Generation Information :
Product Revision : PIC10 / PIC12 / PIC16 / PIC18 MCUs - 1.81.8
Device : PIC18F97J60
Driver Version : 2.1.1
The generated drivers are tested against the following:
Compiler : XC8 2.36 and above
MPLAB : MPLAB X 6.00
*/
/*
(c) 2018 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. It is your responsibility to comply with third party
license terms applicable to your use of third party software (including open source software) that
may accompany Microchip software.
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.
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.
*/
#ifndef EUSART1_H
#define EUSART1_H
/**
Section: Included Files
*/
#include <xc.h>
#include <stdbool.h>
#include <stdint.h>
#ifdef __cplusplus // Provide C++ Compatibility
extern "C" {
#endif
/**
Section: Macro Declarations
*/
#define EUSART1_DataReady (EUSART1_is_rx_ready())
/**
Section: Data Type Definitions
*/
typedef union {
struct {
unsigned perr : 1;
unsigned ferr : 1;
unsigned oerr : 1;
unsigned reserved : 5;
};
uint8_t status;
}eusart1_status_t;
/**
Section: Global variables
*/
extern volatile uint8_t eusart1TxBufferRemaining;
extern volatile uint8_t eusart1RxCount;
/**
Section: EUSART1 APIs
*/
void (*EUSART1_RxDefaultInterruptHandler)(void);
/**
@Summary
Initialization routine that takes inputs from the EUSART1 GUI.
@Description
This routine initializes the EUSART1 driver.
This routine must be called before any other EUSART1 routine is called.
@Preconditions
None
@Param
None
@Returns
None
@Comment
*/
void EUSART1_Initialize(void);
/**
@Summary
Checks if the EUSART1 transmitter is ready to transmit data
@Description
This routine checks if EUSART1 transmitter is ready
to accept and transmit data byte
@Preconditions
EUSART1_Initialize() function should have been called
before calling this function.
EUSART1 transmitter should be enabled before calling
this function
@Param
None
@Returns
Status of EUSART1 transmitter
TRUE: EUSART1 transmitter is ready
FALSE: EUSART1 transmitter is not ready
@Example
<code>
void main(void)
{
volatile uint8_t rxData;
// Initialize the device
SYSTEM_Initialize();
while(1)
{
// Logic to echo received data
if(EUSART1_is_rx_ready())
{
rxData = UART1_Read();
if(EUSART1_is_tx_ready())
{
EUSART1Write(rxData);
}
}
}
}
</code>
*/
bool EUSART1_is_tx_ready(void);
/**
@Summary
Checks if the EUSART1 receiver ready for reading
@Description
This routine checks if EUSART1 receiver has received data
and ready to be read
@Preconditions
EUSART1_Initialize() function should be called
before calling this function
EUSART1 receiver should be enabled before calling this
function
@Param
None
@Returns
Status of EUSART1 receiver
TRUE: EUSART1 receiver is ready for reading
FALSE: EUSART1 receiver is not ready for reading
@Example
<code>
void main(void)
{
volatile uint8_t rxData;
// Initialize the device
SYSTEM_Initialize();
while(1)
{
// Logic to echo received data
if(EUSART1_is_rx_ready())
{
rxData = UART1_Read();
if(EUSART1_is_tx_ready())
{
EUSART1_Write(rxData);
}
}
}
}
</code>
*/
bool EUSART1_is_rx_ready(void);
/**
@Summary
Checks if EUSART1 data is transmitted
@Description
This function return the status of transmit shift register
@Preconditions
EUSART1_Initialize() function should be called
before calling this function
EUSART1 transmitter should be enabled and EUSART1_Write
should be called before calling this function
@Param
None
@Returns
Status of EUSART1 receiver
TRUE: Data completely shifted out if the USART shift register
FALSE: Data is not completely shifted out of the shift register
@Example
<code>
void main(void)
{
volatile uint8_t rxData;
// Initialize the device
SYSTEM_Initialize();
while(1)
{
if(EUSART1_is_tx_ready())
{
LED_0_SetHigh();
EUSART1Write(rxData);
}
if(EUSART1_is_tx_done()
{
LED_0_SetLow();
}
}
}
</code>
*/
bool EUSART1_is_tx_done(void);
/**
@Summary
Gets the error status of the last read byte.
@Description
This routine gets the error status of the last read byte.
@Preconditions
EUSART1_Initialize() function should have been called
before calling this function. The returned value is only
updated after a read is called.
@Param
None
@Returns
the status of the last read byte
@Example
<code>
void main(void)
{
volatile uint8_t rxData;
volatile eusart1_status_t rxStatus;
// Initialize the device
SYSTEM_Initialize();
// Enable the Global Interrupts
INTERRUPT_GlobalInterruptEnable();
while(1)
{
// Logic to echo received data
if(EUSART1_is_rx_ready())
{
rxData = EUSART1_Read();
rxStatus = EUSART1_get_last_status();
if(rxStatus.ferr){
LED_0_SetHigh();
}
}
}
}
</code>
*/
eusart1_status_t EUSART1_get_last_status(void);
/**
@Summary
Read a byte of data from the EUSART1.
@Description
This routine reads a byte of data from the EUSART1.
@Preconditions
EUSART1_Initialize() function should have been called
before calling this function. The transfer status should be checked to see
if the receiver is not empty before calling this function.
@Param
None
@Returns
A data byte received by the driver.
*/
uint8_t EUSART1_Read(void);
/**
@Summary
Writes a byte of data to the EUSART1.
@Description
This routine writes a byte of data to the EUSART1.
@Preconditions
EUSART1_Initialize() function should have been called
before calling this function. The transfer status should be checked to see
if transmitter is not busy before calling this function.
@Param
txData - Data byte to write to the EUSART1
@Returns
None
*/
void EUSART1_Write(uint8_t txData);
/**
@Summary
Maintains the driver's receiver state machine and implements its ISR
@Description
This routine is used to maintain the driver's internal receiver state
machine.This interrupt service routine is called when the state of the
receiver needs to be maintained in a non polled manner.
@Preconditions
EUSART1_Initialize() function should have been called
for the ISR to execute correctly.
@Param
None
@Returns
None
*/
void EUSART1_Receive_ISR(void);
/**
@Summary
Maintains the driver's receiver state machine
@Description
This routine is called by the receive state routine and is used to maintain
the driver's internal receiver state machine. It should be called by a custom
ISR to maintain normal behavior
@Preconditions
EUSART1_Initialize() function should have been called
for the ISR to execute correctly.
@Param
None
@Returns
None
*/
void EUSART1_RxDataHandler(void);
/**
@Summary
Set EUSART1 Framing Error Handler
@Description
This API sets the function to be called upon EUSART1 framing error
@Preconditions
Initialize the EUSART1 before calling this API
@Param
Address of function to be set as framing error handler
@Returns
None
*/
void EUSART1_SetFramingErrorHandler(void (* interruptHandler)(void));
/**
@Summary
Set EUSART1 Overrun Error Handler
@Description
This API sets the function to be called upon EUSART1 overrun error
@Preconditions
Initialize the EUSART1 module before calling this API
@Param
Address of function to be set as overrun error handler
@Returns
None
*/
void EUSART1_SetOverrunErrorHandler(void (* interruptHandler)(void));
/**
@Summary
Set EUSART1 Error Handler
@Description
This API sets the function to be called upon EUSART1 error
@Preconditions
Initialize the EUSART1 module before calling this API
@Param
Address of function to be set as error handler
@Returns
None
*/
void EUSART1_SetErrorHandler(void (* interruptHandler)(void));
/**
@Summary
Sets the receive handler function to be called by the interrupt service
@Description
Calling this function will set a new custom function that will be
called when the receive interrupt needs servicing.
@Preconditions
EUSART1_Initialize() function should have been called
for the ISR to execute correctly.
@Param
A pointer to the new function
@Returns
None
*/
void EUSART1_SetRxInterruptHandler(void (* interruptHandler)(void));
#ifdef __cplusplus // Provide C++ Compatibility
}
#endif
#endif // EUSART1_H
/**
End of File
*/

View File

@ -0,0 +1,83 @@
/**
Generated Interrupt Manager Source File
@Company:
Microchip Technology Inc.
@File Name:
interrupt_manager.c
@Summary:
This is the Interrupt Manager file generated using PIC10 / PIC12 / PIC16 / PIC18 MCUs
@Description:
This header file provides implementations for global interrupt handling.
For individual peripheral handlers please see the peripheral driver for
all modules selected in the GUI.
Generation Information :
Product Revision : PIC10 / PIC12 / PIC16 / PIC18 MCUs - 1.81.8
Device : PIC18F97J60
Driver Version : 2.04
The generated drivers are tested against the following:
Compiler : XC8 2.36 and above or later
MPLAB : MPLAB X 6.00
*/
/*
(c) 2018 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. It is your responsibility to comply with third party
license terms applicable to your use of third party software (including open source software) that
may accompany Microchip software.
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.
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.
*/
#include "interrupt_manager.h"
#include "mcc.h"
void INTERRUPT_Initialize (void)
{
// Disable Interrupt Priority Vectors (16CXXX Compatibility Mode)
RCONbits.IPEN = 0;
}
void __interrupt() INTERRUPT_InterruptManager (void)
{
// interrupt handler
if(INTCONbits.TMR0IE == 1 && INTCONbits.TMR0IF == 1)
{
TMR0_ISR();
}
else if(INTCONbits.PEIE == 1)
{
if(PIE1bits.RC1IE == 1 && PIR1bits.RC1IF == 1)
{
EUSART1_RxDefaultInterruptHandler();
}
else
{
//Unhandled Interrupt
}
}
else
{
//Unhandled Interrupt
}
}
/**
End of File
*/

View File

@ -0,0 +1,115 @@
/**
Generated Interrupt Manager Header File
@Company:
Microchip Technology Inc.
@File Name:
interrupt_manager.h
@Summary:
This is the Interrupt Manager file generated using PIC10 / PIC12 / PIC16 / PIC18 MCUs
@Description:
This header file provides implementations for global interrupt handling.
For individual peripheral handlers please see the peripheral driver for
all modules selected in the GUI.
Generation Information :
Product Revision : PIC10 / PIC12 / PIC16 / PIC18 MCUs - 1.81.8
Device : PIC18F97J60
Driver Version : 2.03
The generated drivers are tested against the following:
Compiler : XC8 2.36 and above or later
MPLAB : MPLAB X 6.00
*/
/*
(c) 2018 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. It is your responsibility to comply with third party
license terms applicable to your use of third party software (including open source software) that
may accompany Microchip software.
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.
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.
*/
#ifndef INTERRUPT_MANAGER_H
#define INTERRUPT_MANAGER_H
/**
* @Param
none
* @Returns
none
* @Description
This macro will enable global interrupts.
* @Example
INTERRUPT_GlobalInterruptEnable();
*/
#define INTERRUPT_GlobalInterruptEnable() (INTCONbits.GIE = 1)
/**
* @Param
none
* @Returns
none
* @Description
This macro will disable global interrupts.
* @Example
INTERRUPT_GlobalInterruptDisable();
*/
#define INTERRUPT_GlobalInterruptDisable() (INTCONbits.GIE = 0)
/**
* @Param
none
* @Returns
none
* @Description
This macro will enable peripheral interrupts.
* @Example
INTERRUPT_PeripheralInterruptEnable();
*/
#define INTERRUPT_PeripheralInterruptEnable() (INTCONbits.PEIE = 1)
/**
* @Param
none
* @Returns
none
* @Description
This macro will disable peripheral interrupts.
* @Example
INTERRUPT_PeripheralInterruptDisable();
*/
#define INTERRUPT_PeripheralInterruptDisable() (INTCONbits.PEIE = 0)
/**
* @Param
none
* @Returns
none
* @Description
Initializes PIC18 peripheral interrupt priorities; enables/disables priority vectors
* @Example
INTERRUPT_Initialize();
*/
void INTERRUPT_Initialize (void);
#endif // INTERRUPT_MANAGER_H
/**
End of File
*/

View File

@ -50,11 +50,14 @@
void SYSTEM_Initialize(void) void SYSTEM_Initialize(void)
{ {
INTERRUPT_Initialize();
PIN_MANAGER_Initialize(); PIN_MANAGER_Initialize();
OSCILLATOR_Initialize(); OSCILLATOR_Initialize();
ADC_Initialize();
EPWM1_Initialize(); EPWM1_Initialize();
TMR2_Initialize(); TMR2_Initialize();
ADC_Initialize(); TMR0_Initialize();
EUSART1_Initialize();
} }
void OSCILLATOR_Initialize(void) void OSCILLATOR_Initialize(void)

View File

@ -52,9 +52,12 @@
#include <stdint.h> #include <stdint.h>
#include <stdbool.h> #include <stdbool.h>
#include <conio.h> #include <conio.h>
#include "interrupt_manager.h"
#include "epwm1.h" #include "epwm1.h"
#include "tmr2.h" #include "tmr2.h"
#include "adc.h" #include "adc.h"
#include "tmr0.h"
#include "eusart1.h"

View File

@ -0,0 +1,167 @@
/**
TMR0 Generated Driver File
@Company
Microchip Technology Inc.
@File Name
tmr0.c
@Summary
This is the generated driver implementation file for the TMR0 driver using PIC10 / PIC12 / PIC16 / PIC18 MCUs
@Description
This source file provides APIs for TMR0.
Generation Information :
Product Revision : PIC10 / PIC12 / PIC16 / PIC18 MCUs - 1.81.8
Device : PIC18F97J60
Driver Version : 2.01
The generated drivers are tested against the following:
Compiler : XC8 2.36 and above
MPLAB : MPLAB X 6.00
*/
/*
(c) 2018 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. It is your responsibility to comply with third party
license terms applicable to your use of third party software (including open source software) that
may accompany Microchip software.
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.
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.
*/
/**
Section: Included Files
*/
#include <xc.h>
#include "tmr0.h"
/**
Section: Global Variables Definitions
*/
void (*TMR0_InterruptHandler)(void);
volatile uint16_t timer0ReloadVal;
/**
Section: TMR0 APIs
*/
void TMR0_Initialize(void)
{
// Set TMR0 to the options selected in the User Interface
//Enable 16bit timer mode before assigning value to TMR0H
T0CONbits.T08BIT = 0;
// TMR0H 255;
TMR0H = 0xFF;
// TMR0L 252;
TMR0L = 0xFC;
// Load TMR0 value to the 16-bit reload variable
timer0ReloadVal = (uint16_t)((TMR0H << 8) | TMR0L);
// Clear Interrupt flag before enabling the interrupt
INTCONbits.TMR0IF = 0;
// Enabling TMR0 interrupt.
INTCONbits.TMR0IE = 1;
// Set Default Interrupt Handler
TMR0_SetInterruptHandler(TMR0_DefaultInterruptHandler);
// T0PS 1:2; T08BIT 16-bit; T0SE Increment_hi_lo; T0CS T0CKI; TMR0ON enabled; PSA not_assigned;
T0CON = 0xB8;
}
void TMR0_StartTimer(void)
{
// Start the Timer by writing to TMR0ON bit
T0CONbits.TMR0ON = 1;
}
void TMR0_StopTimer(void)
{
// Stop the Timer by writing to TMR0ON bit
T0CONbits.TMR0ON = 0;
}
uint16_t TMR0_ReadTimer(void)
{
uint16_t readVal;
uint8_t readValLow;
uint8_t readValHigh;
readValLow = TMR0L;
readValHigh = TMR0H;
readVal = ((uint16_t)readValHigh << 8) + readValLow;
return readVal;
}
void TMR0_WriteTimer(uint16_t timerVal)
{
// Write to the Timer0 register
TMR0H = timerVal >> 8;
TMR0L = (uint8_t) timerVal;
}
void TMR0_Reload(void)
{
// Write to the Timer0 register
TMR0H = timer0ReloadVal >> 8;
TMR0L = (uint8_t) timer0ReloadVal;
}
void TMR0_ISR(void)
{
// clear the TMR0 interrupt flag
INTCONbits.TMR0IF = 0;
// reload TMR0
// Write to the Timer0 register
TMR0H = timer0ReloadVal >> 8;
TMR0L = (uint8_t) timer0ReloadVal;
if(TMR0_InterruptHandler)
{
TMR0_InterruptHandler();
}
// add your TMR0 interrupt custom code
}
void TMR0_SetInterruptHandler(void (* InterruptHandler)(void)){
TMR0_InterruptHandler = InterruptHandler;
}
void TMR0_DefaultInterruptHandler(void){
// add your TMR0 interrupt custom code
// or set custom function using TMR0_SetInterruptHandler()
}
/**
End of File
*/

View File

@ -0,0 +1,356 @@
/**
TMR0 Generated Driver API Header File
@Company
Microchip Technology Inc.
@File Name
tmr0.h
@Summary
This is the generated header file for the TMR0 driver using PIC10 / PIC12 / PIC16 / PIC18 MCUs
@Description
This header file provides APIs for TMR0.
Generation Information :
Product Revision : PIC10 / PIC12 / PIC16 / PIC18 MCUs - 1.81.8
Device : PIC18F97J60
Driver Version : 2.01
The generated drivers are tested against the following:
Compiler : XC8 2.36 and above
MPLAB : MPLAB X 6.00
*/
/*
(c) 2018 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. It is your responsibility to comply with third party
license terms applicable to your use of third party software (including open source software) that
may accompany Microchip software.
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.
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.
*/
#ifndef TMR0_H
#define TMR0_H
/**
Section: Included Files
*/
#include <stdint.h>
#include <stdbool.h>
#ifdef __cplusplus // Provide C++ Compatibility
extern "C" {
#endif
/**
Section: TMR0 APIs
*/
/**
@Summary
Initializes the TMR0.
@Description
This function initializes the TMR0 Registers.
This function must be called before any other TMR0 function is called.
@Preconditions
None
@Param
None
@Returns
None
@Comment
@Example
<code>
main()
{
// Initialize TMR0 module
TMR0_Initialize();
// Do something else...
}
</code>
*/
void TMR0_Initialize(void);
/**
@Summary
This function starts the TMR0.
@Description
This function starts the TMR0 operation.
This function must be called after the initialization of TMR0.
@Preconditions
Initialize the TMR0 before calling this function.
@Param
None
@Returns
None
@Example
<code>
// Initialize TMR0 module
// Start TMR0
TMR0_StartTimer();
// Do something else...
</code>
*/
void TMR0_StartTimer(void);
/**
@Summary
This function stops the TMR0.
@Description
This function stops the TMR0 operation.
This function must be called after the start of TMR0.
@Preconditions
Initialize the TMR0 before calling this function.
@Param
None
@Returns
None
@Example
<code>
// Initialize TMR0 module
// Start TMR0
TMR0_StartTimer();
// Do something else...
// Stop TMR0;
TMR0_StopTimer();
</code>
*/
void TMR0_StopTimer(void);
/**
@Summary
Reads the 16 bits TMR0 register value.
@Description
This function reads the 16 bits TMR0 register value and return it.
@Preconditions
Initialize the TMR0 before calling this function.
@Param
None
@Returns
This function returns the 16 bits value of TMR0 register.
@Example
<code>
// Initialize TMR0 module
// Start TMR0
TMR0_StartTimer();
// Read the current value of TMR0
if(0 == TMR0_ReadTimer())
{
// Do something else...
// Reload the TMR value
TMR0_Reload();
}
</code>
*/
uint16_t TMR0_ReadTimer(void);
/**
@Summary
Writes the 16 bits value to TMR0 register.
@Description
This function writes the 16 bits value to TMR0 register.
This function must be called after the initialization of TMR0.
@Preconditions
Initialize the TMR0 before calling this function.
@Param
timerVal - Value to write into TMR0 register.
@Returns
None
@Example
<code>
#define PERIOD 0x8000
#define ZERO 0x0000
while(1)
{
//Read the TMR0 register
if(ZERO == TMR0_ReadTimer())
{
// Do something else...
// Write the TMR0 register
TMR0_WriteTimer(PERIOD);
}
// Do something else...
}
</code>
*/
void TMR0_WriteTimer(uint16_t timerVal);
/**
@Summary
Reload the 16 bits value to TMR0 register.
@Description
This function reloads the 16 bit value to TMR0 register.
This function must be called to write initial value into TMR0 register.
@Preconditions
Initialize the TMR0 before calling this function.
@Param
None
@Returns
None
@Example
<code>
while(1)
{
if(TMR0IF)
{
// Do something else...
// clear the TMR0 interrupt flag
TMR0IF = 0;
// Reload the initial value of TMR0
TMR0_Reload();
}
}
</code>
*/
void TMR0_Reload(void);
/**
@Summary
Timer Interrupt Service Routine
@Description
Timer Interrupt Service Routine is called by the Interrupt Manager.
@Preconditions
Initialize the TMR0 module with interrupt before calling this isr.
@Param
None
@Returns
None
*/
void TMR0_ISR(void);
/**
@Summary
Set Timer Interrupt Handler
@Description
This sets the function to be called during the ISR
@Preconditions
Initialize the TMR0 module with interrupt before calling this.
@Param
Address of function to be set
@Returns
None
*/
void TMR0_SetInterruptHandler(void (* InterruptHandler)(void));
/**
@Summary
Timer Interrupt Handler
@Description
This is a function pointer to the function that will be called during the ISR
@Preconditions
Initialize the TMR0 module with interrupt before calling this isr.
@Param
None
@Returns
None
*/
extern void (*TMR0_InterruptHandler)(void);
/**
@Summary
Default Timer Interrupt Handler
@Description
This is the default Interrupt Handler function
@Preconditions
Initialize the TMR0 module with interrupt before calling this isr.
@Param
None
@Returns
None
*/
void TMR0_DefaultInterruptHandler(void);
#ifdef __cplusplus // Provide C++ Compatibility
}
#endif
#endif // TMR0_H
/**
End of File
*/

View File

@ -57,17 +57,17 @@ OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
# Source Files Quoted if spaced # Source Files Quoted if spaced
SOURCEFILES_QUOTED_IF_SPACED=lcd/lcd.c mcc_generated_files/device_config.c mcc_generated_files/mcc.c mcc_generated_files/pin_manager.c mcc_generated_files/adc.c main.c crc.c measure.c modbus.c mcc_generated_files/epwm1.c mcc_generated_files/tmr2.c SOURCEFILES_QUOTED_IF_SPACED=lcd/lcd.c mcc_generated_files/device_config.c mcc_generated_files/mcc.c mcc_generated_files/pin_manager.c mcc_generated_files/adc.c main.c crc.c measure.c modbus.c mcc_generated_files/epwm1.c mcc_generated_files/tmr2.c mcc_generated_files/eusart1.c mcc_generated_files/interrupt_manager.c mcc_generated_files/tmr0.c
# Object Files Quoted if spaced # Object Files Quoted if spaced
OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/lcd/lcd.p1 ${OBJECTDIR}/mcc_generated_files/device_config.p1 ${OBJECTDIR}/mcc_generated_files/mcc.p1 ${OBJECTDIR}/mcc_generated_files/pin_manager.p1 ${OBJECTDIR}/mcc_generated_files/adc.p1 ${OBJECTDIR}/main.p1 ${OBJECTDIR}/crc.p1 ${OBJECTDIR}/measure.p1 ${OBJECTDIR}/modbus.p1 ${OBJECTDIR}/mcc_generated_files/epwm1.p1 ${OBJECTDIR}/mcc_generated_files/tmr2.p1 OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/lcd/lcd.p1 ${OBJECTDIR}/mcc_generated_files/device_config.p1 ${OBJECTDIR}/mcc_generated_files/mcc.p1 ${OBJECTDIR}/mcc_generated_files/pin_manager.p1 ${OBJECTDIR}/mcc_generated_files/adc.p1 ${OBJECTDIR}/main.p1 ${OBJECTDIR}/crc.p1 ${OBJECTDIR}/measure.p1 ${OBJECTDIR}/modbus.p1 ${OBJECTDIR}/mcc_generated_files/epwm1.p1 ${OBJECTDIR}/mcc_generated_files/tmr2.p1 ${OBJECTDIR}/mcc_generated_files/eusart1.p1 ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1 ${OBJECTDIR}/mcc_generated_files/tmr0.p1
POSSIBLE_DEPFILES=${OBJECTDIR}/lcd/lcd.p1.d ${OBJECTDIR}/mcc_generated_files/device_config.p1.d ${OBJECTDIR}/mcc_generated_files/mcc.p1.d ${OBJECTDIR}/mcc_generated_files/pin_manager.p1.d ${OBJECTDIR}/mcc_generated_files/adc.p1.d ${OBJECTDIR}/main.p1.d ${OBJECTDIR}/crc.p1.d ${OBJECTDIR}/measure.p1.d ${OBJECTDIR}/modbus.p1.d ${OBJECTDIR}/mcc_generated_files/epwm1.p1.d ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d POSSIBLE_DEPFILES=${OBJECTDIR}/lcd/lcd.p1.d ${OBJECTDIR}/mcc_generated_files/device_config.p1.d ${OBJECTDIR}/mcc_generated_files/mcc.p1.d ${OBJECTDIR}/mcc_generated_files/pin_manager.p1.d ${OBJECTDIR}/mcc_generated_files/adc.p1.d ${OBJECTDIR}/main.p1.d ${OBJECTDIR}/crc.p1.d ${OBJECTDIR}/measure.p1.d ${OBJECTDIR}/modbus.p1.d ${OBJECTDIR}/mcc_generated_files/epwm1.p1.d ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d ${OBJECTDIR}/mcc_generated_files/eusart1.p1.d ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1.d ${OBJECTDIR}/mcc_generated_files/tmr0.p1.d
# Object Files # Object Files
OBJECTFILES=${OBJECTDIR}/lcd/lcd.p1 ${OBJECTDIR}/mcc_generated_files/device_config.p1 ${OBJECTDIR}/mcc_generated_files/mcc.p1 ${OBJECTDIR}/mcc_generated_files/pin_manager.p1 ${OBJECTDIR}/mcc_generated_files/adc.p1 ${OBJECTDIR}/main.p1 ${OBJECTDIR}/crc.p1 ${OBJECTDIR}/measure.p1 ${OBJECTDIR}/modbus.p1 ${OBJECTDIR}/mcc_generated_files/epwm1.p1 ${OBJECTDIR}/mcc_generated_files/tmr2.p1 OBJECTFILES=${OBJECTDIR}/lcd/lcd.p1 ${OBJECTDIR}/mcc_generated_files/device_config.p1 ${OBJECTDIR}/mcc_generated_files/mcc.p1 ${OBJECTDIR}/mcc_generated_files/pin_manager.p1 ${OBJECTDIR}/mcc_generated_files/adc.p1 ${OBJECTDIR}/main.p1 ${OBJECTDIR}/crc.p1 ${OBJECTDIR}/measure.p1 ${OBJECTDIR}/modbus.p1 ${OBJECTDIR}/mcc_generated_files/epwm1.p1 ${OBJECTDIR}/mcc_generated_files/tmr2.p1 ${OBJECTDIR}/mcc_generated_files/eusart1.p1 ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1 ${OBJECTDIR}/mcc_generated_files/tmr0.p1
# Source Files # Source Files
SOURCEFILES=lcd/lcd.c mcc_generated_files/device_config.c mcc_generated_files/mcc.c mcc_generated_files/pin_manager.c mcc_generated_files/adc.c main.c crc.c measure.c modbus.c mcc_generated_files/epwm1.c mcc_generated_files/tmr2.c SOURCEFILES=lcd/lcd.c mcc_generated_files/device_config.c mcc_generated_files/mcc.c mcc_generated_files/pin_manager.c mcc_generated_files/adc.c main.c crc.c measure.c modbus.c mcc_generated_files/epwm1.c mcc_generated_files/tmr2.c mcc_generated_files/eusart1.c mcc_generated_files/interrupt_manager.c mcc_generated_files/tmr0.c
@ -182,6 +182,30 @@ ${OBJECTDIR}/mcc_generated_files/tmr2.p1: mcc_generated_files/tmr2.c nbproject/
@-${MV} ${OBJECTDIR}/mcc_generated_files/tmr2.d ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d @-${MV} ${OBJECTDIR}/mcc_generated_files/tmr2.d ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d
@${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ @${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d $(SILENT) -rsi ${MP_CC_DIR}../
${OBJECTDIR}/mcc_generated_files/eusart1.p1: mcc_generated_files/eusart1.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/mcc_generated_files"
@${RM} ${OBJECTDIR}/mcc_generated_files/eusart1.p1.d
@${RM} ${OBJECTDIR}/mcc_generated_files/eusart1.p1
${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=snap -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -memi=wordwrite -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto:auto -o ${OBJECTDIR}/mcc_generated_files/eusart1.p1 mcc_generated_files/eusart1.c
@-${MV} ${OBJECTDIR}/mcc_generated_files/eusart1.d ${OBJECTDIR}/mcc_generated_files/eusart1.p1.d
@${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/eusart1.p1.d $(SILENT) -rsi ${MP_CC_DIR}../
${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1: mcc_generated_files/interrupt_manager.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/mcc_generated_files"
@${RM} ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1.d
@${RM} ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1
${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=snap -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -memi=wordwrite -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto:auto -o ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1 mcc_generated_files/interrupt_manager.c
@-${MV} ${OBJECTDIR}/mcc_generated_files/interrupt_manager.d ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1.d
@${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1.d $(SILENT) -rsi ${MP_CC_DIR}../
${OBJECTDIR}/mcc_generated_files/tmr0.p1: mcc_generated_files/tmr0.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/mcc_generated_files"
@${RM} ${OBJECTDIR}/mcc_generated_files/tmr0.p1.d
@${RM} ${OBJECTDIR}/mcc_generated_files/tmr0.p1
${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=snap -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -memi=wordwrite -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto:auto -o ${OBJECTDIR}/mcc_generated_files/tmr0.p1 mcc_generated_files/tmr0.c
@-${MV} ${OBJECTDIR}/mcc_generated_files/tmr0.d ${OBJECTDIR}/mcc_generated_files/tmr0.p1.d
@${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/tmr0.p1.d $(SILENT) -rsi ${MP_CC_DIR}../
else else
${OBJECTDIR}/lcd/lcd.p1: lcd/lcd.c nbproject/Makefile-${CND_CONF}.mk ${OBJECTDIR}/lcd/lcd.p1: lcd/lcd.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/lcd" @${MKDIR} "${OBJECTDIR}/lcd"
@ -271,6 +295,30 @@ ${OBJECTDIR}/mcc_generated_files/tmr2.p1: mcc_generated_files/tmr2.c nbproject/
@-${MV} ${OBJECTDIR}/mcc_generated_files/tmr2.d ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d @-${MV} ${OBJECTDIR}/mcc_generated_files/tmr2.d ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d
@${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ @${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/tmr2.p1.d $(SILENT) -rsi ${MP_CC_DIR}../
${OBJECTDIR}/mcc_generated_files/eusart1.p1: mcc_generated_files/eusart1.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/mcc_generated_files"
@${RM} ${OBJECTDIR}/mcc_generated_files/eusart1.p1.d
@${RM} ${OBJECTDIR}/mcc_generated_files/eusart1.p1
${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -memi=wordwrite -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto:auto -o ${OBJECTDIR}/mcc_generated_files/eusart1.p1 mcc_generated_files/eusart1.c
@-${MV} ${OBJECTDIR}/mcc_generated_files/eusart1.d ${OBJECTDIR}/mcc_generated_files/eusart1.p1.d
@${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/eusart1.p1.d $(SILENT) -rsi ${MP_CC_DIR}../
${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1: mcc_generated_files/interrupt_manager.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/mcc_generated_files"
@${RM} ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1.d
@${RM} ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1
${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -memi=wordwrite -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto:auto -o ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1 mcc_generated_files/interrupt_manager.c
@-${MV} ${OBJECTDIR}/mcc_generated_files/interrupt_manager.d ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1.d
@${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/interrupt_manager.p1.d $(SILENT) -rsi ${MP_CC_DIR}../
${OBJECTDIR}/mcc_generated_files/tmr0.p1: mcc_generated_files/tmr0.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/mcc_generated_files"
@${RM} ${OBJECTDIR}/mcc_generated_files/tmr0.p1.d
@${RM} ${OBJECTDIR}/mcc_generated_files/tmr0.p1
${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -memi=wordwrite -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto:auto -o ${OBJECTDIR}/mcc_generated_files/tmr0.p1 mcc_generated_files/tmr0.c
@-${MV} ${OBJECTDIR}/mcc_generated_files/tmr0.d ${OBJECTDIR}/mcc_generated_files/tmr0.p1.d
@${FIXDEPS} ${OBJECTDIR}/mcc_generated_files/tmr0.p1.d $(SILENT) -rsi ${MP_CC_DIR}../
endif endif
# ------------------------------------------------------------------------------------ # ------------------------------------------------------------------------------------

View File

@ -1,11 +1,11 @@
# #
#Fri Mar 03 13:24:37 CET 2023 #Fri Mar 03 14:42:22 CET 2023
default.languagetoolchain.version=2.40 default.languagetoolchain.version=2.40
default.Pack.dfplocation=C\:\\Program Files\\Microchip\\MPLABX\\v6.00\\packs\\Microchip\\PIC18F-J_DFP\\1.5.44 default.Pack.dfplocation=C\:\\Program Files\\Microchip\\MPLABX\\v6.00\\packs\\Microchip\\PIC18F-J_DFP\\1.5.44
conf.ids=default conf.ids=default
default.languagetoolchain.dir=C\:\\Program Files\\Microchip\\xc8\\v2.40\\bin default.languagetoolchain.dir=C\:\\Program Files\\Microchip\\xc8\\v2.40\\bin
host.id=3awj-afwq-rl host.id=3awj-afwq-rl
configurations-xml=080b6b0e67e3ef40b76cf6528cd7e334 configurations-xml=19a2811a74f6d1b3cc6f3802bb8369cf
default.com-microchip-mplab-mdbcore-snap-SnapToolImpl.md5=eaa336cefb7fc46db8b50b7b2b6e54ca default.com-microchip-mplab-mdbcore-snap-SnapToolImpl.md5=eaa336cefb7fc46db8b50b7b2b6e54ca
com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=6e02ca5e9f5042ffd365b42ab82d3a9b com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=6e02ca5e9f5042ffd365b42ab82d3a9b
user-defined-mime-resolver-xml=none user-defined-mime-resolver-xml=none

View File

@ -16,6 +16,9 @@
<itemPath>mcc_generated_files/adc.h</itemPath> <itemPath>mcc_generated_files/adc.h</itemPath>
<itemPath>mcc_generated_files/epwm1.h</itemPath> <itemPath>mcc_generated_files/epwm1.h</itemPath>
<itemPath>mcc_generated_files/tmr2.h</itemPath> <itemPath>mcc_generated_files/tmr2.h</itemPath>
<itemPath>mcc_generated_files/interrupt_manager.h</itemPath>
<itemPath>mcc_generated_files/tmr0.h</itemPath>
<itemPath>mcc_generated_files/eusart1.h</itemPath>
</logicalFolder> </logicalFolder>
<itemPath>crc.h</itemPath> <itemPath>crc.h</itemPath>
<itemPath>measure.h</itemPath> <itemPath>measure.h</itemPath>
@ -40,6 +43,9 @@
<itemPath>mcc_generated_files/adc.c</itemPath> <itemPath>mcc_generated_files/adc.c</itemPath>
<itemPath>mcc_generated_files/epwm1.c</itemPath> <itemPath>mcc_generated_files/epwm1.c</itemPath>
<itemPath>mcc_generated_files/tmr2.c</itemPath> <itemPath>mcc_generated_files/tmr2.c</itemPath>
<itemPath>mcc_generated_files/eusart1.c</itemPath>
<itemPath>mcc_generated_files/interrupt_manager.c</itemPath>
<itemPath>mcc_generated_files/tmr0.c</itemPath>
</logicalFolder> </logicalFolder>
<itemPath>main.c</itemPath> <itemPath>main.c</itemPath>
<itemPath>crc.c</itemPath> <itemPath>crc.c</itemPath>

View File

@ -9,6 +9,10 @@
<string>ECCP1</string> <string>ECCP1</string>
<string>class com.microchip.mcc.mcu8.modules.eccp.ECCP</string> <string>class com.microchip.mcc.mcu8.modules.eccp.ECCP</string>
</entry> </entry>
<entry>
<string>EUSART1</string>
<string>class com.microchip.mcc.mcu8.modules.eusart.EUSART</string>
</entry>
<entry> <entry>
<string>INTERNAL OSCILLATOR</string> <string>INTERNAL OSCILLATOR</string>
<string>class com.microchip.mcc.mcu8.systemManager.osc_v3.Osc</string> <string>class com.microchip.mcc.mcu8.systemManager.osc_v3.Osc</string>
@ -29,6 +33,10 @@
<string>System Module</string> <string>System Module</string>
<string>class com.microchip.mcc.mcu8.systemManager.SystemManager</string> <string>class com.microchip.mcc.mcu8.systemManager.SystemManager</string>
</entry> </entry>
<entry>
<string>TMR0</string>
<string>class com.microchip.mcc.mcu8.modules.tmr0_v1.TMR0</string>
</entry>
<entry> <entry>
<string>TMR2</string> <string>TMR2</string>
<string>class com.microchip.mcc.mcu8.modules.tmr2_v3.TMR2</string> <string>class com.microchip.mcc.mcu8.modules.tmr2_v3.TMR2</string>
@ -750,6 +758,378 @@
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="ECCP1" registerAlias="ECCPDEL" settingAlias="PRSEN"/> <key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="ECCP1" registerAlias="ECCPDEL" settingAlias="PRSEN"/>
<value>automatic_restart</value> <value>automatic_restart</value>
</entry> </entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="CK1"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="DT1"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="EUSART1_RCIISRFunction"/>
<value>RxDefaultInterruptHandler</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="EUSART1_TXIISRFunction"/>
<value>TxDefaultInterruptHandler</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="SWRXBufferSize"/>
<value>8</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="SWTXBufferSize"/>
<value>8</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="baudRateComboBox"/>
<value>9600</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="baudRateErrorLabel"/>
<value>Error: 0.006 %</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="baudprocessmode"/>
<value>easysetup</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="dt_pin_direction"/>
<value>out</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="eusartInterrupts"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="systemClockValue"/>
<value>25000000</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="templateNameValue"/>
<value>eusart_interrupt</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="EUSART1" name="useStdio"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="ABDEN" alias="disabled"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="ABDEN" alias="enabled"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="ABDOVF" alias="no_overflow"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="ABDOVF" alias="overflow"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="BRG16" alias="16bit_generator"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="BRG16" alias="8bit_generator"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="DTRXP" alias="inverted"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="DTRXP" alias="not_inverted"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="RCIDL" alias="bit_received"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="RCIDL" alias="idle"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="SCKP" alias="async_inverted_sync_risingedge"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="SCKP" alias="async_noninverted_sync_fallingedge"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="WUE" alias="disabled"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="WUE" alias="enabled"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="ADDEN" alias="disabled"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="ADDEN" alias="enabled"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="CREN" alias="disabled"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="CREN" alias="enabled"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="FERR" alias="error"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="FERR" alias="no_error"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="OERR" alias="error"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="OERR" alias="no_error"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="RX9" alias="8-bit"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="RX9" alias="9-bit"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="SPEN" alias="disabled"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="SPEN" alias="enabled"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="SREN" alias="disabled"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="SREN" alias="enabled"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="BRGH" alias="hi_speed"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="BRGH" alias="lo_speed"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="CSRC" alias="master_mode"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="CSRC" alias="slave_mode"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="SENDB" alias="send_sync_break_next"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="SENDB" alias="sync_break_complete"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="SYNC" alias="asynchronous"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="SYNC" alias="synchronous"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TRMT" alias="TSR_empty"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TRMT" alias="TSR_full"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TX9" alias="8-bit"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TX9" alias="9-bit"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TXEN" alias="disabled"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TXEN" alias="enabled"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="EUSART1" registerAlias="BAUDCON"/>
<value>8</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="EUSART1" registerAlias="RCSTA"/>
<value>208</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="EUSART1" registerAlias="SPBRGH"/>
<value>2</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="EUSART1" registerAlias="SPBRGL"/>
<value>138</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="EUSART1" registerAlias="TXREG"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="EUSART1" registerAlias="TXSTA"/>
<value>244</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="ABDEN"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="ABDOVF"/>
<value>no_overflow</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="BRG16"/>
<value>16bit_generator</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="DTRXP"/>
<value>not_inverted</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="RCIDL"/>
<value>idle</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="SCKP"/>
<value>async_noninverted_sync_fallingedge</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="BAUDCON" settingAlias="WUE"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCI" settingAlias="enable"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCI" settingAlias="flag"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCI" settingAlias="order"/>
<value>-1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCI" settingAlias="priority"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="ADDEN"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="CREN"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="FERR"/>
<value>no_error</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="OERR"/>
<value>no_error</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="RX9"/>
<value>9-bit</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="RX9D"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="SPEN"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="RCSTA" settingAlias="SREN"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXI" settingAlias="enable"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXI" settingAlias="flag"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXI" settingAlias="order"/>
<value>-1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXI" settingAlias="priority"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="BRGH"/>
<value>hi_speed</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="CSRC"/>
<value>master_mode</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="SENDB"/>
<value>sync_break_complete</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="SYNC"/>
<value>synchronous</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TRMT"/>
<value>TSR_empty</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TX9"/>
<value>9-bit</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TX9D"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="EUSART1" registerAlias="TXSTA" settingAlias="TXEN"/>
<value>enabled</value>
</entry>
<entry> <entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="INTERNAL OSCILLATOR" name="CurrentCpuDivString"/> <key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="INTERNAL OSCILLATOR" name="CurrentCpuDivString"/>
<value/> <value/>
@ -5214,6 +5594,194 @@
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="System Module" registerAlias="CONFIG3L" settingAlias="WAIT"/> <key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="System Module" registerAlias="CONFIG3L" settingAlias="WAIT"/>
<value>OFF</value> <value>OFF</value>
</entry> </entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="CallbackFuncRate"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="TMR0_TMRIISRFunction"/>
<value>ISR</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="actualPeriod"/>
<value>0.00003</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="clockFreqKey"/>
<value>25000000</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="externalFrequency"/>
<value>100000</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="maxPeriod"/>
<value>0.65535</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="minPeriod"/>
<value>0.00001</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="nonpps"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="prescaleDivisor"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="prescaledFreq"/>
<value>100000</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="requestedPeriod"/>
<value>0.000035</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="t0ckiPin"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="tickerFactor"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR0" name="timerstart"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS" alias="1:128"/>
<value>6</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS" alias="1:16"/>
<value>3</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS" alias="1:2"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS" alias="1:256"/>
<value>7</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS" alias="1:32"/>
<value>4</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS" alias="1:4"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS" alias="1:64"/>
<value>5</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS" alias="1:8"/>
<value>2</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PSA" alias="assigned"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PSA" alias="not_assigned"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="T08BIT" alias="16-bit"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="T08BIT" alias="8-bit"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMR0ON" alias="disabled"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMR0ON" alias="enabled"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMRCS" alias="FOSC/4"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMRCS" alias="T0CKI"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMRSE" alias="Increment_hi_lo"/>
<value>1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.OptionKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMRSE" alias="Increment_lo_hi"/>
<value>0</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="TMR0" registerAlias="T0CON"/>
<value>184</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="TMR0" registerAlias="TMR0H"/>
<value>255</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.RegisterKey" moduleName="TMR0" registerAlias="TMR0L"/>
<value>252</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PS"/>
<value>1:2</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="PSA"/>
<value>not_assigned</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="T08BIT"/>
<value>16-bit</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMR0ON"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMRCS"/>
<value>T0CKI</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="T0CON" settingAlias="TMRSE"/>
<value>Increment_hi_lo</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="TMR0H" settingAlias="TMR0H"/>
<value>255</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="TMR0L" settingAlias="TMR0L"/>
<value>252</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="TMRI" settingAlias="enable"/>
<value>enabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="TMRI" settingAlias="flag"/>
<value>disabled</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="TMRI" settingAlias="order"/>
<value>-1</value>
</entry>
<entry>
<key class="com.microchip.mcc.core.tokenManager.SettingKey" moduleName="TMR0" registerAlias="TMRI" settingAlias="priority"/>
<value>1</value>
</entry>
<entry> <entry>
<key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR2" name="CallbackFuncRate"/> <key class="com.microchip.mcc.core.tokenManager.CustomKey" moduleName="TMR2" name="CallbackFuncRate"/>
<value>0</value> <value>0</value>
@ -5402,12 +5970,24 @@
<generatedFileHashHistoryMap class="java.util.HashMap"> <generatedFileHashHistoryMap class="java.util.HashMap">
<entry> <entry>
<file>mcc_generated_files\mcc.h</file> <file>mcc_generated_files\mcc.h</file>
<hash>163eeab73ba2645b62407134fd74f192252b4a78fc740ce8959eebb831a39c2e</hash> <hash>52b447a5dc446f42c76e7a13f2403349cfdc20fc87fe880892a4f08ac41ec7ec</hash>
</entry> </entry>
<entry> <entry>
<file>mcc_generated_files\device_config.h</file> <file>mcc_generated_files\device_config.h</file>
<hash>e658a4cb6ac1c79b2a52ab2754ebce26d229cbe4bd8464122f3272d1e76e5881</hash> <hash>e658a4cb6ac1c79b2a52ab2754ebce26d229cbe4bd8464122f3272d1e76e5881</hash>
</entry> </entry>
<entry>
<file>mcc_generated_files\interrupt_manager.h</file>
<hash>5c311e57ab563c3fadc6e5c40b1e425436e9366c40e5772f46f393a9f8ed9d39</hash>
</entry>
<entry>
<file>mcc_generated_files\eusart1.h</file>
<hash>c6209c27bd9de6f3041c2f8d1df1cccce2b09bdf4b5098ae0b333a7f92205022</hash>
</entry>
<entry>
<file>mcc_generated_files\tmr0.h</file>
<hash>60487f4faa42d9fec7389ebc68c7a0a01ec6343892ddd4f936b3e776d62a07b0</hash>
</entry>
<entry> <entry>
<file>main.c</file> <file>main.c</file>
<hash>30e3e0e5956e494fcd566f1509f2f2bbc404d25265a77934114af7c9d1fcdbd7</hash> <hash>30e3e0e5956e494fcd566f1509f2f2bbc404d25265a77934114af7c9d1fcdbd7</hash>
@ -5436,6 +6016,10 @@
<file>mcc_generated_files\epwm1.h</file> <file>mcc_generated_files\epwm1.h</file>
<hash>e1dacec839b43c4ec99f1710c3a7872ce32d2ea6dfe3856eb466e690b7ea75c9</hash> <hash>e1dacec839b43c4ec99f1710c3a7872ce32d2ea6dfe3856eb466e690b7ea75c9</hash>
</entry> </entry>
<entry>
<file>mcc_generated_files\tmr0.c</file>
<hash>6ee4809b94f1e2488f05488f97e0cdc3e8db39b9f132a99c2d2daf3b13befbf7</hash>
</entry>
<entry> <entry>
<file>mcc_generated_files\pin_manager.c</file> <file>mcc_generated_files\pin_manager.c</file>
<hash>f23627897b323c5e312c50538e92449a15673b1b943138129b8c0214ac47a4d4</hash> <hash>f23627897b323c5e312c50538e92449a15673b1b943138129b8c0214ac47a4d4</hash>
@ -5450,7 +6034,15 @@
</entry> </entry>
<entry> <entry>
<file>mcc_generated_files\mcc.c</file> <file>mcc_generated_files\mcc.c</file>
<hash>eda682c043199d8627daf3584afc45a08bb3bb8526554f70c327ca6e3b587544</hash> <hash>32ff3e2dadb25f5b8ccb3d70520f2b25f98e471a9bccb87758edd960e922e48c</hash>
</entry>
<entry>
<file>mcc_generated_files\interrupt_manager.c</file>
<hash>9bec65c4415d6a1861d1d33f5aecfcf2c426de3ac2962449aec821b45c527ef2</hash>
</entry>
<entry>
<file>mcc_generated_files\eusart1.c</file>
<hash>627becf328c45a7c7ebff85e99496289e162e55eef7d703ea105fffd0439dd76</hash>
</entry> </entry>
</generatedFileHashHistoryMap> </generatedFileHashHistoryMap>
</config> </config>