This commit is contained in:
2021-09-19 19:19:04 -04:00
parent c3e43fcc9c
commit 6c907068a8
3 changed files with 1063 additions and 61 deletions

View File

@@ -8,6 +8,10 @@ void USART0_init(void) {
USART0.BAUD = (uint16_t) USART0_BAUD_RATE(9600); USART0.BAUD = (uint16_t) USART0_BAUD_RATE(9600);
USART0.CTRLB |= USART_TXEN_bm; USART0.CTRLB |= USART_TXEN_bm;
USART0.CTRLB |= USART_RXEN_bm;
// USART0.CTRLB |= USART_SFDEN_bm;
// USART0.CTRLA |= USART_RXSIE_bm;
USART0.CTRLA |= USART_RXCIE_bm;
} }
void USART0_sendChar(char c) { void USART0_sendChar(char c) {
@@ -20,6 +24,7 @@ void USART0_sendChar(char c) {
void USART0_sendString(const char *str) { void USART0_sendString(const char *str) {
for (size_t i = 0; i < strlen(str); i++) { for (size_t i = 0; i < strlen(str); i++) {
USART0_sendChar(str[i]); USART0_sendChar(str[i]);

187
main.c
View File

@@ -7,23 +7,27 @@
#include <stdlib.h> #include <stdlib.h>
#include <stdio.h> #include <stdio.h>
#include "helpers_uart.h" #include "helpers_uart.h"
#include <avr/interrupt.h>
#include <xc.h> #include <xc.h>
#include "twi0_master_example.h" #include "twi0_master_example.h"
#define LISTEN_EXPANDER_COMMANDS true
#define IGNORE_SOFT_LIMITS false
#define delay_time 50 #define delay_time 50
// Zoom, Focus, Iris // Zoom -> motor 0
struct PORT_struct *port_1[] = {&PORTA, &PORTB, &PORTC}; // Focus -> motor 1
struct PORT_struct *port_2[] = {&PORTA, &PORTB, &PORTC}; // Iris -> motor 2
struct PORT_struct *port_3[] = {&PORTA, &PORTC, &PORTC}; struct PORT_struct *port_1[] = {&PORTB, &PORTA, &PORTC};
struct PORT_struct *port_4[] = {&PORTA, &PORTC, &PORTC}; struct PORT_struct *port_2[] = {&PORTB, &PORTA, &PORTC};
struct PORT_struct *port_3[] = {&PORTC, &PORTA, &PORTC};
struct PORT_struct *port_4[] = {&PORTC, &PORTA, &PORTC};
uint8_t pin_1[] = {2, 5, 4}; uint8_t pin_1[] = {5, 2, 4};
uint8_t pin_2[] = {3, 4, 5}; uint8_t pin_2[] = {4, 3, 5};
uint8_t pin_3[] = {4, 1, 6}; uint8_t pin_3[] = {0, 4, 6};
uint8_t pin_4[] = {5, 0, 7}; uint8_t pin_4[] = {1, 5, 7};
uint8_t delay[] = {15, 15, 50}; // Multiples of "delay_time" uint8_t delay[] = {15, 15, 50}; // Multiples of "delay_time"
uint16_t max_steps[] = {2994, 5180, 77}; uint16_t max_steps[] = {2994, 5180, 77};
@@ -37,28 +41,74 @@ uint8_t phase;
uint8_t motor_num; uint8_t motor_num;
uint8_t port_val; uint8_t port_val;
char usart_recv_char;
bool usart_interrupt = false;
uint8_t read_low_usart_bit(){
while (!(USART0.STATUS & USART_RXCIF_bm)) {
}
return USART0.RXDATAL;
}
uint8_t read_high_usart_bit(){
while (!(USART0.STATUS & USART_RXCIF_bm)) {
}
return USART0.RXDATAH;
}
ISR(USART0_RXC_vect)
{
usart_recv_char = read_low_usart_bit();
USART0_sendChar(usart_recv_char);
}
void set_ports_out()
{
for (int i = 0; i<sizeof(pin_1); i++) {
port_1[i]->DIRSET = _BV(pin_1[i]);
port_2[i]->DIRSET = _BV(pin_2[i]);
port_3[i]->DIRSET = _BV(pin_3[i]);
port_4[i]->DIRSET = _BV(pin_4[i]);
port_1[i]->OUTSET = _BV(pin_1[i]);
port_2[i]->OUTSET = _BV(pin_2[i]);
port_3[i]->OUTSET = _BV(pin_3[i]);
port_4[i]->OUTSET = _BV(pin_4[i]);
}
}
void init_port_expander() void init_port_expander()
{ {
I2C0_example_write1ByteRegister(32, 0x00, 0x00); I2C0_example_write1ByteRegister(32, 0x00, 0x00);
I2C0_example_write1ByteRegister(32, 0x00, 0x00); I2C0_example_write1ByteRegister(32, 0x09, 0x00);
} }
void set_expanded_port_on(uint8_t num) void set_expanded_port_on(uint8_t num)
{ {
port_val = I2C0_example_read1ByteRegister(32, 0x09); if (LISTEN_EXPANDER_COMMANDS) {
port_val |= _BV(num); port_val = I2C0_example_read1ByteRegister(32, 0x09);
I2C0_example_write1ByteRegister(32, 0x09, port_val); port_val |= _BV(num);
I2C0_example_write1ByteRegister(32, 0x09, port_val);
}
} }
void set_expanded_port_off(uint8_t num) void set_expanded_port_off(uint8_t num)
{ {
port_val = I2C0_example_read1ByteRegister(32, 0x09); if (LISTEN_EXPANDER_COMMANDS) {
port_val &= ~_BV(num); port_val = I2C0_example_read1ByteRegister(32, 0x09);
I2C0_example_write1ByteRegister(32, 0x09, port_val); port_val &= ~_BV(num);
I2C0_example_write1ByteRegister(32, 0x09, port_val);
}
} }
void battery_charging_on() void battery_charging_on()
{ {
set_expanded_port_on(0); set_expanded_port_on(0);
@@ -93,7 +143,6 @@ void power_3v3_off()
PORTA.OUTCLR = _BV(6); PORTA.OUTCLR = _BV(6);
} }
void delay_n_units(uint8_t n) void delay_n_units(uint8_t n)
{ {
for (int i = 0; i < n; i++) { for (int i = 0; i < n; i++) {
@@ -133,15 +182,17 @@ void step_phased(struct PORT_struct * p1, struct PORT_struct * p2, struct PORT_s
void step_motor(uint8_t i, int s) void step_motor(uint8_t i, int s)
{ {
set_expanded_port_on(i);
for (int n = 0; i < abs(s); n++) { for (int n = 0; n < abs(s); n++) {
phase = abs(current_step[i] % 4); phase = abs(current_step[i] % 4);
motor_max_pos = (current_step[i] >= max_steps[i]) && (s > 0); motor_max_pos = (current_step[i] >= max_steps[i]) && (s > 0);
motor_min_pos = (current_step[i] <= 0) && (s < 0); motor_min_pos = (current_step[i] <= 0) && (s < 0);
if (motor_max_pos || motor_min_pos) { if (motor_max_pos || motor_min_pos) {
return; if (!IGNORE_SOFT_LIMITS) {
return;
}
} }
step_phased(port_1[i], port_2[i], port_3[i], port_4[i], pin_1[i], pin_2[i], pin_3[i], pin_4[i], phase); step_phased(port_1[i], port_2[i], port_3[i], port_4[i], pin_1[i], pin_2[i], pin_3[i], pin_4[i], phase);
@@ -159,28 +210,28 @@ void step_motor(uint8_t i, int s)
void step_iris_phased(int steps) void step_iris_phased(int steps)
{ {
set_expanded_port_on(2); set_expanded_port_on(4);
step_motor(2, steps); step_motor(2, steps);
set_expanded_port_off(2); set_expanded_port_off(4);
}
void step_zoom_phased(int steps)
{
set_expanded_port_on(1);
step_motor(1, steps);
set_expanded_port_off(1);
} }
void step_focus_phased(int steps) void step_focus_phased(int steps)
{ {
set_expanded_port_on(0); set_expanded_port_on(3);
step_motor(1, steps);
set_expanded_port_off(3);
}
void step_zoom_phased(int steps)
{
set_expanded_port_on(2);
step_motor(0, steps); step_motor(0, steps);
set_expanded_port_off(0); set_expanded_port_off(2);
} }
bool at_zoom_limit() bool at_zoom_limit()
{ {
if (PORTD.IN & PIN0_bm) { if (PORTD.IN & PIN1_bm) {
return false; return false;
} else { } else {
return true; return true;
@@ -190,7 +241,7 @@ bool at_zoom_limit()
bool at_focus_limit() bool at_focus_limit()
{ {
if (PORTD.IN & PIN1_bm) { if (PORTD.IN & PIN0_bm) {
return false; return false;
} else { } else {
return true; return true;
@@ -198,25 +249,14 @@ bool at_focus_limit()
} }
void home_focus()
{
motor_num = 0;
current_step[motor_num] = max_steps[motor_num] + 200;
step_motor(motor_num, -100);
for (int i = 0; i < max_steps[motor_num]; i++) {
step_motor(motor_num, -1);
if (at_focus_limit()) {
break;
}
}
current_step[motor_num] = 0;
}
void home_zoom() void home_zoom()
{ {
motor_num = 1;
motor_num = 0;
set_expanded_port_on(motor_num + 2);
current_step[motor_num] = max_steps[motor_num] + 200; current_step[motor_num] = max_steps[motor_num] + 200;
step_motor(motor_num, -100); step_motor(motor_num, -100);
_delay_ms(100);
for (int i = 0; i < max_steps[motor_num]; i++) { for (int i = 0; i < max_steps[motor_num]; i++) {
step_motor(motor_num, -1); step_motor(motor_num, -1);
if (at_zoom_limit()) { if (at_zoom_limit()) {
@@ -224,14 +264,34 @@ void home_zoom()
} }
} }
current_step[motor_num] = 0; current_step[motor_num] = 0;
set_expanded_port_off(motor_num + 2);
}
void home_focus()
{
motor_num = 1;
set_expanded_port_on(motor_num + 2);
current_step[motor_num] = max_steps[motor_num] + 200;
step_motor(motor_num, -100);
_delay_ms(100);
for (int i = 0; i < max_steps[motor_num]; i++) {
step_motor(motor_num, -1);
if (at_focus_limit()) {
break;
}
}
current_step[motor_num] = 0;
set_expanded_port_off(motor_num + 2);
} }
void home_iris() void home_iris()
{ {
motor_num = 3; motor_num = 2;
set_expanded_port_on(motor_num + 2);
current_step[motor_num] = max_steps[motor_num] + 200; current_step[motor_num] = max_steps[motor_num] + 200;
step_motor(motor_num, -100); step_motor(motor_num, -100);
current_step[motor_num] = 0; current_step[motor_num] = 0;
set_expanded_port_off(motor_num + 2);
} }
void ir_filter_on() void ir_filter_on()
@@ -256,29 +316,38 @@ void init_pins()
PORTD.DIRCLR = PIN0_bm; PORTD.DIRCLR = PIN0_bm;
PORTD.DIRCLR = PIN1_bm; PORTD.DIRCLR = PIN1_bm;
PORTD.PIN0CTRL |= PORT_ISC_BOTHEDGES_gc;
PORTD.PIN1CTRL |= PORT_ISC_BOTHEDGES_gc;
// IR Filter // IR Filter
PORTB.DIRSET = _BV(2); PORTB.DIRSET = _BV(2);
PORTB.DIRSET = _BV(3); PORTB.DIRSET = _BV(3);
//i2c muxing //i2c muxing
PORTMUX.TWISPIROUTEA = 0x23; PORTMUX.TWISPIROUTEA = 0x23;
set_ports_out();
} }
int main(void) int main(void)
{ {
init_pins();
I2C0_Initialize();
init_port_expander();
USART0_init(); USART0_init();
I2C0_Initialize();
power_3v3_on();
init_port_expander();
sei();
if (!LISTEN_EXPANDER_COMMANDS) {
I2C0_example_write1ByteRegister(32, 0x09, 0xFF);
}
home_zoom();
home_focus();
home_iris();
while (1) { while (1) {
step_zoom_phased(6000);
step_iris_phased(100);
step_focus_phased(2000);
step_zoom_phased(-6000);
step_iris_phased(-100);
step_focus_phased(-2000);
} }
return 0; return 0;
} }

View File

@@ -42,7 +42,7 @@
<targetDevice>ATmega4809</targetDevice> <targetDevice>ATmega4809</targetDevice>
<targetHeader></targetHeader> <targetHeader></targetHeader>
<targetPluginBoard></targetPluginBoard> <targetPluginBoard></targetPluginBoard>
<platformTool>Simulator</platformTool> <platformTool>AtmelIceTool</platformTool>
<languageToolchain>XC8</languageToolchain> <languageToolchain>XC8</languageToolchain>
<languageToolchainVersion>2.32</languageToolchainVersion> <languageToolchainVersion>2.32</languageToolchainVersion>
<platform>2</platform> <platform>2</platform>
@@ -200,8 +200,478 @@
<property key="program-the-device-with-default-config-words" value="true"/> <property key="program-the-device-with-default-config-words" value="true"/>
<property key="remove-unused-sections" value="true"/> <property key="remove-unused-sections" value="true"/>
</HI-TECH-LINK> </HI-TECH-LINK>
<Simulator>
<property key="codecoverage.enabled" value="Disable"/>
<property key="codecoverage.enableoutputtofile" value="false"/>
<property key="codecoverage.outputfile" value=""/>
<property key="oscillator.auxfrequency" value="120"/>
<property key="oscillator.auxfrequencyunit" value="Mega"/>
<property key="oscillator.frequency" value="1"/>
<property key="oscillator.frequencyunit" value="Mega"/>
<property key="oscillator.rcfrequency" value="250"/>
<property key="oscillator.rcfrequencyunit" value="Kilo"/>
<property key="periphADC1.altscl" value="false"/>
<property key="periphADC1.minTacq" value=""/>
<property key="periphADC1.tacqunits" value="microseconds"/>
<property key="periphADC2.altscl" value="false"/>
<property key="periphADC2.minTacq" value=""/>
<property key="periphADC2.tacqunits" value="microseconds"/>
<property key="periphComp1.gte" value="gt"/>
<property key="periphComp2.gte" value="gt"/>
<property key="periphComp3.gte" value="gt"/>
<property key="periphComp4.gte" value="gt"/>
<property key="periphComp5.gte" value="gt"/>
<property key="periphComp6.gte" value="gt"/>
<property key="reset.scl" value="false"/>
<property key="reset.type" value="MCLR"/>
<property key="toolpack.updateoptions"
value="toolpack.updateoptions.uselatestoolpack"/>
<property key="toolpack.updateoptions.packversion"
value="Press to select which tool pack to use"/>
<property key="tracecontrol.include.timestamp" value="summarydataenabled"/>
<property key="tracecontrol.select" value="0"/>
<property key="tracecontrol.stallontracebufferfull" value="false"/>
<property key="tracecontrol.timestamp" value="0"/>
<property key="tracecontrol.tracebufmax" value="546000"/>
<property key="tracecontrol.tracefile" value="defmplabxtrace.log"/>
<property key="tracecontrol.traceresetonrun" value="false"/>
<property key="uart0io.output" value="window"/>
<property key="uart0io.outputfile" value=""/>
<property key="uart0io.uartioenabled" value="false"/>
<property key="uart1io.output" value="window"/>
<property key="uart1io.outputfile" value=""/>
<property key="uart1io.uartioenabled" value="false"/>
<property key="uart2io.output" value="window"/>
<property key="uart2io.outputfile" value=""/>
<property key="uart2io.uartioenabled" value="false"/>
<property key="uart3io.output" value="window"/>
<property key="uart3io.outputfile" value=""/>
<property key="uart3io.uartioenabled" value="false"/>
<property key="uart4io.output" value="window"/>
<property key="uart4io.outputfile" value=""/>
<property key="uart4io.uartioenabled" value="false"/>
<property key="uart5io.output" value="window"/>
<property key="uart5io.outputfile" value=""/>
<property key="uart5io.uartioenabled" value="false"/>
<property key="uart6io.output" value="window"/>
<property key="uart6io.outputfile" value=""/>
<property key="uart6io.uartioenabled" value="false"/>
<property key="usart0io.output" value="window"/>
<property key="usart0io.outputfile" value=""/>
<property key="usart0io.uartioenabled" value="false"/>
<property key="usart1io.output" value="window"/>
<property key="usart1io.outputfile" value=""/>
<property key="usart1io.uartioenabled" value="false"/>
<property key="usart2io.output" value="window"/>
<property key="usart2io.outputfile" value=""/>
<property key="usart2io.uartioenabled" value="false"/>
<property key="usart3io.output" value="window"/>
<property key="usart3io.outputfile" value=""/>
<property key="usart3io.uartioenabled" value="false"/>
<property key="usart4io.output" value="window"/>
<property key="usart4io.outputfile" value=""/>
<property key="usart4io.uartioenabled" value="false"/>
<property key="usartc0io.output" value="window"/>
<property key="usartc0io.outputfile" value=""/>
<property key="usartc0io.uartioenabled" value="false"/>
<property key="usartc1io.output" value="window"/>
<property key="usartc1io.outputfile" value=""/>
<property key="usartc1io.uartioenabled" value="false"/>
<property key="usartd0io.output" value="window"/>
<property key="usartd0io.outputfile" value=""/>
<property key="usartd0io.uartioenabled" value="false"/>
<property key="usartd1io.output" value="window"/>
<property key="usartd1io.outputfile" value=""/>
<property key="usartd1io.uartioenabled" value="false"/>
<property key="usarte0io.output" value="window"/>
<property key="usarte0io.outputfile" value=""/>
<property key="usarte0io.uartioenabled" value="false"/>
<property key="usarte1io.output" value="window"/>
<property key="usarte1io.outputfile" value=""/>
<property key="usarte1io.uartioenabled" value="false"/>
<property key="usarte2io.output" value="window"/>
<property key="usarte2io.outputfile" value=""/>
<property key="usarte2io.uartioenabled" value="false"/>
<property key="usartf0io.output" value="window"/>
<property key="usartf0io.outputfile" value=""/>
<property key="usartf0io.uartioenabled" value="false"/>
<property key="usartf1io.output" value="window"/>
<property key="usartf1io.outputfile" value=""/>
<property key="usartf1io.uartioenabled" value="false"/>
<property key="warningmessagebreakoptions.W0001_CORE_BITREV_MODULO_EN"
value="report"/>
<property key="warningmessagebreakoptions.W0002_CORE_SECURE_MEMORYACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0003_CORE_SW_RESET" value="report"/>
<property key="warningmessagebreakoptions.W0004_CORE_WDT_RESET" value="report"/>
<property key="warningmessagebreakoptions.W0005_CORE_IOPUW_RESET"
value="report"/>
<property key="warningmessagebreakoptions.W0006_CORE_CODE_GUARD_PFC_RESET"
value="report"/>
<property key="warningmessagebreakoptions.W0007_CORE_DO_LOOP_STACK_UNDERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W0008_CORE_DO_LOOP_STACK_OVERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W0009_CORE_NESTED_DO_LOOP_RANGE"
value="report"/>
<property key="warningmessagebreakoptions.W0010_CORE_SIM32_ODD_WORDACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0011_CORE_SIM32_UNIMPLEMENTED_RAMACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0012_CORE_STACK_OVERFLOW_RESET"
value="report"/>
<property key="warningmessagebreakoptions.W0013_CORE_STACK_UNDERFLOW_RESET"
value="report"/>
<property key="warningmessagebreakoptions.W0014_CORE_INVALID_OPCODE"
value="report"/>
<property key="warningmessagebreakoptions.W0015_CORE_INVALID_ALT_WREG_SET"
value="report"/>
<property key="warningmessagebreakoptions.W0016_CORE_STACK_ERROR"
value="report"/>
<property key="warningmessagebreakoptions.W0017_CORE_ODD_RAMWORDACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0018_CORE_UNIMPLEMENTED_RAMACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0019_CORE_UNIMPLEMENTED_PROMACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0020_CORE_ACCESS_NOTIN_X_SPACE"
value="report"/>
<property key="warningmessagebreakoptions.W0021_CORE_ACCESS_NOTIN_Y_SPACE"
value="report"/>
<property key="warningmessagebreakoptions.W0022_CORE_XMODEND_LESS_XMODSRT"
value="report"/>
<property key="warningmessagebreakoptions.W0023_CORE_YMODEND_LESS_YMODSRT"
value="report"/>
<property key="warningmessagebreakoptions.W0024_CORE_BITREV_MOD_IS_ZERO"
value="report"/>
<property key="warningmessagebreakoptions.W0025_CORE_HARD_TRAP" value="report"/>
<property key="warningmessagebreakoptions.W0026_CORE_UNIMPLEMENTED_MEMORYACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0027_CORE_UNIMPLEMENTED_EDSACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0028_TBLRD_WORM_CONFIG_MEMORY"
value="report"/>
<property key="warningmessagebreakoptions.W0029_TBLRD_DEVICE_ID" value="report"/>
<property key="warningmessagebreakoptions.W0030_CORE_UNIMPLEMENTED_MEMORY_ACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0031_BSLIM_INSUFFICIENT_BOOT_SEGMENT"
value="report"/>
<property key="warningmessagebreakoptions.W0032_BSLIM_LIMITS_EXCEEDS_PROG_MEMORY"
value="report"/>
<property key="warningmessagebreakoptions.W0033_CORE_UNPREDICTABLE_OPCODE"
value="report"/>
<property key="warningmessagebreakoptions.W0034_CORE_UNALIGNED_MEMORY_ACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0035_CORE_UNIMPLEMENTED_RAMACCESS_NOTRAP"
value="report"/>
<property key="warningmessagebreakoptions.W0040_FPU_DIFF_CP10_CP11"
value="report"/>
<property key="warningmessagebreakoptions.W0041_FPU_ACCESS_DENIED"
value="report"/>
<property key="warningmessagebreakoptions.W0042_FPU_PRIVILEGED_ACCESS_ONLY"
value="report"/>
<property key="warningmessagebreakoptions.W0043_FPU_CP_RESERVED_VALUE"
value="report"/>
<property key="warningmessagebreakoptions.W0044_FPU_OUT_OF_RANGE"
value="report"/>
<property key="warningmessagebreakoptions.W0051_INSTRUCTION_DIV_NOT_ENOUGH_REPEAT"
value="report"/>
<property key="warningmessagebreakoptions.W0052_INSTRUCTION_DIV_TOO_MANY_REPEAT"
value="report"/>
<property key="warningmessagebreakoptions.W0053_INVALID_INTCON_VS_FIELD_VALUE"
value="report"/>
<property key="warningmessagebreakoptions.W0101_SIM_UPDATE_FAILED"
value="report"/>
<property key="warningmessagebreakoptions.W0102_SIM_PERIPH_MISSING"
value="report"/>
<property key="warningmessagebreakoptions.W0103_SIM_PERIPH_FAILED"
value="report"/>
<property key="warningmessagebreakoptions.W0104_SIM_FAILED_TO_INIT_TOOL"
value="report"/>
<property key="warningmessagebreakoptions.W0105_SIM_INVALID_FIELD"
value="report"/>
<property key="warningmessagebreakoptions.W0106_SIM_PERIPH_PARTIAL_SUPPORT"
value="report"/>
<property key="warningmessagebreakoptions.W0107_SIM_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0108_SIM_RESERVED_SETTING"
value="report"/>
<property key="warningmessagebreakoptions.W0109_SIM_PERIPHERAL_IN_DEVELOPMENT"
value="report"/>
<property key="warningmessagebreakoptions.W0110_SIM_UNEXPECTED_EVENT"
value="report"/>
<property key="warningmessagebreakoptions.W0111_SIM_UNSUPPORTED_SELECTION"
value="report"/>
<property key="warningmessagebreakoptions.W0112_SIM_INVALID_OPERATION"
value="report"/>
<property key="warningmessagebreakoptions.W0113_SIM_WRITE_TO_PROTECTED_SFR"
value="report"/>
<property key="warningmessagebreakoptions.W0114_SIM_INVALID_KEY" value="report"/>
<property key="warningmessagebreakoptions.W0115_SIM_FAILED_TO_PARSE_DEVICE_FILE"
value="report"/>
<property key="warningmessagebreakoptions.W0116_SIM_STACK_OVERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W0117_SIM_STACK_UNDERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W0118_SIM_INVALID_FIELD_VALUE"
value="report"/>
<property key="warningmessagebreakoptions.W0119_SIM_SAMPLING_RATE_VIOLATION"
value="report"/>
<property key="warningmessagebreakoptions.W0201_ADC_NO_STIMULUS_FILE"
value="report"/>
<property key="warningmessagebreakoptions.W0202_ADC_GO_DONE_BIT" value="report"/>
<property key="warningmessagebreakoptions.W0203_ADC_MINIMUM_2_TAD"
value="report"/>
<property key="warningmessagebreakoptions.W0204_ADC_TAD_TOO_SMALL"
value="report"/>
<property key="warningmessagebreakoptions.W0205_ADC_UNEXPECTED_TRANSITION"
value="report"/>
<property key="warningmessagebreakoptions.W0206_ADC_SAMP_TIME_TOO_SHORT"
value="report"/>
<property key="warningmessagebreakoptions.W0207_ADC_NO_PINS_SCANNED"
value="report"/>
<property key="warningmessagebreakoptions.W0208_ADC_UNSUPPORTED_CLOCK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W0209_ADC_ANALOG_CHANNEL_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0210_ADC_ANALOG_CHANNEL_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0211_ADC_PIN_INVALID_CHANNEL"
value="report"/>
<property key="warningmessagebreakoptions.W0212_ADC_BAND_GAP_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0213_ADC_RESERVED_SSRC"
value="report"/>
<property key="warningmessagebreakoptions.W0214_ADC_POSITIVE_INPUT_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0215_ADC_POSITIVE_INPUT_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0216_ADC_NEGATIVE_INPUT_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0217_ADC_NEGATIVE_INPUT_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0218_ADC_REFERENCE_HIGH_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0219_ADC_REFERENCE_HIGH_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0220_ADC_REFERENCE_LOW_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0221_ADC_REFERENCE_LOW_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0222_ADC_OVERFLOW" value="report"/>
<property key="warningmessagebreakoptions.W0223_ADC_UNDERFLOW" value="report"/>
<property key="warningmessagebreakoptions.W0224_ADC_CTMU_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0225_ADC_INVALID_CH0S"
value="report"/>
<property key="warningmessagebreakoptions.W0226_ADC_VBAT_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0227_ADC_INVALID_ADCS"
value="report"/>
<property key="warningmessagebreakoptions.W0228_ADC_INVALID_ADCS"
value="report"/>
<property key="warningmessagebreakoptions.W0229_ADC_INVALID_ADCS"
value="report"/>
<property key="warningmessagebreakoptions.W0230_ADC_TRIGSEL_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0231_ADC_NOT_WARMED" value="report"/>
<property key="warningmessagebreakoptions.W0232_ADC_CALIBRATION_ABORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0233_ADC_CORE_POWERED_EARLY"
value="report"/>
<property key="warningmessagebreakoptions.W0234_ADC_ALREADY_CALIBRATING"
value="report"/>
<property key="warningmessagebreakoptions.W0235_ADC_CAL_TYPE_CHANGED"
value="report"/>
<property key="warningmessagebreakoptions.W0236_ADC_CAL_INVALIDATED"
value="report"/>
<property key="warningmessagebreakoptions.W0237_ADC_UNKNOWN_DATASHEET"
value="report"/>
<property key="warningmessagebreakoptions.W0238_ADC_INVALID_SFR_FIELD_VALUE"
value="report"/>
<property key="warningmessagebreakoptions.W0239_ADC_UNSUPPORTED_INPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0240_ADC_NOT_CALIBRATED"
value="report"/>
<property key="warningmessagebreakoptions.W0241_ADC_FRACTIONAL_NOT_ALLOWED"
value="report"/>
<property key="warningmessagebreakoptions.W0242_ADC_BG_INT_BEFORE_PWR"
value="report"/>
<property key="warningmessagebreakoptions.W0243_ADC_INVALID_TAD" value="report"/>
<property key="warningmessagebreakoptions.W0244_ADC_CONVERSION_ABORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0245_ADC_BUFREGEN_NOT_ALLOWED"
value="report"/>
<property key="warningmessagebreakoptions.W0246_ADC_ACCUMULATION_BAD_RESSEL"
value="report"/>
<property key="warningmessagebreakoptions.W0247_ADC_CONVERSION_BAD_RESSEL"
value="report"/>
<property key="warningmessagebreakoptions.W0248_ADC_WR_BEFORE_KEY_SEQ"
value="report"/>
<property key="warningmessagebreakoptions.W0400_PWM_PWM_FASTER_THAN_FOSC"
value="report"/>
<property key="warningmessagebreakoptions.W0600_WDT_2ND_WDT_MR_WRITE"
value="report"/>
<property key="warningmessagebreakoptions.W0601_WDT_EXPIRED" value="report"/>
<property key="warningmessagebreakoptions.W0601_WDT_RESET_OUTSIDE_WINDOW"
value="report"/>
<property key="warningmessagebreakoptions.W0700_CLC_GENERAL_WARNING"
value="report"/>
<property key="warningmessagebreakoptions.W0701_CLC_CLCOUT_AS_INPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0702_CLC_CIRCULAR_LOOP"
value="report"/>
<property key="warningmessagebreakoptions.W0800_ACC_INPUT_INVALID_CONFIG"
value="report"/>
<property key="warningmessagebreakoptions.W0801_ACC_INPUT_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0802_ACC_INVERTED_WINDOW_LIMITS"
value="report"/>
<property key="warningmessagebreakoptions.W0803_ACC_MISMATCHED_POS_INPUTS"
value="report"/>
<property key="warningmessagebreakoptions.W0804_ACC_WINDOW_COMP_DISABLED"
value="report"/>
<property key="warningmessagebreakoptions.W0805_ACC_WINDOW_COMPS_MODES"
value="report"/>
<property key="warningmessagebreakoptions.W0806_ACC_FEATURE_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W10001_RESERVED_IRQ_HANDLER_INVOKED"
value="report"/>
<property key="warningmessagebreakoptions.W10002_UNSUPPORTED_CLK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W10101_UNSUPPORTED_CHANNEL_MODE"
value="report"/>
<property key="warningmessagebreakoptions.W10102_UNSUPPORTED_CLK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W10103_UNSUPPORTED_RECEIVER_FILTER"
value="report"/>
<property key="warningmessagebreakoptions.W10301_NO_PORT_PINS_FOUND"
value="report"/>
<property key="warningmessagebreakoptions.W10500_UNSUPPORTED_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W1201_DATAFLASH_MEM_OUTSIDE_RANGE"
value="report"/>
<property key="warningmessagebreakoptions.W1202_DATAFLASH_ERASE_WHILE_LOCKED"
value="report"/>
<property key="warningmessagebreakoptions.W1203_DATAFLASH_WRITE_WHILE_LOCKED"
value="report"/>
<property key="warningmessagebreakoptions.W1401_DMA_PERIPH_NOT_AVAIL"
value="report"/>
<property key="warningmessagebreakoptions.W1402_DMA_INVALID_IRQ" value="report"/>
<property key="warningmessagebreakoptions.W1403_DMA_INVALID_SFR" value="report"/>
<property key="warningmessagebreakoptions.W1404_DMA_INVALID_DMA_ADDR"
value="report"/>
<property key="warningmessagebreakoptions.W1405_DMA_IRQ_DIR_MISMATCH"
value="report"/>
<property key="warningmessagebreakoptions.W1600_PPS_INVALID_MAP" value="report"/>
<property key="warningmessagebreakoptions.W1601_PPS_INVALID_PIN_DESCRIPTION"
value="report"/>
<property key="warningmessagebreakoptions.W1800_PWM_TIMER_SELECTION_NOT_AVIALABLE"
value="report"/>
<property key="warningmessagebreakoptions.W1801_PWM_TIMER_SELECTION_BAD_CLOCK_INPUT"
value="report"/>
<property key="warningmessagebreakoptions.W1802_PWM_TIMER_MISSING_PERSCALER_INFO"
value="report"/>
<property key="warningmessagebreakoptions.W2001_INPUTCAPTURE_TMR3_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W2002_INPUTCAPTURE_CAPTURE_EMPTY"
value="report"/>
<property key="warningmessagebreakoptions.W2003_INPUTCAPTURE_SYNCSEL_NOT_AVIALABLE"
value="report"/>
<property key="warningmessagebreakoptions.W2004_INPUTCAPTURE_BAD_SYNC_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W2501_OUTPUTCOMPARE_SYNCSEL_NOT_AVIALABLE"
value="report"/>
<property key="warningmessagebreakoptions.W2502_OUTPUTCOMPARE_BAD_SYNC_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W2503_OUTPUTCOMPARE_BAD_TRIGGER_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W2700_MPU_ILLEGAL_DREGION"
value="report"/>
<property key="warningmessagebreakoptions.W2701_MPU_INVALID_REGION"
value="report"/>
<property key="warningmessagebreakoptions.W3000_LPM_READ_PROTECTION_SECTION"
value="report"/>
<property key="warningmessagebreakoptions.W3010_SPM_WRITE_PROTECTION_SECTION"
value="report"/>
<property key="warningmessagebreakoptions.W6001_RTT_FORBIDDEN_RTPRES"
value="report"/>
<property key="warningmessagebreakoptions.W6002_RTT_BAD_WRITING_ALMV"
value="report"/>
<property key="warningmessagebreakoptions.W6003_RTT_BAD_WRITING_RTPRES"
value="report"/>
<property key="warningmessagebreakoptions.W7001_SMT_CLK_SELECTION_NOT_SUPPORT"
value="report"/>
<property key="warningmessagebreakoptions.W7002_SMT_SIG_SELECTION_NOT_SUPPORT"
value="report"/>
<property key="warningmessagebreakoptions.W7003_SMT_WIN_SELECTION_NOT_SUPPORT"
value="report"/>
<property key="warningmessagebreakoptions.W8001_OSC_INVALID_CLOCK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W8002_OSC_RESERVED_FEXTOSC"
value="report"/>
<property key="warningmessagebreakoptions.W9001_TMR_GATE_AND_EXTCLOCK_ENABLED"
value="report"/>
<property key="warningmessagebreakoptions.W9002_TMR_NO_PIN_AVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9003_TMR_INVALID_CLOCK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W9201_UART_TX_OVERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W9202_UART_TX_CAPTUREFILE"
value="report"/>
<property key="warningmessagebreakoptions.W9203_UART_TX_INVALIDINTERRUPTMODE"
value="report"/>
<property key="warningmessagebreakoptions.W9204_UART_RX_EMPTY_QUEUE"
value="report"/>
<property key="warningmessagebreakoptions.W9205_UART_TX_BADFILE" value="report"/>
<property key="warningmessagebreakoptions.W9206_UART_RESERVED_MODE"
value="report"/>
<property key="warningmessagebreakoptions.W9207_UART_UNABLETOCLOSE_FILE"
value="report"/>
<property key="warningmessagebreakoptions.W9401_CVREF_INVALIDSOURCESELECTION"
value="report"/>
<property key="warningmessagebreakoptions.W9402_CVREF_INPUT_OUTPUTPINCONFLICT"
value="report"/>
<property key="warningmessagebreakoptions.W9601_COMP_FVR_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9602_COMP_DAC_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9603_COMP_CVREF_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9604_COMP_SLOPE_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9605_COMP_PRG_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9607_COMP_DGTL_FLTR_OPTION_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9609_COMP_DGTL_FLTR_CLK_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9801_FVR_INVALID_MODE_SELECTION"
value="report"/>
<property key="warningmessagebreakoptions.W9801_SCL_BAD_SUBTYPE_INDICATION"
value="report"/>
<property key="warningmessagebreakoptions.W9802_SCL_FILE_NOT_FOUND"
value="report"/>
<property key="warningmessagebreakoptions.W9803_SCL_FAILED_TO_READ_FILE"
value="report"/>
<property key="warningmessagebreakoptions.W9804_SCL_UNRECOGNIZED_LABEL"
value="report"/>
<property key="warningmessagebreakoptions.W9805_SCL_UNRECOGNIZED_VAR"
value="report"/>
<property key="warningmessagebreakoptions.W9901_RTSP_INVALID_OPERATION_SELECTION"
value="report"/>
<property key="warningmessagebreakoptions.W9902_RTSP_FLASH_PROGRAM_WRITE_PROTECTED"
value="report"/>
<property key="warningmessagebreakoptions.displaywarningmessagesoption"
value=""/>
<property key="warningmessagebreakoptions.warningmessages" value="holdstate"/>
</Simulator>
<Tool> <Tool>
<property key="AutoSelectMemRanges" value="auto"/> <property key="AutoSelectMemRanges" value="auto"/>
<property key="codecoverage.enabled" value="Disable"/>
<property key="codecoverage.enableoutputtofile" value="false"/>
<property key="codecoverage.outputfile" value=""/>
<property key="communication.activationmode" value="nohv"/> <property key="communication.activationmode" value="nohv"/>
<property key="communication.interface" value="updi"/> <property key="communication.interface" value="updi"/>
<property key="communication.speed" value="0.500"/> <property key="communication.speed" value="0.500"/>
@@ -226,6 +696,24 @@
<property key="memories.programmemory" value="true"/> <property key="memories.programmemory" value="true"/>
<property key="memories.programmemory.ranges" value="0-5fff"/> <property key="memories.programmemory.ranges" value="0-5fff"/>
<property key="memories.rww" value="true"/> <property key="memories.rww" value="true"/>
<property key="oscillator.auxfrequency" value="120"/>
<property key="oscillator.auxfrequencyunit" value="Mega"/>
<property key="oscillator.frequency" value="1"/>
<property key="oscillator.frequencyunit" value="Mega"/>
<property key="oscillator.rcfrequency" value="250"/>
<property key="oscillator.rcfrequencyunit" value="Kilo"/>
<property key="periphADC1.altscl" value="false"/>
<property key="periphADC1.minTacq" value=""/>
<property key="periphADC1.tacqunits" value="microseconds"/>
<property key="periphADC2.altscl" value="false"/>
<property key="periphADC2.minTacq" value=""/>
<property key="periphADC2.tacqunits" value="microseconds"/>
<property key="periphComp1.gte" value="gt"/>
<property key="periphComp2.gte" value="gt"/>
<property key="periphComp3.gte" value="gt"/>
<property key="periphComp4.gte" value="gt"/>
<property key="periphComp5.gte" value="gt"/>
<property key="periphComp6.gte" value="gt"/>
<property key="poweroptions.powerenable" value="false"/> <property key="poweroptions.powerenable" value="false"/>
<property key="programoptions.eraseb4program" value="true"/> <property key="programoptions.eraseb4program" value="true"/>
<property key="programoptions.preservedataflash" value="false"/> <property key="programoptions.preservedataflash" value="false"/>
@@ -237,11 +725,451 @@
<property key="programoptions.preserveprogramrange" value="false"/> <property key="programoptions.preserveprogramrange" value="false"/>
<property key="programoptions.preserveuserid" value="false"/> <property key="programoptions.preserveuserid" value="false"/>
<property key="programoptions.programuserotp" value="false"/> <property key="programoptions.programuserotp" value="false"/>
<property key="reset.scl" value="false"/>
<property key="reset.type" value="MCLR"/>
<property key="toolpack.updateoptions" <property key="toolpack.updateoptions"
value="toolpack.updateoptions.uselatestoolpack"/> value="toolpack.updateoptions.uselatestoolpack"/>
<property key="toolpack.updateoptions.packversion" <property key="toolpack.updateoptions.packversion"
value="Press to select which tool pack to use"/> value="Press to select which tool pack to use"/>
<property key="tracecontrol.include.timestamp" value="summarydataenabled"/>
<property key="tracecontrol.select" value="0"/>
<property key="tracecontrol.stallontracebufferfull" value="false"/>
<property key="tracecontrol.timestamp" value="0"/>
<property key="tracecontrol.tracebufmax" value="546000"/>
<property key="tracecontrol.tracefile" value="defmplabxtrace.log"/>
<property key="tracecontrol.traceresetonrun" value="false"/>
<property key="uart0io.output" value="window"/>
<property key="uart0io.outputfile" value=""/>
<property key="uart0io.uartioenabled" value="false"/>
<property key="uart1io.output" value="window"/>
<property key="uart1io.outputfile" value=""/>
<property key="uart1io.uartioenabled" value="false"/>
<property key="uart2io.output" value="window"/>
<property key="uart2io.outputfile" value=""/>
<property key="uart2io.uartioenabled" value="false"/>
<property key="uart3io.output" value="window"/>
<property key="uart3io.outputfile" value=""/>
<property key="uart3io.uartioenabled" value="false"/>
<property key="uart4io.output" value="window"/>
<property key="uart4io.outputfile" value=""/>
<property key="uart4io.uartioenabled" value="false"/>
<property key="uart5io.output" value="window"/>
<property key="uart5io.outputfile" value=""/>
<property key="uart5io.uartioenabled" value="false"/>
<property key="uart6io.output" value="window"/>
<property key="uart6io.outputfile" value=""/>
<property key="uart6io.uartioenabled" value="false"/>
<property key="usart0io.output" value="window"/>
<property key="usart0io.outputfile" value=""/>
<property key="usart0io.uartioenabled" value="false"/>
<property key="usart1io.output" value="window"/>
<property key="usart1io.outputfile" value=""/>
<property key="usart1io.uartioenabled" value="false"/>
<property key="usart2io.output" value="window"/>
<property key="usart2io.outputfile" value=""/>
<property key="usart2io.uartioenabled" value="false"/>
<property key="usart3io.output" value="window"/>
<property key="usart3io.outputfile" value=""/>
<property key="usart3io.uartioenabled" value="false"/>
<property key="usart4io.output" value="window"/>
<property key="usart4io.outputfile" value=""/>
<property key="usart4io.uartioenabled" value="false"/>
<property key="usartc0io.output" value="window"/>
<property key="usartc0io.outputfile" value=""/>
<property key="usartc0io.uartioenabled" value="false"/>
<property key="usartc1io.output" value="window"/>
<property key="usartc1io.outputfile" value=""/>
<property key="usartc1io.uartioenabled" value="false"/>
<property key="usartd0io.output" value="window"/>
<property key="usartd0io.outputfile" value=""/>
<property key="usartd0io.uartioenabled" value="false"/>
<property key="usartd1io.output" value="window"/>
<property key="usartd1io.outputfile" value=""/>
<property key="usartd1io.uartioenabled" value="false"/>
<property key="usarte0io.output" value="window"/>
<property key="usarte0io.outputfile" value=""/>
<property key="usarte0io.uartioenabled" value="false"/>
<property key="usarte1io.output" value="window"/>
<property key="usarte1io.outputfile" value=""/>
<property key="usarte1io.uartioenabled" value="false"/>
<property key="usarte2io.output" value="window"/>
<property key="usarte2io.outputfile" value=""/>
<property key="usarte2io.uartioenabled" value="false"/>
<property key="usartf0io.output" value="window"/>
<property key="usartf0io.outputfile" value=""/>
<property key="usartf0io.uartioenabled" value="false"/>
<property key="usartf1io.output" value="window"/>
<property key="usartf1io.outputfile" value=""/>
<property key="usartf1io.uartioenabled" value="false"/>
<property key="voltagevalue" value=""/> <property key="voltagevalue" value=""/>
<property key="warningmessagebreakoptions.W0001_CORE_BITREV_MODULO_EN"
value="report"/>
<property key="warningmessagebreakoptions.W0002_CORE_SECURE_MEMORYACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0003_CORE_SW_RESET" value="report"/>
<property key="warningmessagebreakoptions.W0004_CORE_WDT_RESET" value="report"/>
<property key="warningmessagebreakoptions.W0005_CORE_IOPUW_RESET"
value="report"/>
<property key="warningmessagebreakoptions.W0006_CORE_CODE_GUARD_PFC_RESET"
value="report"/>
<property key="warningmessagebreakoptions.W0007_CORE_DO_LOOP_STACK_UNDERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W0008_CORE_DO_LOOP_STACK_OVERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W0009_CORE_NESTED_DO_LOOP_RANGE"
value="report"/>
<property key="warningmessagebreakoptions.W0010_CORE_SIM32_ODD_WORDACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0011_CORE_SIM32_UNIMPLEMENTED_RAMACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0012_CORE_STACK_OVERFLOW_RESET"
value="report"/>
<property key="warningmessagebreakoptions.W0013_CORE_STACK_UNDERFLOW_RESET"
value="report"/>
<property key="warningmessagebreakoptions.W0014_CORE_INVALID_OPCODE"
value="report"/>
<property key="warningmessagebreakoptions.W0015_CORE_INVALID_ALT_WREG_SET"
value="report"/>
<property key="warningmessagebreakoptions.W0016_CORE_STACK_ERROR"
value="report"/>
<property key="warningmessagebreakoptions.W0017_CORE_ODD_RAMWORDACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0018_CORE_UNIMPLEMENTED_RAMACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0019_CORE_UNIMPLEMENTED_PROMACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0020_CORE_ACCESS_NOTIN_X_SPACE"
value="report"/>
<property key="warningmessagebreakoptions.W0021_CORE_ACCESS_NOTIN_Y_SPACE"
value="report"/>
<property key="warningmessagebreakoptions.W0022_CORE_XMODEND_LESS_XMODSRT"
value="report"/>
<property key="warningmessagebreakoptions.W0023_CORE_YMODEND_LESS_YMODSRT"
value="report"/>
<property key="warningmessagebreakoptions.W0024_CORE_BITREV_MOD_IS_ZERO"
value="report"/>
<property key="warningmessagebreakoptions.W0025_CORE_HARD_TRAP" value="report"/>
<property key="warningmessagebreakoptions.W0026_CORE_UNIMPLEMENTED_MEMORYACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0027_CORE_UNIMPLEMENTED_EDSACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0028_TBLRD_WORM_CONFIG_MEMORY"
value="report"/>
<property key="warningmessagebreakoptions.W0029_TBLRD_DEVICE_ID" value="report"/>
<property key="warningmessagebreakoptions.W0030_CORE_UNIMPLEMENTED_MEMORY_ACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0031_BSLIM_INSUFFICIENT_BOOT_SEGMENT"
value="report"/>
<property key="warningmessagebreakoptions.W0032_BSLIM_LIMITS_EXCEEDS_PROG_MEMORY"
value="report"/>
<property key="warningmessagebreakoptions.W0033_CORE_UNPREDICTABLE_OPCODE"
value="report"/>
<property key="warningmessagebreakoptions.W0034_CORE_UNALIGNED_MEMORY_ACCESS"
value="report"/>
<property key="warningmessagebreakoptions.W0035_CORE_UNIMPLEMENTED_RAMACCESS_NOTRAP"
value="report"/>
<property key="warningmessagebreakoptions.W0040_FPU_DIFF_CP10_CP11"
value="report"/>
<property key="warningmessagebreakoptions.W0041_FPU_ACCESS_DENIED"
value="report"/>
<property key="warningmessagebreakoptions.W0042_FPU_PRIVILEGED_ACCESS_ONLY"
value="report"/>
<property key="warningmessagebreakoptions.W0043_FPU_CP_RESERVED_VALUE"
value="report"/>
<property key="warningmessagebreakoptions.W0044_FPU_OUT_OF_RANGE"
value="report"/>
<property key="warningmessagebreakoptions.W0051_INSTRUCTION_DIV_NOT_ENOUGH_REPEAT"
value="report"/>
<property key="warningmessagebreakoptions.W0052_INSTRUCTION_DIV_TOO_MANY_REPEAT"
value="report"/>
<property key="warningmessagebreakoptions.W0053_INVALID_INTCON_VS_FIELD_VALUE"
value="report"/>
<property key="warningmessagebreakoptions.W0101_SIM_UPDATE_FAILED"
value="report"/>
<property key="warningmessagebreakoptions.W0102_SIM_PERIPH_MISSING"
value="report"/>
<property key="warningmessagebreakoptions.W0103_SIM_PERIPH_FAILED"
value="report"/>
<property key="warningmessagebreakoptions.W0104_SIM_FAILED_TO_INIT_TOOL"
value="report"/>
<property key="warningmessagebreakoptions.W0105_SIM_INVALID_FIELD"
value="report"/>
<property key="warningmessagebreakoptions.W0106_SIM_PERIPH_PARTIAL_SUPPORT"
value="report"/>
<property key="warningmessagebreakoptions.W0107_SIM_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0108_SIM_RESERVED_SETTING"
value="report"/>
<property key="warningmessagebreakoptions.W0109_SIM_PERIPHERAL_IN_DEVELOPMENT"
value="report"/>
<property key="warningmessagebreakoptions.W0110_SIM_UNEXPECTED_EVENT"
value="report"/>
<property key="warningmessagebreakoptions.W0111_SIM_UNSUPPORTED_SELECTION"
value="report"/>
<property key="warningmessagebreakoptions.W0112_SIM_INVALID_OPERATION"
value="report"/>
<property key="warningmessagebreakoptions.W0113_SIM_WRITE_TO_PROTECTED_SFR"
value="report"/>
<property key="warningmessagebreakoptions.W0114_SIM_INVALID_KEY" value="report"/>
<property key="warningmessagebreakoptions.W0115_SIM_FAILED_TO_PARSE_DEVICE_FILE"
value="report"/>
<property key="warningmessagebreakoptions.W0116_SIM_STACK_OVERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W0117_SIM_STACK_UNDERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W0118_SIM_INVALID_FIELD_VALUE"
value="report"/>
<property key="warningmessagebreakoptions.W0119_SIM_SAMPLING_RATE_VIOLATION"
value="report"/>
<property key="warningmessagebreakoptions.W0201_ADC_NO_STIMULUS_FILE"
value="report"/>
<property key="warningmessagebreakoptions.W0202_ADC_GO_DONE_BIT" value="report"/>
<property key="warningmessagebreakoptions.W0203_ADC_MINIMUM_2_TAD"
value="report"/>
<property key="warningmessagebreakoptions.W0204_ADC_TAD_TOO_SMALL"
value="report"/>
<property key="warningmessagebreakoptions.W0205_ADC_UNEXPECTED_TRANSITION"
value="report"/>
<property key="warningmessagebreakoptions.W0206_ADC_SAMP_TIME_TOO_SHORT"
value="report"/>
<property key="warningmessagebreakoptions.W0207_ADC_NO_PINS_SCANNED"
value="report"/>
<property key="warningmessagebreakoptions.W0208_ADC_UNSUPPORTED_CLOCK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W0209_ADC_ANALOG_CHANNEL_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0210_ADC_ANALOG_CHANNEL_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0211_ADC_PIN_INVALID_CHANNEL"
value="report"/>
<property key="warningmessagebreakoptions.W0212_ADC_BAND_GAP_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0213_ADC_RESERVED_SSRC"
value="report"/>
<property key="warningmessagebreakoptions.W0214_ADC_POSITIVE_INPUT_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0215_ADC_POSITIVE_INPUT_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0216_ADC_NEGATIVE_INPUT_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0217_ADC_NEGATIVE_INPUT_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0218_ADC_REFERENCE_HIGH_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0219_ADC_REFERENCE_HIGH_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0220_ADC_REFERENCE_LOW_DIGITAL"
value="report"/>
<property key="warningmessagebreakoptions.W0221_ADC_REFERENCE_LOW_OUTPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0222_ADC_OVERFLOW" value="report"/>
<property key="warningmessagebreakoptions.W0223_ADC_UNDERFLOW" value="report"/>
<property key="warningmessagebreakoptions.W0224_ADC_CTMU_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0225_ADC_INVALID_CH0S"
value="report"/>
<property key="warningmessagebreakoptions.W0226_ADC_VBAT_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0227_ADC_INVALID_ADCS"
value="report"/>
<property key="warningmessagebreakoptions.W0228_ADC_INVALID_ADCS"
value="report"/>
<property key="warningmessagebreakoptions.W0229_ADC_INVALID_ADCS"
value="report"/>
<property key="warningmessagebreakoptions.W0230_ADC_TRIGSEL_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0231_ADC_NOT_WARMED" value="report"/>
<property key="warningmessagebreakoptions.W0232_ADC_CALIBRATION_ABORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0233_ADC_CORE_POWERED_EARLY"
value="report"/>
<property key="warningmessagebreakoptions.W0234_ADC_ALREADY_CALIBRATING"
value="report"/>
<property key="warningmessagebreakoptions.W0235_ADC_CAL_TYPE_CHANGED"
value="report"/>
<property key="warningmessagebreakoptions.W0236_ADC_CAL_INVALIDATED"
value="report"/>
<property key="warningmessagebreakoptions.W0237_ADC_UNKNOWN_DATASHEET"
value="report"/>
<property key="warningmessagebreakoptions.W0238_ADC_INVALID_SFR_FIELD_VALUE"
value="report"/>
<property key="warningmessagebreakoptions.W0239_ADC_UNSUPPORTED_INPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0240_ADC_NOT_CALIBRATED"
value="report"/>
<property key="warningmessagebreakoptions.W0241_ADC_FRACTIONAL_NOT_ALLOWED"
value="report"/>
<property key="warningmessagebreakoptions.W0242_ADC_BG_INT_BEFORE_PWR"
value="report"/>
<property key="warningmessagebreakoptions.W0243_ADC_INVALID_TAD" value="report"/>
<property key="warningmessagebreakoptions.W0244_ADC_CONVERSION_ABORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0245_ADC_BUFREGEN_NOT_ALLOWED"
value="report"/>
<property key="warningmessagebreakoptions.W0246_ADC_ACCUMULATION_BAD_RESSEL"
value="report"/>
<property key="warningmessagebreakoptions.W0247_ADC_CONVERSION_BAD_RESSEL"
value="report"/>
<property key="warningmessagebreakoptions.W0248_ADC_WR_BEFORE_KEY_SEQ"
value="report"/>
<property key="warningmessagebreakoptions.W0400_PWM_PWM_FASTER_THAN_FOSC"
value="report"/>
<property key="warningmessagebreakoptions.W0600_WDT_2ND_WDT_MR_WRITE"
value="report"/>
<property key="warningmessagebreakoptions.W0601_WDT_EXPIRED" value="report"/>
<property key="warningmessagebreakoptions.W0601_WDT_RESET_OUTSIDE_WINDOW"
value="report"/>
<property key="warningmessagebreakoptions.W0700_CLC_GENERAL_WARNING"
value="report"/>
<property key="warningmessagebreakoptions.W0701_CLC_CLCOUT_AS_INPUT"
value="report"/>
<property key="warningmessagebreakoptions.W0702_CLC_CIRCULAR_LOOP"
value="report"/>
<property key="warningmessagebreakoptions.W0800_ACC_INPUT_INVALID_CONFIG"
value="report"/>
<property key="warningmessagebreakoptions.W0801_ACC_INPUT_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W0802_ACC_INVERTED_WINDOW_LIMITS"
value="report"/>
<property key="warningmessagebreakoptions.W0803_ACC_MISMATCHED_POS_INPUTS"
value="report"/>
<property key="warningmessagebreakoptions.W0804_ACC_WINDOW_COMP_DISABLED"
value="report"/>
<property key="warningmessagebreakoptions.W0805_ACC_WINDOW_COMPS_MODES"
value="report"/>
<property key="warningmessagebreakoptions.W0806_ACC_FEATURE_NOT_SUPPORTED"
value="report"/>
<property key="warningmessagebreakoptions.W10001_RESERVED_IRQ_HANDLER_INVOKED"
value="report"/>
<property key="warningmessagebreakoptions.W10002_UNSUPPORTED_CLK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W10101_UNSUPPORTED_CHANNEL_MODE"
value="report"/>
<property key="warningmessagebreakoptions.W10102_UNSUPPORTED_CLK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W10103_UNSUPPORTED_RECEIVER_FILTER"
value="report"/>
<property key="warningmessagebreakoptions.W10301_NO_PORT_PINS_FOUND"
value="report"/>
<property key="warningmessagebreakoptions.W10500_UNSUPPORTED_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W1201_DATAFLASH_MEM_OUTSIDE_RANGE"
value="report"/>
<property key="warningmessagebreakoptions.W1202_DATAFLASH_ERASE_WHILE_LOCKED"
value="report"/>
<property key="warningmessagebreakoptions.W1203_DATAFLASH_WRITE_WHILE_LOCKED"
value="report"/>
<property key="warningmessagebreakoptions.W1401_DMA_PERIPH_NOT_AVAIL"
value="report"/>
<property key="warningmessagebreakoptions.W1402_DMA_INVALID_IRQ" value="report"/>
<property key="warningmessagebreakoptions.W1403_DMA_INVALID_SFR" value="report"/>
<property key="warningmessagebreakoptions.W1404_DMA_INVALID_DMA_ADDR"
value="report"/>
<property key="warningmessagebreakoptions.W1405_DMA_IRQ_DIR_MISMATCH"
value="report"/>
<property key="warningmessagebreakoptions.W1600_PPS_INVALID_MAP" value="report"/>
<property key="warningmessagebreakoptions.W1601_PPS_INVALID_PIN_DESCRIPTION"
value="report"/>
<property key="warningmessagebreakoptions.W1800_PWM_TIMER_SELECTION_NOT_AVIALABLE"
value="report"/>
<property key="warningmessagebreakoptions.W1801_PWM_TIMER_SELECTION_BAD_CLOCK_INPUT"
value="report"/>
<property key="warningmessagebreakoptions.W1802_PWM_TIMER_MISSING_PERSCALER_INFO"
value="report"/>
<property key="warningmessagebreakoptions.W2001_INPUTCAPTURE_TMR3_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W2002_INPUTCAPTURE_CAPTURE_EMPTY"
value="report"/>
<property key="warningmessagebreakoptions.W2003_INPUTCAPTURE_SYNCSEL_NOT_AVIALABLE"
value="report"/>
<property key="warningmessagebreakoptions.W2004_INPUTCAPTURE_BAD_SYNC_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W2501_OUTPUTCOMPARE_SYNCSEL_NOT_AVIALABLE"
value="report"/>
<property key="warningmessagebreakoptions.W2502_OUTPUTCOMPARE_BAD_SYNC_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W2503_OUTPUTCOMPARE_BAD_TRIGGER_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W2700_MPU_ILLEGAL_DREGION"
value="report"/>
<property key="warningmessagebreakoptions.W2701_MPU_INVALID_REGION"
value="report"/>
<property key="warningmessagebreakoptions.W3000_LPM_READ_PROTECTION_SECTION"
value="report"/>
<property key="warningmessagebreakoptions.W3010_SPM_WRITE_PROTECTION_SECTION"
value="report"/>
<property key="warningmessagebreakoptions.W6001_RTT_FORBIDDEN_RTPRES"
value="report"/>
<property key="warningmessagebreakoptions.W6002_RTT_BAD_WRITING_ALMV"
value="report"/>
<property key="warningmessagebreakoptions.W6003_RTT_BAD_WRITING_RTPRES"
value="report"/>
<property key="warningmessagebreakoptions.W7001_SMT_CLK_SELECTION_NOT_SUPPORT"
value="report"/>
<property key="warningmessagebreakoptions.W7002_SMT_SIG_SELECTION_NOT_SUPPORT"
value="report"/>
<property key="warningmessagebreakoptions.W7003_SMT_WIN_SELECTION_NOT_SUPPORT"
value="report"/>
<property key="warningmessagebreakoptions.W8001_OSC_INVALID_CLOCK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W8002_OSC_RESERVED_FEXTOSC"
value="report"/>
<property key="warningmessagebreakoptions.W9001_TMR_GATE_AND_EXTCLOCK_ENABLED"
value="report"/>
<property key="warningmessagebreakoptions.W9002_TMR_NO_PIN_AVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9003_TMR_INVALID_CLOCK_SOURCE"
value="report"/>
<property key="warningmessagebreakoptions.W9201_UART_TX_OVERFLOW"
value="report"/>
<property key="warningmessagebreakoptions.W9202_UART_TX_CAPTUREFILE"
value="report"/>
<property key="warningmessagebreakoptions.W9203_UART_TX_INVALIDINTERRUPTMODE"
value="report"/>
<property key="warningmessagebreakoptions.W9204_UART_RX_EMPTY_QUEUE"
value="report"/>
<property key="warningmessagebreakoptions.W9205_UART_TX_BADFILE" value="report"/>
<property key="warningmessagebreakoptions.W9206_UART_RESERVED_MODE"
value="report"/>
<property key="warningmessagebreakoptions.W9207_UART_UNABLETOCLOSE_FILE"
value="report"/>
<property key="warningmessagebreakoptions.W9401_CVREF_INVALIDSOURCESELECTION"
value="report"/>
<property key="warningmessagebreakoptions.W9402_CVREF_INPUT_OUTPUTPINCONFLICT"
value="report"/>
<property key="warningmessagebreakoptions.W9601_COMP_FVR_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9602_COMP_DAC_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9603_COMP_CVREF_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9604_COMP_SLOPE_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9605_COMP_PRG_SOURCE_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9607_COMP_DGTL_FLTR_OPTION_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9609_COMP_DGTL_FLTR_CLK_UNAVAILABLE"
value="report"/>
<property key="warningmessagebreakoptions.W9801_FVR_INVALID_MODE_SELECTION"
value="report"/>
<property key="warningmessagebreakoptions.W9801_SCL_BAD_SUBTYPE_INDICATION"
value="report"/>
<property key="warningmessagebreakoptions.W9802_SCL_FILE_NOT_FOUND"
value="report"/>
<property key="warningmessagebreakoptions.W9803_SCL_FAILED_TO_READ_FILE"
value="report"/>
<property key="warningmessagebreakoptions.W9804_SCL_UNRECOGNIZED_LABEL"
value="report"/>
<property key="warningmessagebreakoptions.W9805_SCL_UNRECOGNIZED_VAR"
value="report"/>
<property key="warningmessagebreakoptions.W9901_RTSP_INVALID_OPERATION_SELECTION"
value="report"/>
<property key="warningmessagebreakoptions.W9902_RTSP_FLASH_PROGRAM_WRITE_PROTECTED"
value="report"/>
<property key="warningmessagebreakoptions.displaywarningmessagesoption"
value=""/>
<property key="warningmessagebreakoptions.warningmessages" value="holdstate"/>
</Tool> </Tool>
<XC8-CO> <XC8-CO>
<property key="coverage-enable" value=""/> <property key="coverage-enable" value=""/>