diff --git a/.gitignore b/.gitignore index a50307f..871ca37 100644 --- a/.gitignore +++ b/.gitignore @@ -1,22 +1,22 @@ -output/ -.hex -.as -.cmf -.cof -.d -.hex -.hxl -.p1 -.pre -.sdb -.sym -.lst -.obj -.rlf -build/ -dist/ -debug/ -tmp/ -src/tmp +**/output/ +**/.hex +**/.as +**/.cmf +**/.cof +**/.d +**/.hex +**/.hxl +**/.p1 +**/.pre +**/.sdb +**/.sym +**/.lst +**/.obj +**/.rlf +**/build/ +**/dist/ +**/debug/ +**/tmp/ +**/src/tmp !.gitkeep diff --git a/.vscode/settings.json b/.vscode/settings.json index 256cbc5..dbfe19f 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,6 +5,7 @@ "initialisation.h": "c", "config.h": "c", "rotary_encoder.h": "c", - "potentiometer.h": "c" + "potentiometer.h": "c", + "picamp-potentiometer.h": "c" } } diff --git a/assets/essay.pdf b/assets/essay.pdf new file mode 100644 index 0000000..fc60582 Binary files /dev/null and b/assets/essay.pdf differ diff --git a/picamp-potentiometer.X/picamp-potentiometer.c b/picamp-potentiometer.X/picamp-potentiometer.c deleted file mode 100644 index 69e3bd2..0000000 --- a/picamp-potentiometer.X/picamp-potentiometer.c +++ /dev/null @@ -1,141 +0,0 @@ -#include "picamp-potentiometer.h" - -#define PIC887A -// #[config:887a] -#ifdef PIC887A - int __get_pod_data(void) { - // Combines the high and low registers to give one 16 bit value - return (ADRESH << 8 | ADRESL); - } - - int __init_adc(ADCChannelSelect analogPin) { - // ADC enable - ADCON0bits.ADON = 1; // ADC_ON - // ADC cycle enable - ADCON0bits.GO_nDONE = 1; // ADC_IN_PROGRESS - // Analog channel select - ADCON0bits.CHS = analogPin; // ADC_AN07 - // ADC clock select - ADCON0bits.ADCS = 0; // ADC_FOSC02 - - // ADC result alignment - ADCON1bits.ADFM = 1; // ADC_RIGHT - // ADC voltage reference configuration - ADCON1bits.VCFG1 = 0; // VREF_PLUSPIN - ADCON1bits.VCFG0 = 0; // VREF_MINPIN - - // Set the analog pin to analog mode - switch (analogPin) { - case ADC_AN00: ANSELbits.ANS0 = 1; break; - case ADC_AN01: ANSELbits.ANS1 = 1; break; - case ADC_AN02: ANSELbits.ANS2 = 1; break; - case ADC_AN03: ANSELbits.ANS3 = 1; break; - case ADC_AN04: ANSELbits.ANS5 = 1; break; - case ADC_AN05: ANSELbits.ANS5 = 1; break; - case ADC_AN06: ANSELbits.ANS6 = 1; break; - case ADC_AN07: ANSELbits.ANS7 = 1; break; - case ADC_AN08: ANSELHbits.ANS8 = 1; break; - case ADC_AN09: ANSELHbits.ANS9 = 1; break; - case ADC_AN10: ANSELHbits.ANS10 = 1; break; - case ADC_AN11: ANSELHbits.ANS11 = 1; break; - case ADC_AN12: ANSELHbits.ANS12 = 1; break; - case ADC_AN13: ANSELHbits.ANS13 = 1; break; - default: break; - } - - return 1; - } -#elif PIC1829 -int __get_pod_data(void) { - return ADRES; -} - -void __init_adc(ADCChannelSelect analogPin) { - // ADCON0 = 0b00001111; - ADCON0bits.ADON = 1; // ADC_ON - ADCON0bits.GO_nDONE = 1; // ADC_IN_PROGRESS - ADCON0bits.CHS = analogPin; // ADC_CGANNEL_SELECT - - ADCON1bits.ADFM = 1; - - // A line = input line - // todo: fix! tris and ansel - // A4 = potmeter pin, set as input - // TRISAbits.TRISA4 = 1; - - // // A4 = potmeter = analog, set to 1 - // ANSELAbits.ANSA4 = 1; - switch (analogPin) { - case ADC_16F_AN00: ANSELAbits.ANSA0 = 1; break; - case ADC_16F_AN01: ANSELAbits.ANSA1 = 1; break; - case ADC_16F_AN02: ANSELAbits.ANSA2 = 1; break; - case ADC_16F_AN04: ANSELCbits.ANSC0 = 1; break; - case ADC_16F_AN05: ANSELCbits.ANSC1 = 1; break; - case ADC_16F_AN06: ANSELCbits.ANSC2 = 1; break; - case ADC_16F_AN10: ANSELBbits.ANSB4 = 1; break; - case ADC_16F_AN11: ANSELBbits.ANSB5 = 1; break; - - } -} -#endif - -/** @brief Initialize the potentiometer - * - * This function initializes the potentiometer by setting the config bits - * according to the current PIC microcontroller used. It also sets the pin - * connected to the potentiometer to output mode. - * - * @param analogPort The analog port to use - * @param pinAddress The address of the pin to use - * - * @return void - */ -void init_pot(ADCChannelSelect analogPort, volatile unsigned char* pinAddress) { - // Set up ADC based on the PIC used - __init_adc(analogPort); - // Set the pin connected to the potentiometer to output mode - *pinAddress = 1; -} - -/** @brief Populate an array with step values - * - * This function populates an array with step values, based on the size of the - * array and the potentiometer limit. The first value in the array is the - * maximum value, the last value is the minimum value. - * - * @param array The array to populate - * @param size The size of the array - * @param potLimit The maximum value of the potentiometer - * - * @return void - */ -void populate_step_array(int *array, int size, int potLimit) { - // All subsequent steps are based off of the first array entry - array[0] = potLimit / (size + 1); - // Populate the array with equally divided step values - for (int i = 0; i < size; i++) { - array[i] = array[0] * (i + 1); - } -} - - -/** @brief Read the potentiometer - * - * This function reads the potentiometer by setting the `GO` bit to `1` and - * waiting for the ADC to finish. It then returns the value of the ADC. - * - * @return int The value of the ADC - */ -int read_pot(void) { - // Wait for regulating capacitor to charge - __delay_us(5); - - // Bit 2 of `ADCON0` is set to `1`, meaning `GO` will wait until - // ADC got a signal, converted analog to digital, etc. - GO = 1; - while (GO) continue; - - // Read the data from the potmeter pin (`E2`) registers, and combine - // them into a single integer - return __get_pod_data(); -} diff --git a/picamp-potentiometer.X/picamp-potentiometer.h b/picamp-potentiometer.X/picamp-potentiometer.h deleted file mode 100644 index b0dee6b..0000000 --- a/picamp-potentiometer.X/picamp-potentiometer.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef PICAMP_POT_H -#define PICAMP_POT_H - -// #[declarations:xc8] -#include -#ifndef _XTAL_FREQ - #define _XTAL_FREQ 500000 -#endif - -// #[declarations:adc] -typedef enum { - // PIC16F887 - ADC_AN00 = 0b0000, - ADC_AN01 = 0b0001, - ADC_AN02 = 0b0010, - ADC_AN03 = 0b0011, - ADC_AN04 = 0b0100, - ADC_AN05 = 0b0101, - ADC_AN06 = 0b0110, - ADC_AN07 = 0b0111, - ADC_AN08 = 0b1000, - ADC_AN09 = 0b1001, - ADC_AN10 = 0b1010, - ADC_AN11 = 0b1011, - ADC_AN12 = 0b1100, - ADC_AN13 = 0b1101, - ADC_CVREF = 0b1110, // CVREF - ADC_FXREF = 0b1111, // Fixed Ref (0.6V fixed voltage reference) - // PIC16F1829 - ADC_16F_AN00 = 0b00000, - ADC_16F_AN01 = 0b00001, - ADC_16F_AN02 = 0b00010, - ADC_16F_AN03 = 0b00011, - ADC_16F_AN04 = 0b00100, - ADC_16F_AN05 = 0b00101, - ADC_16F_AN06 = 0b00110, - ADC_16F_AN07 = 0b00111, - ADC_16F_AN08 = 0b01000, - ADC_16F_AN09 = 0b01001, - ADC_16F_AN10 = 0b01010, - ADC_16F_AN11 = 0b01011, - ADC_16F_TEMP = 0b11101, - ADC_16F_DACO = 0b11110, - ADC_16F_FVRB = 0b11111, -} ADCChannelSelect; - -// #[declarations:functions] -void populate_step_array(int *array, int size, int potLimit); -void init_pot(ADCChannelSelect analogPort, volatile unsigned char *pinAddress); -int read_pot(void); - -#endif diff --git a/picamp-rotary.X/picamp-rotary.c b/picamp-rotary.X/picamp-rotary.c deleted file mode 100644 index b84f7d4..0000000 --- a/picamp-rotary.X/picamp-rotary.c +++ /dev/null @@ -1,128 +0,0 @@ -// Rotary encoder structs and enums -#include "./picamp-rotary.h" - - -#define PIC16887A -#ifdef PIC16887A -void __init_int(IOCPin RBA, IOCPin RBB) { - // Global interrupt enable - INTCONbits.GIE = 1; - // External interrupt enable - INTCONbits.INTE = 1; - // Peripheral interrupt enable - INTCONbits.PEIE = 1; - - // PORTB Change Interrupt Enable - INTCONbits.RBIE = 1; - - switch (RBA) { - case IOCRB0: IOCBbits.IOCB0 = 1; break; - case IOCRB1: IOCBbits.IOCB1 = 1; break; - case IOCRB2: IOCBbits.IOCB2 = 1; break; - case IOCRB3: IOCBbits.IOCB3 = 1; break; - case IOCRB4: IOCBbits.IOCB4 = 1; break; - case IOCRB5: IOCBbits.IOCB5 = 1; break; - case IOCRB6: IOCBbits.IOCB6 = 1; break; - case IOCRB7: IOCBbits.IOCB7 = 1; break; - } - - switch (RBB) { - case IOCRB0: IOCBbits.IOCB0 = 1; break; - case IOCRB1: IOCBbits.IOCB1 = 1; break; - case IOCRB2: IOCBbits.IOCB2 = 1; break; - case IOCRB3: IOCBbits.IOCB3 = 1; break; - case IOCRB4: IOCBbits.IOCB4 = 1; break; - case IOCRB5: IOCBbits.IOCB5 = 1; break; - case IOCRB6: IOCBbits.IOCB6 = 1; break; - case IOCRB7: IOCBbits.IOCB7 = 1; break; - } - - // Set interrupt edge - OPTION_REGbits.INTEDG = 0; - - // Clear interrupt flag - INTCONbits.INTF = 0; - INTCONbits.RBIF = 0; -} - -void __init_pin(volatile unsigned char* trisA, volatile unsigned char* trisB) { - // Set `trisA` and `trisB` as inputs - *trisA = 1; - *trisB = 1; - - // Set all channels to digital - ANSEL = 0; - ANSELH = 0; -} -#elif PIC1829 -void __init_int(IOCPin RBA, IOCPin RBB) {} -void __init_pin(volatile unsigned char* trisA, volatile unsigned char* trisB) { - // Set `trisA` and `trisB` as inputs - *trisA = 1; - *trisB = 1; - - // Set all channels to digital - ANSELA = 0; - ANSELB = 0; - ANSELC = 0; -} -#endif - -/** @brief Initialize the rotary encoder - * - * This function initializes the rotary encoder by setting the `trisA` and `trisB` - * as inputs. - * - * @param trisA The address of the TRISA register - * @param trisB The address of the TRISB register - * - * @return void -*/ -void init_rotary(IOCPin RBA, IOCPin RBB, volatile unsigned char* trisA, volatile unsigned char* trisB) { - // Initialize the interrupt - __init_int(RBA, RBB); - - // Initialize the pins - __init_pin(trisA, trisB); -}; - -/** @brief Parse the rotary encoder - * - * This function parses the rotary encoder by reading the `REA` and `REB` pins - * and updating the `counter` accordingly. It also checks if the `counter` is - * at the maximum or minimum value and loops around if so. - * - * @param REA The REA pin - * @param REB The REB pin - * @param counter The counter to update - * @param max The maximum value of the counter - * @param min The minimum value of the counter - * - * @return void -*/ -void parse_rotary(char REA, char REB, char* counter, char max, char min) { - // static values retain their state, even on end of scope - static unsigned char prevState; - unsigned char state; - - // Delay for 1ms to avoid switch bounce - __delay_ms(1); - - // Read the pin status from `REA` and `REB`, cast to correct data type - state = (unsigned char)(REB << 1 | REA); - - // Check if state changed, if so increase/decrease `counter` accordingly - if (prevState == 0) { - if (state == ROTATE_LEFT) (*counter)++; - else if (state == ROTATE_RIGHT) (*counter)--; - } - - // Loop around if at max/min - if (*counter > max) *counter = min; - else if (*counter < min) *counter = max; - - // Update `prevState` for next call, - // write to `PORTB` avoids a mismatch condition - prevState = state; - PORTB = PORTB; -} diff --git a/picamp-rotary.X/picamp-rotary.h b/picamp-rotary.X/picamp-rotary.h deleted file mode 100644 index 7f14b3a..0000000 --- a/picamp-rotary.X/picamp-rotary.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef PICAMP_ROTARY_H -#define PICAMP_ROTARY_H - -#include -#ifndef _XTAL_FREQ - #define _XTAL_FREQ 500000 -#endif - -// #[declarations:rotary] -typedef enum { ROTATE_LEFT = 1, ROTATE_RIGHT = 2 } RotaryEncoderStates; -typedef enum { - IOCRB0 = 0, - IOCRB1 = 1, - IOCRB2 = 2, - IOCRB3 = 3, - IOCRB4 = 4, - IOCRB5 = 5, - IOCRB6 = 6, - IOCRB7 = 7 -} IOCPin; - -// #[declarations:functions] -void parse_rotary(char REA, char REB, char* counter, char max, char min); -void init_rotary(IOCPin RBA, IOCPin RBB, volatile unsigned char* trisA, volatile unsigned char* trisB); - -#endif diff --git a/picamp.X/LICENSES/.gitkeep b/picamp.X/LICENSES/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/picamp.X/include/HCMS2913.h b/picamp.X/include/HCMS2913.h deleted file mode 100644 index fb10b6d..0000000 --- a/picamp.X/include/HCMS2913.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef HCMS2913_H -#define HCMS2913_H - -#include "./HCMS2913.h" -#include "./config.h" - -typedef enum { - MST_OSC_DIV_04, // 0x0: 0000 - MST_OSC_DIV_16, // 0x1: 0001 - MST_OSC_DIV_64, // 0x2: 0010 - MST_OSC_DIV_T2, // 0x3: 0011 - SLV_SS_EN, // 0x4: 0100 - not used in this version of our lib ... - SLV_SS_DIS // 0x5: 0101 -} sspmode; - -// Datasheet SMP (Sample Timing) behavior in (SPI MASTER MODE ONLY): -// 1 = Input data sampled (received) at end of data output time -// 0 = Input data sampled (recieved) at middle of data output time - -typedef enum { - SMP0_SDI_MIDDLE, SMP1_SDI_END -} rxsmpmoment; - -// Datasheet CKP (Clock Polarity) select bit behavior (SPI mode): -// 1 = Idle state for clock is a high level -// 0 = Idle state for clock is a low level - -typedef enum { - CKP0_CPOL0_IDLE_LOW, CKP1_CPOL1_IDLE_HIGH -} clkpol; - -// Datasheet CKE (Clock Edge) select bit behavior (SPI mode): -// 1 = Transmit occurs on transition from active to Idle clock state -// 0 = Transmit occurs on transition from Idle to active clock state -// ! NOTE: Microchip CKE bit is always the inverse of Motorola CPHA bit! - -typedef enum { - CKE0_CPHA1_TRSMIT_IDL2ACT, CKE1_CPHA0_TRSMIT_ACT2IDL -} txclkedge; - -void HCMS_init(volatile unsigned char *port, uint8_t _RESET, uint8_t _CENABLE, uint8_t _RSELECT); -void HCMS_load_word(const char *_string, char *bufferSelected, volatile unsigned char *port, uint8_t _CENABLE); -void HCMS_spi_init(sspmode mst_slv_oscdiv, rxsmpmoment sdi_rx_smp, clkpol clock_pol, txclkedge sdo_tx_edge); - -#endif \ No newline at end of file diff --git a/picamp.X/include/initialisation.h b/picamp.X/include/initialisation.h deleted file mode 100644 index 20b4926..0000000 --- a/picamp.X/include/initialisation.h +++ /dev/null @@ -1,117 +0,0 @@ -/* -Defines: -#define NPN // For inverted input ports (NPN transistor) - -Tested with: - - PIC16F877A -*/ -#ifndef INITIALISATION_H -#define INITIALISATION_H - -// #[declarations:init_gpio] -#ifdef NPN - typedef enum { ON = 0, OFF = 1 } PinStates; -#else - typedef enum { OFF = 0, ON = 1 } PinStates; -#endif - -typedef enum { OUTPUT = 0, INPUT = 1 } PinDirection; -typedef enum { DIGITAL = 0, ANALOG = 1 } PinMode; - -typedef struct { - volatile unsigned char* tris; - volatile unsigned char* lat; - volatile unsigned char* ansel; - PinDirection direction; - PinMode mode; -} PinConfig; - -// #[declarations:init_osc] -typedef enum { CONFIG_FOSC = 0, INTERNAL_FOSC = 1 } OscStartupTime; -typedef enum { CONFIG_CLK = 0, INTERNAL_CLK = 1 } SysClockSelect; -typedef enum { HTS_UNSTABLE = 0, HTS_STABLE = 1 } HFINTOSCStatus; -typedef enum { LTS_UNSTABLE = 0, LTS_STABLE = 1 } LFINTOSCStable; -typedef enum { - KHZ032 = 0b000, // LFINTOSC - KHZ125 = 0b001, - KHZ250 = 0b010, - KHZ500 = 0b011, // Default - MHZ001 = 0b100, - MHZ002 = 0b101, - MHZ004 = 0b110, - MHZ008 = 0b111 -} InternalFrequency; - -typedef struct { - SysClockSelect SCS; - InternalFrequency IRCF; - OscStartupTime OSTS; -} OscillatorConfig; - -// #[declarations:interupt] -typedef enum { GIE_DISABLED = 0, GIE_ENABLED = 1 } GlobalInterrupt; -typedef enum { EINT_DISABLED = 0, EINT_ENABLED = 1 } ExternalInterrupt; -typedef enum { PEIE_DISABLED = 0, PEIE_ENABLED = 1 } PeripheralInterrupt; -typedef enum { T0INT_DISABLED = 0, T0INT_ENABLED = 1 } Timer0OverflowInterrupt; -typedef enum { RBINT_DISABLED = 0, RBINT_ENABLED = 1 } PortBInterrupt; -typedef enum { FALLING_EDGE = 0, RISING_EDGE = 1 } InterruptEdge; -typedef enum { INT_AWAITING = 0, INT_OCCURED = 1 } InterruptFlag; - -typedef struct { - GlobalInterrupt GIE; - ExternalInterrupt EINT; - PeripheralInterrupt PEIE; - Timer0OverflowInterrupt T0IE; - PortBInterrupt RBIE; - InterruptEdge INTEDG; -} InterruptConfig; - -// #[declarations:adc] -// typedef enum { ADC_OFF = 0, ADC_ON = 1 } ADCEnable; -// typedef enum { VREF_MINPIN = 0, VREF_VSS = 1 } ADCVoltageReference1; -// typedef enum { VREF_PLUSPIN = 0, VREF_VDD = 1 } ADCVoltageReference0; -// typedef enum { ADC_LEFT = 0, ADC_RIGHT = 1 } ADCResultFormat; -// typedef enum { ADC_DONE = 0, ADC_IN_PROGRESS = 1 } ADCConversionStatus; -// typedef enum { -// ADC_AN00 = 0b0000, -// ADC_AN01 = 0b0001, -// ADC_AN02 = 0b0010, -// ADC_AN03 = 0b0011, -// ADC_AN04 = 0b0100, -// ADC_AN05 = 0b0101, -// ADC_AN06 = 0b0110, -// ADC_AN07 = 0b0111, -// ADC_AN08 = 0b1000, -// ADC_AN09 = 0b1001, -// ADC_AN10 = 0b1010, -// ADC_AN11 = 0b1011, -// ADC_AN12 = 0b1100, -// ADC_AN13 = 0b1101, -// ADC_CVREF = 0b1110, // CVREF -// ADC_FXREF = 0b1111 // Fixed Ref (0.6V fixed voltage reference) -// } ADCChannelSelect; - -// typedef enum { -// ADC_FOSC02 = 0b00, -// ADC_FOSC08 = 0b01, -// ADC_FOSC32 = 0b10, -// ADC_INTOSC = 0b11 // (FRC) from a dedicated internal oscillator = 500 kHz max -// } ADCConversionClock; - -// typedef struct { -// ADCEnable ADON; -// ADCResultFormat ADFM; -// ADCChannelSelect CHS; -// ADCConversionClock ADCS; -// ADCVoltageReference0 VCFG0; -// ADCVoltageReference1 VCFG1; -// ADCConversionStatus GO_nDONE; -// } ADCConfig; - -// #[declarations:functions] -void init_osc(OscillatorConfig config); -void init_int(InterruptConfig config); -void init_gpio(PinConfig ports[], int size); -// void init_adc(ADCConfig config); - -#endif diff --git a/picamp.X/include/potentiometer.h b/picamp.X/include/potentiometer.h deleted file mode 100644 index b0dee6b..0000000 --- a/picamp.X/include/potentiometer.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef PICAMP_POT_H -#define PICAMP_POT_H - -// #[declarations:xc8] -#include -#ifndef _XTAL_FREQ - #define _XTAL_FREQ 500000 -#endif - -// #[declarations:adc] -typedef enum { - // PIC16F887 - ADC_AN00 = 0b0000, - ADC_AN01 = 0b0001, - ADC_AN02 = 0b0010, - ADC_AN03 = 0b0011, - ADC_AN04 = 0b0100, - ADC_AN05 = 0b0101, - ADC_AN06 = 0b0110, - ADC_AN07 = 0b0111, - ADC_AN08 = 0b1000, - ADC_AN09 = 0b1001, - ADC_AN10 = 0b1010, - ADC_AN11 = 0b1011, - ADC_AN12 = 0b1100, - ADC_AN13 = 0b1101, - ADC_CVREF = 0b1110, // CVREF - ADC_FXREF = 0b1111, // Fixed Ref (0.6V fixed voltage reference) - // PIC16F1829 - ADC_16F_AN00 = 0b00000, - ADC_16F_AN01 = 0b00001, - ADC_16F_AN02 = 0b00010, - ADC_16F_AN03 = 0b00011, - ADC_16F_AN04 = 0b00100, - ADC_16F_AN05 = 0b00101, - ADC_16F_AN06 = 0b00110, - ADC_16F_AN07 = 0b00111, - ADC_16F_AN08 = 0b01000, - ADC_16F_AN09 = 0b01001, - ADC_16F_AN10 = 0b01010, - ADC_16F_AN11 = 0b01011, - ADC_16F_TEMP = 0b11101, - ADC_16F_DACO = 0b11110, - ADC_16F_FVRB = 0b11111, -} ADCChannelSelect; - -// #[declarations:functions] -void populate_step_array(int *array, int size, int potLimit); -void init_pot(ADCChannelSelect analogPort, volatile unsigned char *pinAddress); -int read_pot(void); - -#endif diff --git a/picamp.X/include/rotary_encoder.h b/picamp.X/include/rotary_encoder.h deleted file mode 100644 index 7782ca9..0000000 --- a/picamp.X/include/rotary_encoder.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef PICAMP_ROTARY_H -#define PICAMP_ROTARY_H - -#include -#ifndef _XTAL_FREQ - #define _XTAL_FREQ 500000 -#endif - -// #[declarations:rotary] -typedef enum { ROTATE_LEFT = 1, ROTATE_RIGHT = 2 } RotaryEncoderStates; -typedef enum { - IOCRB0 = 0, - IOCRB1 = 1, - IOCRB2 = 2, - IOCRB3 = 3, - IOCRB4 = 4, - IOCRB5 = 5, - IOCRB6 = 6, - IOCRB7 = 7 -} IOCPin; - -// #[declarations:functions] -void parse_rotary(char A, char B, char* counter, char max, char min); -void init_rotary(IOCPin RBA, IOCPin RBB, volatile unsigned char* trisA, volatile unsigned char* trisB); - -#endif diff --git a/picamp.X/nbproject/Makefile-default.mk b/picamp.X/nbproject/Makefile-default.mk deleted file mode 100644 index db8cd6f..0000000 --- a/picamp.X/nbproject/Makefile-default.mk +++ /dev/null @@ -1,194 +0,0 @@ -# -# Generated Makefile - do not edit! -# -# Edit the Makefile in the project folder instead (../Makefile). Each target -# has a -pre and a -post target defined where you can add customized code. -# -# This makefile implements configuration specific macros and targets. - - -# Include project Makefile -ifeq "${IGNORE_LOCAL}" "TRUE" -# do not include local makefile. User is passing all local related variables already -else -include Makefile -# Include makefile containing local settings -ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" -include nbproject/Makefile-local-default.mk -endif -endif - -# Environment -MKDIR=mkdir -p -RM=rm -f -MV=mv -CP=cp - -# Macros -CND_CONF=default -ifeq ($(TYPE_IMAGE), DEBUG_RUN) -IMAGE_TYPE=debug -OUTPUT_SUFFIX=elf -DEBUGGABLE_SUFFIX=elf -FINAL_IMAGE=${DISTDIR}/picamp.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} -else -IMAGE_TYPE=production -OUTPUT_SUFFIX=hex -DEBUGGABLE_SUFFIX=elf -FINAL_IMAGE=${DISTDIR}/picamp.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} -endif - -ifeq ($(COMPARE_BUILD), true) -COMPARISON_BUILD=-mafrlcsj -else -COMPARISON_BUILD= -endif - -# Object Directory -OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} - -# Distribution Directory -DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} - -# Source Files Quoted if spaced -SOURCEFILES_QUOTED_IF_SPACED=src/initialisation.c src/main.c src/HCMS2913.c - -# Object Files Quoted if spaced -OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/src/initialisation.p1 ${OBJECTDIR}/src/main.p1 ${OBJECTDIR}/src/HCMS2913.p1 -POSSIBLE_DEPFILES=${OBJECTDIR}/src/initialisation.p1.d ${OBJECTDIR}/src/main.p1.d ${OBJECTDIR}/src/HCMS2913.p1.d - -# Object Files -OBJECTFILES=${OBJECTDIR}/src/initialisation.p1 ${OBJECTDIR}/src/main.p1 ${OBJECTDIR}/src/HCMS2913.p1 - -# Source Files -SOURCEFILES=src/initialisation.c src/main.c src/HCMS2913.c - - - -CFLAGS= -ASFLAGS= -LDLIBSOPTIONS= - -############# Tool locations ########################################## -# If you copy a project from one host to another, the path where the # -# compiler is installed may be different. # -# If you open this project with MPLAB X in the new host, this # -# makefile will be regenerated and the paths will be corrected. # -####################################################################### -# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build -FIXDEPS=fixDeps - -.build-conf: ${BUILD_SUBPROJECTS} -ifneq ($(INFORMATION_MESSAGE), ) - @echo $(INFORMATION_MESSAGE) -endif - ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/picamp.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} - -MP_PROCESSOR_OPTION=16F887 -# ------------------------------------------------------------------------------------ -# Rules for buildStep: compile -ifeq ($(TYPE_IMAGE), DEBUG_RUN) -${OBJECTDIR}/src/initialisation.p1: src/initialisation.c nbproject/Makefile-${CND_CONF}.mk - @${MKDIR} "${OBJECTDIR}/src" - @${RM} ${OBJECTDIR}/src/initialisation.p1.d - @${RM} ${OBJECTDIR}/src/initialisation.p1 - ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/src/initialisation.p1 src/initialisation.c - @-${MV} ${OBJECTDIR}/src/initialisation.d ${OBJECTDIR}/src/initialisation.p1.d - @${FIXDEPS} ${OBJECTDIR}/src/initialisation.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ - -${OBJECTDIR}/src/main.p1: src/main.c nbproject/Makefile-${CND_CONF}.mk - @${MKDIR} "${OBJECTDIR}/src" - @${RM} ${OBJECTDIR}/src/main.p1.d - @${RM} ${OBJECTDIR}/src/main.p1 - ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/src/main.p1 src/main.c - @-${MV} ${OBJECTDIR}/src/main.d ${OBJECTDIR}/src/main.p1.d - @${FIXDEPS} ${OBJECTDIR}/src/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ - -${OBJECTDIR}/src/HCMS2913.p1: src/HCMS2913.c nbproject/Makefile-${CND_CONF}.mk - @${MKDIR} "${OBJECTDIR}/src" - @${RM} ${OBJECTDIR}/src/HCMS2913.p1.d - @${RM} ${OBJECTDIR}/src/HCMS2913.p1 - ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/src/HCMS2913.p1 src/HCMS2913.c - @-${MV} ${OBJECTDIR}/src/HCMS2913.d ${OBJECTDIR}/src/HCMS2913.p1.d - @${FIXDEPS} ${OBJECTDIR}/src/HCMS2913.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ - -else -${OBJECTDIR}/src/initialisation.p1: src/initialisation.c nbproject/Makefile-${CND_CONF}.mk - @${MKDIR} "${OBJECTDIR}/src" - @${RM} ${OBJECTDIR}/src/initialisation.p1.d - @${RM} ${OBJECTDIR}/src/initialisation.p1 - ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/src/initialisation.p1 src/initialisation.c - @-${MV} ${OBJECTDIR}/src/initialisation.d ${OBJECTDIR}/src/initialisation.p1.d - @${FIXDEPS} ${OBJECTDIR}/src/initialisation.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ - -${OBJECTDIR}/src/main.p1: src/main.c nbproject/Makefile-${CND_CONF}.mk - @${MKDIR} "${OBJECTDIR}/src" - @${RM} ${OBJECTDIR}/src/main.p1.d - @${RM} ${OBJECTDIR}/src/main.p1 - ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/src/main.p1 src/main.c - @-${MV} ${OBJECTDIR}/src/main.d ${OBJECTDIR}/src/main.p1.d - @${FIXDEPS} ${OBJECTDIR}/src/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ - -${OBJECTDIR}/src/HCMS2913.p1: src/HCMS2913.c nbproject/Makefile-${CND_CONF}.mk - @${MKDIR} "${OBJECTDIR}/src" - @${RM} ${OBJECTDIR}/src/HCMS2913.p1.d - @${RM} ${OBJECTDIR}/src/HCMS2913.p1 - ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/src/HCMS2913.p1 src/HCMS2913.c - @-${MV} ${OBJECTDIR}/src/HCMS2913.d ${OBJECTDIR}/src/HCMS2913.p1.d - @${FIXDEPS} ${OBJECTDIR}/src/HCMS2913.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ - -endif - -# ------------------------------------------------------------------------------------ -# Rules for buildStep: assemble -ifeq ($(TYPE_IMAGE), DEBUG_RUN) -else -endif - -# ------------------------------------------------------------------------------------ -# Rules for buildStep: assembleWithPreprocess -ifeq ($(TYPE_IMAGE), DEBUG_RUN) -else -endif - -# ------------------------------------------------------------------------------------ -# Rules for buildStep: link -ifeq ($(TYPE_IMAGE), DEBUG_RUN) -${DISTDIR}/picamp.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../picamp-rotary.X/dist/default/debug/picamp-rotary.X.a ../picamp-potentiometer.X/dist/default/debug/picamp-potentiometer.X.a - @${MKDIR} ${DISTDIR} - ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/picamp.X.${IMAGE_TYPE}.map -D__DEBUG=1 -mdebugger=none -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -mrom=default,-1f00-1ffe -mram=default,-0-0,-70-70,-80-80,-f0-f0,-100-100,-170-170,-180-180,-1e5-1f0 $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/picamp.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ../picamp-rotary.X/dist/default/debug/picamp-rotary.X.a ../picamp-potentiometer.X/dist/default/debug/picamp-potentiometer.X.a - @${RM} ${DISTDIR}/picamp.X.${IMAGE_TYPE}.hex - - -else -${DISTDIR}/picamp.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../picamp-rotary.X/dist/default/production/picamp-rotary.X.a ../picamp-potentiometer.X/dist/default/production/picamp-potentiometer.X.a - @${MKDIR} ${DISTDIR} - ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/picamp.X.${IMAGE_TYPE}.map -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/picamp.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ../picamp-rotary.X/dist/default/production/picamp-rotary.X.a ../picamp-potentiometer.X/dist/default/production/picamp-potentiometer.X.a - - -endif - - -# Subprojects -.build-subprojects: - cd ../picamp-rotary.X && ${MAKE} -f Makefile CONF=default - cd ../picamp-potentiometer.X && ${MAKE} -f Makefile CONF=default - - -# Subprojects -.clean-subprojects: - cd ../picamp-rotary.X && rm -rf "build/default" "dist/default" - cd ../picamp-potentiometer.X && rm -rf "build/default" "dist/default" - -# Clean Targets -.clean-conf: ${CLEAN_SUBPROJECTS} - ${RM} -r ${OBJECTDIR} - ${RM} -r ${DISTDIR} - -# Enable dependency checking -.dep.inc: .depcheck-impl - -DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) -ifneq (${DEPFILES},) -include ${DEPFILES} -endif diff --git a/picamp.X/scripts/Build-Samples.cmd b/picamp.X/scripts/Build-Samples.cmd deleted file mode 100644 index f5c6e74..0000000 --- a/picamp.X/scripts/Build-Samples.cmd +++ /dev/null @@ -1,4 +0,0 @@ - -mkdir output - -%XC_DIR%\xc8.exe --chip=%1 --outdir=".\output" ".\samples\LedBlink.c" \ No newline at end of file diff --git a/picamp.X/scripts/Build.cmd b/picamp.X/scripts/Build.cmd deleted file mode 100644 index eaea6c3..0000000 --- a/picamp.X/scripts/Build.cmd +++ /dev/null @@ -1,4 +0,0 @@ - -mkdir output - -%XC_DIR%\xc8.exe --chip=%1 --outdir=".\output" ".\main.c" \ No newline at end of file diff --git a/picamp.X/scripts/clean.cmd b/picamp.X/scripts/clean.cmd deleted file mode 100644 index 4eca8d9..0000000 --- a/picamp.X/scripts/clean.cmd +++ /dev/null @@ -1,2 +0,0 @@ - -DEL /F /Q output \ No newline at end of file diff --git a/picamp.X/src/HCMS2913.c b/picamp.X/src/HCMS2913.c deleted file mode 100644 index 9b409bf..0000000 --- a/picamp.X/src/HCMS2913.c +++ /dev/null @@ -1,152 +0,0 @@ -#include "../include/HCMS2913.h" -#include "../include/ascii.h" -#include "../include/config.h" - -void HCMS_spi_init(sspmode mst_slv_oscdiv, rxsmpmoment sdi_rx_smp, clkpol clock_pol, txclkedge sdo_tx_edge) { - //Todo Burhan: remove this dirty fix - TRISC = 0; - TRISD = 0; - PORTC = 0; - PORTD = 0; - // 1. Set `SSPM' datafield (SPI master / slave mode and prescaler - // selection) - SSPM = mst_slv_oscdiv; - // 2. Set SDO_DDIR for SDO to behave as an output - SDO_DDIR = 0; - SDI_DDIR = 0; - // 3. If a slave mode was selected: - // 3a. The SMP bit MUST remain clear (see datasheet) - // 3b. Set SCK_DDIR for SCK to behave like an input - // 3c. The data line `idle state' (CKP bit) must match the - // master's clock idle state. To achieve this, set the - // CKP bit to whatever value can be read on the SCK_PIN. - // 3d. Set up the recieve interrupt (PIE1.SSPIE). Don't - // forget PEIE and GIE (interrupt masking hierarchy). - if (mst_slv_oscdiv > 3) { - SMP = 0; - SCK_DDIR = 1; - CKP = SCK_PIN; - }// 4. Else (if a master mode was selected): - // 4a. The SMP bit needs to be set according to argument - // `sdi_rx_smp' - // 4b. Set SCK_DDIR for SCK to behave like an output - // 4c. The data line `idle state' (CKP bit) needs to be set - // according to argument `clock_pol' - else { - SMP = sdi_rx_smp; - SCK_DDIR = 0; - CKP = clock_pol; - } - //SSPIE = 1; - // 5. Set the CKE bit according to the `sdo_tx_edge' and `clock_pol' - // parameters (i.e. if `sdo_tx_edge' and `clock_pol' select - // mode 0 (CKE 1, CKP 0), then the CKE bit must be set, etc. - - // (handle all SPI modes ... !) - CKE = sdo_tx_edge; - if (clock_pol == 1 || SCK_PIN == 1) { - CKE ^= 1; - } - // 6. Enable the SPI module (by setting SSPEN bit). - SSPEN = 1; -} - -void delayNanoSeconds(unsigned long nanoSeconds); - -#define BUFFER SSPBUF - -void spi_transmit(char c) { - // FILL. THAT. BUFFER. - BUFFER = c; -} - -void setpin(volatile unsigned char *port, unsigned char pin, int value) { - if (value == 0) - *port &= ~(1 << pin); - else - *port |= 1 << pin; -} - -void HCMS_init(volatile unsigned char *port, uint8_t _RESET, uint8_t _CENABLE, uint8_t _RSELECT) { - setpin(port, _RESET, 0); - delayNanoSeconds(200); - setpin(port, _RESET, 1); - - setpin(port, _RSELECT, 0); - setpin(port, _CENABLE, 0); - for (int i = 0; i < 40; i++) { - spi_transmit(0b00000000); - delayNanoSeconds(200); - } - setpin(port, _CENABLE, 1); - - setpin(port, _RSELECT, 1); - setpin(port, _CENABLE, 0); - spi_transmit(0b01111111); - delayNanoSeconds(200); - setpin(port, _CENABLE, 1); - setpin(port, _CENABLE, 0); - spi_transmit(0b10000000); - delayNanoSeconds(200); - setpin(port, _CENABLE, 1); - - setpin(port, _CENABLE, 0); - spi_transmit(0b01111111); - delayNanoSeconds(200); - setpin(port, _CENABLE, 1); - setpin(port, _CENABLE, 0); - spi_transmit(0b10000000); - delayNanoSeconds(200); - setpin(port, _CENABLE, 1); - - setpin(port, _RSELECT, 0); - -} - -void load_buffer(int character, int position, char *bufferSelected) { - for (int i = 0; i < 5; i++) { - bufferSelected[position * 5 + i] = ascii[character][i]; - } -} - -int TableLookup(char lookup) { - for (int i = 0; i < 128; ++i) { - if (ascii[i][5] == lookup) { - return i; - } - } - return 127; // Character not found in the ASCII table -} - -void HCMS_load_word(const char *_string, char *bufferSelected, volatile unsigned char *port, uint8_t _CENABLE) { - short length = 0; - setpin(port, _CENABLE, 0); - - while (_string[length] != '\0' && length < 8) { - load_buffer(TableLookup(_string[length]), length, bufferSelected); - length++; - } - - while (length < 8) { - load_buffer(TableLookup(' '), length, bufferSelected); - length++; - } - - for (int i = 0; i < 40; i++) { - spi_transmit(bufferSelected[i]); - } - - delayNanoSeconds(200); - setpin(port, _CENABLE, 1); -} - -void delayNanoSeconds(unsigned long nanoSeconds) { - const unsigned long cyclesPerNanoSecond = 10; - - unsigned long cyclesToDelay = nanoSeconds * cyclesPerNanoSecond; - - TMR1 = 0; - - while (cyclesToDelay > 0) { - cyclesToDelay--; - } -} diff --git a/picamp.X/src/initialisation.c b/picamp.X/src/initialisation.c deleted file mode 100644 index 19846e1..0000000 --- a/picamp.X/src/initialisation.c +++ /dev/null @@ -1,134 +0,0 @@ -// PIC hardware mapping, global config -#include "../include/config.h" - -// Configuration bit structs and enums -#include "../include/initialisation.h" - -// #[initialisation:gpio] -/** @brief Initialize GPIO pins on the PIC - * - * This function simplifies the configuration of GPIO pins on the - * MicroChip PIC Microcontroller. - * The code has been tested on the following microcontrollers: - * > PIC16F887A - * - * @param config `PinConfig` struct containing the configuration for the pins - * - * @return void - */ -//todo (wessel): Find a fix for `bitfield` addressess -void init_gpio(PinConfig config[], int size) { - // Calculate the size of `config` - // uint8_t size = sizeof(config) / sizeof(config[0]); - - // Loop through each pin, set their values - for (int i = 0; i < size; i++) { - // Set port direction and analog/digital select registers - *config[i].tris = config[i].direction; - *config[i].ansel = config[i].mode; - - if (config[i].direction == OUTPUT) { - // Initialize output pins to low - *config[i].lat = OFF; - } - } -} - -/** @brief Initialize the oscillator on the PIC - * - * This function simplifies the configuration of the oscillator on the - * MicroChip PIC Microcontroller. - * The code has been tested on the following microcontrollers: - * > PIC16F887A - * - * @param config `OscillatorConfig` struct containing the configuration for the oscillator - * - * @return void -*/ -void init_osc(OscillatorConfig config) { - // System Clock Select (SCS) - OSCCONbits.SCS = config.SCS; - // Internal Resistor-Capacitor Frequency select (IRCF) - OSCCONbits.IRCF = config.IRCF; - // OSC startup time - OSCCONbits.OSTS = config.OSTS; - - // Halt boot until clock is stable - if (OSCCONbits.IRCF == KHZ032) { - while (OSCCONbits.LTS != LTS_STABLE); - } else { - while (OSCCONbits.HTS != HTS_STABLE); - } -} - -/** @brief Initialize interrupts on the PIC - * - * This function simplifies the configuration of interrupts on the - * MicroChip PIC Microcontroller. - * The code has been tested on the following microcontrollers: - * > PIC16F887A - * - * @param config `InterruptConfig` struct containing the configuration for the interrupts - * - * @return void - */ -void init_int(InterruptConfig config) { - // Global interrupt enable - INTCONbits.GIE = config.GIE; - // External interrupt enable - INTCONbits.INTE = config.EINT; - // Peripheral interrupt enable - // todo(wessel): Add PIR1, PIR2 registers - INTCONbits.PEIE = config.PEIE; - // Timer0 Overflow Interrupt enable - INTCONbits.T0IE = config.T0IE; - - // PORTB Change Interrupt Enable - INTCONbits.RBIE = config.RBIE; - - // todo(wessel): make modulair - IOCBbits.IOCB4 = 1; - IOCBbits.IOCB5 = 1; - - // Set interrupt edge - OPTION_REGbits.INTEDG = config.INTEDG; - - // Clear interrupt flag - if (INTCONbits.INTE == EINT_ENABLED) { - INTCONbits.INTF = INT_AWAITING; - } - if (INTCONbits.RBIE == RBINT_ENABLED) { - INTCONbits.RBIF = INT_AWAITING; - } - if (INTCONbits.T0IE == T0INT_ENABLED) { - INTCONbits.T0IF = INT_AWAITING; - } -} - -/** @brief Initialize the ADC on the PIC - * - * This function simplifies the configuration of the analog to - * digital function on the MicroChip PIC Microcontroller. - * The code has been tested on the following microcontrollers: - * > PIC16F887A - * - * @param config `ADCConfig` struct containing the configuration for the ADC - * - * @return void -*/ -// void init_adc(ADCConfig config) { -// // ADC enable -// ADCON0bits.ADON = config.ADON; -// // ADC cycle enable -// ADCON0bits.GO_nDONE = config.GO_nDONE; -// // Analog channel select -// ADCON0bits.CHS = config.CHS; -// // ADC clock select -// ADCON0bits.ADCS = config.ADCS; - -// // ADC result alignment -// ADCON1bits.ADFM = config.ADFM; -// // ADC voltage reference configuration -// ADCON1bits.VCFG1 = config.VCFG1; -// ADCON1bits.VCFG0 = config.VCFG0; -// } \ No newline at end of file diff --git a/picamp.X/src/main.c b/picamp.X/src/main.c deleted file mode 100644 index 22f1295..0000000 --- a/picamp.X/src/main.c +++ /dev/null @@ -1,101 +0,0 @@ -/* main.c */ -// Include all global config variables -#include "../include/config.h" - -// Include library header files -#include "../include/initialisation.h" -#include "../include/rotary_encoder.h" -#include "../include/potentiometer.h" -#include "../include/HCMS2913.h" - -// Rotary encoder position -char count = 0; - -// Function declarations -void pic_init(void); -void pic_loop(void); - -void main(void) { - // Do all initialisation here - pic_init(); - // Start indefinite program loop - pic_loop(); -} - -void pic_loop(void) { - int stepArray[LED_AMOUNT] = {0}; - populate_step_array(stepArray, LED_AMOUNT, POT_LIMIT); - short calcVolume; - - while (1) { - HCMS_load_word(selLoadString, selectBuffer, &PORTD, CENABLE_PINNUM); - HCMS_load_word(volLoadString, volumeBuffer, &PORTC, CENABLE_PINNUM); - // if (count == 0) { - // Parse result from potentiometer - int result = read_pot(); - - // Loop through all `stepArray`, check if the output of the potmeter - // (on `ADRES`) falls inbetween the steps - `DEADZONE`, if so execute - // An OR/AND bitshift operation in order to turn on the corresponding - // LED on `PORTA`. - // for (int i = 0; i < LED_AMOUNT; i++) { - // if (result > (stepArray[i] - DEADZONE)) { - // PORTA = (unsigned char) (PORTA & ~(1 << i)); - // } else if (result <= (stepArray[i] - DEADZONE)) { - // PORTA = (unsigned char) (PORTA | (1 << i)); - // } - // } - // } - calcVolume = result / POT_STEP_AMOUNT; - - if (calcVolume > 100) { - calcVolume = 100; - } - if (calcVolume < 0) { - calcVolume = 0; - } - - selLoadString[6] = '0' + count / 10; - selLoadString[7] = '0' + (count % 10); - - volLoadString[5] = '0' + (char) (calcVolume / 100); - volLoadString[6] = '0' + (char) (calcVolume / 10 > 9 ? 0 : calcVolume / 10); - volLoadString[7] = '0' + (char) (calcVolume % 10); - } -} - -void pic_init(void) { - OscillatorConfig osc_config = {INTERNAL_CLK, MHZ008, INTERNAL_FOSC}; - init_osc(osc_config); - - PinConfig pin_config[] = { - { &TRISA, &PORTA, &ANSEL, OUTPUT, DIGITAL} - }; - init_gpio(pin_config, 1); - - // Moved to rotary_encoder.c - // InterruptConfig int_config = { GIE_ENABLED, EINT_ENABLED, PEIE_ENABLED, - // T0INT_ENABLED, RBINT_ENABLED, FALLING_EDGE }; - // init_int(int_config); - - init_rotary(IOCRB4, IOCRB5, TRISBbits.TRISB4, TRISBbits.TRISB5); - init_pot(ADC_AN07, TRISEbits.TRISE2); - HCMS_spi_init(MST_OSC_DIV_04, SMP1_SDI_END, CKP0_CPOL0_IDLE_LOW, CKE1_CPHA0_TRSMIT_ACT2IDL); - HCMS_init(&PORTC, RESET_PINNUM, CENABLE_PINNUM, RSELECT_PINNUM); - HCMS_init(&PORTD, RESET_PINNUM, CENABLE_PINNUM, RSELECT_PINNUM); -} - -// #[routine:interrupt_service] - -void __interrupt() isr(void) { - if (INTCONbits.RBIF == INT_OCCURED) { - // Parse rotary changes into `count`, shift it into `PORTA` - parse_rotary(REA, REB, &count, LED_AMOUNT, 0); - - //PORTA = (unsigned char) (~(1 << count)); - - // Clear the Port B change interrupt flag - INTCONbits.RBIF = INT_AWAITING; - INTCONbits.INTF = INT_AWAITING; - } -} diff --git a/src/1829demonstration.X/.gitignore b/src/1829demonstration.X/.gitignore new file mode 100644 index 0000000..39fe081 --- /dev/null +++ b/src/1829demonstration.X/.gitignore @@ -0,0 +1,6 @@ +!.gitkeep + +build/* +debug/* +dist/* +queuelogs/* diff --git a/picamp-potentiometer.X/Makefile b/src/1829demonstration.X/Makefile similarity index 100% rename from picamp-potentiometer.X/Makefile rename to src/1829demonstration.X/Makefile diff --git a/src/1829demonstration.X/config.h b/src/1829demonstration.X/config.h new file mode 100644 index 0000000..bfe8b38 --- /dev/null +++ b/src/1829demonstration.X/config.h @@ -0,0 +1,27 @@ +#ifndef CONFIG_H +#define CONFIG_H + +// CONFIG WORD 1 @ flash program memory location 0x8007 +// For acceptable values use both datasheet and this file: +// /opt/microchip/xc8/v/docs/pic_chipinfo.html +#pragma config FOSC = INTOSC +#pragma config WDTE = OFF +#pragma config PWRTE = OFF +#pragma config MCLRE = OFF +#pragma config CP = OFF +#pragma config CPD = OFF +#pragma config BOREN = ON +#pragma config CLKOUTEN = OFF +#pragma config IESO = OFF +#pragma config FCMEN = OFF +#pragma config WRT = OFF +#pragma config PLLEN = OFF +#pragma config STVREN = OFF +#pragma config BORV = LO +#pragma config LVP = OFF + +#define LED_AMOUNT 4 +#define POT_LIMIT 1023 +#define DEADZONE 20 + +#endif \ No newline at end of file diff --git a/src/1829demonstration.X/main.c b/src/1829demonstration.X/main.c new file mode 100644 index 0000000..ae363c9 --- /dev/null +++ b/src/1829demonstration.X/main.c @@ -0,0 +1,76 @@ +#include "config.h" + +#include +#include "../global/picamp-potentiometer.h" +#include "../global/picamp-rotary.h" + +// Function declarations +void pic_init(void); +void init_osc(void); +void init_gpio(void); +void pic_loop(void); + +int count = 0; + +void main(void) { + // Do all initialisation here + pic_init(); + // Start the main program loop + pic_loop(); +} + +void pic_loop(void) { + // Initalize and populate the `PotSteps` array, divides `POT_LIMIT` + // into increments based on `LED_AMOUNT`. `PotSteps[0]` is different + // than the rest, therefore it is defined first. + int PotSteps[LED_AMOUNT]; + populate_step_array(PotSteps, LED_AMOUNT, POT_LIMIT); + + while (1) { + // Do not display the LEDs if input selector is > 0 + if (count != 0) continue; + + int result = read_potentiometer(); + // Loop through all `PotSteps`, check if the output of the potmeter + // (on `ADRES`) falls inbetween the steps - `DEADZONE`, if so execute + // An OR/AND bitshift operation in order to turn on the corresponding + // LED on `LATC`. + for (int i = 0; i < LED_AMOUNT; i++) { + if (result > (PotSteps[i] - DEADZONE)) { + LATC = (unsigned char)(LATC & ~(1 << i)); + } else if (result <= (PotSteps[i] - DEADZONE)) { + LATC = (unsigned char)(LATC | (1 << i)); + } + } + } +} + +void pic_init(void) { + init_osc(); + init_gpio(); + init_pot(PIC16F1829, P1829_AN03); + init_rot(PIC16F1829); +} + +void init_gpio(void) { + // LED => output + TRISC = 0; + LATC = 0; +} + +void init_osc(void) { + // System Clock Select (SCS) + OSCCONbits.SCS = 0b00; // Clk determined by FOSC in Conf-1 + // Internal Resistor-Capacitor Frequency select (IRCF) + OSCCONbits.IRCF = 0b0111; // 500 kHz clock speed + // Software Phase-Locked Loop ENable (SPLLEN) + OSCCONbits.SPLLEN = 0b0; // 4 x Phase-Locked Loop disabled +} + +void __interrupt() isr() { + if (INTCONbits.IOCIF) { + count = read_rotary(); + PORTC = (unsigned char)(~(1 << count)); + INTCONbits.IOCIF = 0; + } +} \ No newline at end of file diff --git a/src/1829demonstration.X/nbproject/Makefile-default.mk b/src/1829demonstration.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..128344e --- /dev/null +++ b/src/1829demonstration.X/nbproject/Makefile-default.mk @@ -0,0 +1,160 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=gnumkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=elf +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=hex +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=main.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/main.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/main.p1 + +# Source Files +SOURCEFILES=main.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F1829 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=pickit5 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: link +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../new-potlib.X/dist/default/debug/new-potlib.X.a ../new-rotlib.X/dist/default/debug/new-rotlib.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.map -D__DEBUG=1 -mdebugger=pickit5 -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ..\new-potlib.X\dist\default\debug\new-potlib.X.a ..\new-rotlib.X\dist\default\debug\new-rotlib.X.a + @${RM} ${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.hex + +else +${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../new-potlib.X/dist/default/production/new-potlib.X.a ../new-rotlib.X/dist/default/production/new-rotlib.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.map -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/1829demonstration.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ..\new-potlib.X\dist\default\production\new-potlib.X.a ..\new-rotlib.X\dist\default\production\new-rotlib.X.a + +endif + + +# Subprojects +.build-subprojects: + cd ../new-potlib.X && ${MAKE} -f Makefile CONF=default + cd ../new-rotlib.X && ${MAKE} -f Makefile CONF=default + + +# Subprojects +.clean-subprojects: + cd ../new-potlib.X && rm -rf "build/default" "dist/default" + cd ../new-rotlib.X && rm -rf "build/default" "dist/default" + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/1829demonstration.X/nbproject/Makefile-genesis.properties b/src/1829demonstration.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..3fc5d74 --- /dev/null +++ b/src/1829demonstration.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Tue Mar 26 21:33:58 CET 2024 +default.languagetoolchain.version=2.45 +default.Pack.dfplocation=C\:\\Program Files\\Microchip\\MPLABX\\v6.15\\packs\\Microchip\\PIC12-16F1xxx_DFP\\1.6.241 +default.com-microchip-mplab-mdbcore-PK5Tool-PK5ToolImpl.md5=723771b957e0f1e0ec1761a42d8bb5e8 +conf.ids=default +default.languagetoolchain.dir=C\:\\Program Files\\Microchip\\xc8\\v2.45\\bin +host.id=2cdp-lqgb-i2 +configurations-xml=e5612ad2ba7e2c8d55fb15abc05950be +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=e62346c0c0ecee2637e613b49cb7b7fa +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=486b02ed36e5bdffb1f797e38fa058e5 +proj.dir=C\:\\Users\\wesse\\OneDrive - Hogeschool Inholland\\herkansing es\\1829demonstration.X +host.platform=windows diff --git a/src/1829demonstration.X/nbproject/Makefile-impl.mk b/src/1829demonstration.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..0daa866 --- /dev/null +++ b/src/1829demonstration.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=1829demonstration.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/src/1829demonstration.X/nbproject/Makefile-local-default.mk b/src/1829demonstration.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..db161d6 --- /dev/null +++ b/src/1829demonstration.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,37 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +SHELL=cmd.exe +PATH_TO_IDE_BIN=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="C:\Program Files\Microchip\MPLABX\v6.15\sys\java\zulu8.64.0.19-ca-fx-jre8.0.345-win_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +MP_LD="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +MP_AR="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-ar.exe" +DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +MP_LD_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +MP_AR_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +DFP_DIR=C:/Program Files/Microchip/MPLABX/v6.15/packs/Microchip/PIC12-16F1xxx_DFP/1.6.241 diff --git a/src/1829demonstration.X/nbproject/Makefile-variables.mk b/src/1829demonstration.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..e0f2c11 --- /dev/null +++ b/src/1829demonstration.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=1829demonstration.X.production.hex +CND_ARTIFACT_PATH_default=dist/default/production/1829demonstration.X.production.hex diff --git a/src/1829demonstration.X/nbproject/configurations.xml b/src/1829demonstration.X/nbproject/configurations.xml new file mode 100644 index 0000000..77aa71e --- /dev/null +++ b/src/1829demonstration.X/nbproject/configurations.xml @@ -0,0 +1,336 @@ + + + + + config.h + ../global/picamp-potentiometer.h + ../global/picamp-rotary.h + + + + + main.c + + + Makefile + + + + ../../../../../Downloads/picamp-potentiometer.X + ../new-potlib.X + ../global + + Makefile + + + + localhost + PIC16F1829 + + + PK5Tool + XC8 + 2.45 + 3 + + + + + + + + + + + + + + + + + + + + + + + false + false + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/picamp.X/nbproject/private/SuppressibleMessageMemo.properties b/src/1829demonstration.X/nbproject/private/SuppressibleMessageMemo.properties similarity index 58% rename from picamp.X/nbproject/private/SuppressibleMessageMemo.properties rename to src/1829demonstration.X/nbproject/private/SuppressibleMessageMemo.properties index 355dead..487d39a 100644 --- a/picamp.X/nbproject/private/SuppressibleMessageMemo.properties +++ b/src/1829demonstration.X/nbproject/private/SuppressibleMessageMemo.properties @@ -1,3 +1,3 @@ # -#Wed Mar 06 16:15:12 CET 2024 +#Mon Mar 18 16:41:41 CET 2024 PICkit\ 4/CHECK_4_HIGH_VOLTAGE_VPP=true diff --git a/src/1829demonstration.X/nbproject/private/configurations.xml b/src/1829demonstration.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..1ddea8d --- /dev/null +++ b/src/1829demonstration.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + :=MPLABComm-USB-Microchip:=<vid>04D8:=<pid>9036:=<rev>0100:=<man>Microchip Technology Incorporated:=<prod>MPLAB PICkit 5:=<sn>020026702RYN005435:=<drv>x:=<xpt>b:=end + C:\Program Files\Microchip\xc8\v2.45\bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/picamp.X/nbproject/private/private.xml b/src/1829demonstration.X/nbproject/private/private.xml similarity index 73% rename from picamp.X/nbproject/private/private.xml rename to src/1829demonstration.X/nbproject/private/private.xml index 927cf0e..6807a2b 100644 --- a/picamp.X/nbproject/private/private.xml +++ b/src/1829demonstration.X/nbproject/private/private.xml @@ -2,8 +2,6 @@ - - file:/home/burhan/Desktop/PICAMP-main/picamp.X/src/main.c - + diff --git a/src/1829demonstration.X/nbproject/project.xml b/src/1829demonstration.X/nbproject/project.xml new file mode 100644 index 0000000..f96b0ea --- /dev/null +++ b/src/1829demonstration.X/nbproject/project.xml @@ -0,0 +1,30 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + 1829demonstration + 39bc1cd3-d891-4527-a614-b6edf723a84a + 0 + ISO-8859-1 + + ../new-potlib.X + ../new-rotlib.X + + + ../../../../../Downloads/picamp-potentiometer.X + ../new-potlib.X + ../global + + + + default + 2 + + + + false + + + + diff --git a/picamp-rotary.X/Makefile b/src/887demonstration.X/Makefile similarity index 100% rename from picamp-rotary.X/Makefile rename to src/887demonstration.X/Makefile diff --git a/src/887demonstration.X/config.h b/src/887demonstration.X/config.h new file mode 100644 index 0000000..8724f32 --- /dev/null +++ b/src/887demonstration.X/config.h @@ -0,0 +1,24 @@ +#ifndef CONFIG_H +#define CONFIG_H + +// PIC16F887 Configuration Bit Settings +// #pragma config statements should precede project file includes. +#pragma config FOSC = INTRC_NOCLKOUT // Oscillator Selection bits (INTOSCIO oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN) +#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled and can be enabled by SWDTEN bit of the WDTCON register) +#pragma config PWRTE = ON // Power-up Timer Enable bit (PWRT disabled) +#pragma config MCLRE = OFF // RE3/MCLR pin function select bit (RE3/MCLR pin function is digital input, MCLR internally tied to VDD) +#pragma config CP = OFF // Code Protection bit (Program memory code protection is disabled) +#pragma config CPD = OFF // Data Code Protection bit (Data memory code protection is disabled) +#pragma config BOREN = ON // Brown Out Reset Selection bits (BOR enabled) +#pragma config IESO = OFF // Internal External Switchover bit (Internal/External Switchover mode is disabled) +#pragma config FCMEN = OFF // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is disabled) +#pragma config LVP = OFF // Low Voltage Programming Enable bit (RB3 pin has digital I/O, HV on MCLR must be used for programming) +#pragma config BOR4V = BOR21V // Brown-out Reset Selection bit (Brown-out Reset set to 4.0V) +#pragma config WRT = OFF // Flash Program Memory Self Write Enable bits (Write protection off) + +#define LED_AMOUNT 4 + +#define POT_LIMIT 1023 +#define DEADZONE 2 + +#endif diff --git a/src/887demonstration.X/main.c b/src/887demonstration.X/main.c new file mode 100644 index 0000000..2af629f --- /dev/null +++ b/src/887demonstration.X/main.c @@ -0,0 +1,87 @@ +#include "./config.h" + +#include +#include "../global/picamp-potentiometer.h" +#include "../global/picamp-rotary.h" + +// Function declarations +void pic_init(void); +void init_gpio(void); +void init_osc(void); +void pic_loop(void); + +int count = 0; + +void main(void) { + // Do all initialisation here + pic_init(); + // Start indefinite program loop + pic_loop(); +} + +void pic_loop(void) { + // Initialize potentiometer step array + int stepArray[LED_AMOUNT] = { 0 }; + populate_step_array(stepArray, LED_AMOUNT, POT_LIMIT); + + while (1) { + // Do not display the LEDs if input selector is > 0 + if (count != 0) continue; + // Parse result from potentiometer + int result = read_potentiometer(); + // Read the data from the potmeter pin (`E2`) registers, and combine + // them into a single integer + // Loop through all `stepArray`, check if the output of the potmeter + // (on `ADRES`) falls inbetween the steps - `DEADZONE`, if so execute + // An OR/AND bitshift operation in order to turn on the corresponding + // LED on `PORTA`. + for (int i = 0; i < LED_AMOUNT; i++) { + if (result > (stepArray[i] - DEADZONE)) { + PORTA = (unsigned char)(PORTA & ~(1 << i)); + } else if (result <= (stepArray[i] - DEADZONE)) { + PORTA = (unsigned char)(PORTA | (1 << i)); + } + } + // int step = adc_to_step(*stepArray, LED_AMOUNT, DEADZONE); + // PORTA = (unsigned char)(PORTA | (1 << step)); + } +} + +void pic_init(void) { + init_osc(); + init_pot(PIC16F887A, P887A_AN07); + init_rot(PIC16F887A); + init_gpio(); +} + +// #[initialisation:gpio] +void init_gpio(void) { + // LED => output, digital (transistors) + TRISA = 0x00; + PORTA = 0xFF; + ANSEL = 0; +} + +// #[initialisation:osc] +void init_osc(void) { + // System Clock Select (SCS) + OSCCONbits.SCS = 0b1; // Internal Clock selected + // Internal Resistor-Capacitor Frequency select (IRCF) + OSCCONbits.IRCF = 0b011; // 500 kHz clock speed + OSCCONbits.OSTS = 0b1; // OSC startup time + + // Halt boot until clock is stable + while (OSCCONbits.HTS != 0b1); +} + +// #[routine:interrupt_service] +void __interrupt() isr(void) { + if (INTCONbits.RBIF == 1) { + // Parse rotary changes into `count`, shift it into `PORTA` + count = read_rotary(); + PORTA = (unsigned char)(~(1 << count)); + + // Clear the Port B change interrupt flag + INTCONbits.RBIF = 0; + } +} diff --git a/src/887demonstration.X/nbproject/Makefile-default.mk b/src/887demonstration.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..ace7d6d --- /dev/null +++ b/src/887demonstration.X/nbproject/Makefile-default.mk @@ -0,0 +1,160 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=gnumkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=elf +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=hex +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=main.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/main.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/main.p1 + +# Source Files +SOURCEFILES=main.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F887 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=pickit5 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: link +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../new-potlib.X/dist/default/debug/new-potlib.X.a ../new-rotlib.X/dist/default/debug/new-rotlib.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.map -D__DEBUG=1 -mdebugger=pickit5 -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -mrom=default,-1f00-1ffe -mram=default,-0-0,-70-70,-80-80,-f0-f0,-100-100,-170-170,-180-180,-1e5-1f0 $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ..\new-potlib.X\dist\default\debug\new-potlib.X.a ..\new-rotlib.X\dist\default\debug\new-rotlib.X.a + @${RM} ${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.hex + +else +${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../new-potlib.X/dist/default/production/new-potlib.X.a ../new-rotlib.X/dist/default/production/new-rotlib.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.map -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ..\new-potlib.X\dist\default\production\new-potlib.X.a ..\new-rotlib.X\dist\default\production\new-rotlib.X.a + +endif + + +# Subprojects +.build-subprojects: + cd ../new-potlib.X && ${MAKE} -f Makefile CONF=default + cd ../new-rotlib.X && ${MAKE} -f Makefile CONF=default + + +# Subprojects +.clean-subprojects: + cd ../new-potlib.X && rm -rf "build/default" "dist/default" + cd ../new-rotlib.X && rm -rf "build/default" "dist/default" + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/887demonstration.X/nbproject/Makefile-genesis.properties b/src/887demonstration.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..7e17df5 --- /dev/null +++ b/src/887demonstration.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Wed Mar 27 13:48:00 CET 2024 +default.languagetoolchain.version=2.45 +default.Pack.dfplocation=C\:\\Program Files\\Microchip\\MPLABX\\v6.15\\packs\\Microchip\\PIC16Fxxx_DFP\\1.4.149 +default.com-microchip-mplab-mdbcore-PK5Tool-PK5ToolImpl.md5=723771b957e0f1e0ec1761a42d8bb5e8 +conf.ids=default +default.languagetoolchain.dir=C\:\\Program Files\\Microchip\\xc8\\v2.45\\bin +host.id=2cdp-lqgb-i2 +configurations-xml=18e0c414c420d68db98a32f1eb3cfb83 +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=e62346c0c0ecee2637e613b49cb7b7fa +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=486b02ed36e5bdffb1f797e38fa058e5 +proj.dir=C\:\\Users\\wesse\\OneDrive - Hogeschool Inholland\\herkansing es\\887demonstration.X +host.platform=windows diff --git a/src/887demonstration.X/nbproject/Makefile-impl.mk b/src/887demonstration.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..73fd138 --- /dev/null +++ b/src/887demonstration.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=887demonstration.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/src/887demonstration.X/nbproject/Makefile-local-default.mk b/src/887demonstration.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..2ac66a5 --- /dev/null +++ b/src/887demonstration.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,37 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +SHELL=cmd.exe +PATH_TO_IDE_BIN=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="C:\Program Files\Microchip\MPLABX\v6.15\sys\java\zulu8.64.0.19-ca-fx-jre8.0.345-win_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +MP_LD="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +MP_AR="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-ar.exe" +DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +MP_LD_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +MP_AR_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +DFP_DIR=C:/Program Files/Microchip/MPLABX/v6.15/packs/Microchip/PIC16Fxxx_DFP/1.4.149 diff --git a/src/887demonstration.X/nbproject/Makefile-variables.mk b/src/887demonstration.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..984bf92 --- /dev/null +++ b/src/887demonstration.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=887demonstration.X.production.hex +CND_ARTIFACT_PATH_default=dist/default/production/887demonstration.X.production.hex diff --git a/src/887demonstration.X/nbproject/configurations.xml b/src/887demonstration.X/nbproject/configurations.xml new file mode 100644 index 0000000..3be7c26 --- /dev/null +++ b/src/887demonstration.X/nbproject/configurations.xml @@ -0,0 +1,336 @@ + + + + + config.h + ../global/picamp-potentiometer.h + ../global/picamp-rotary.h + + + + + main.c + + + Makefile + + + + ../new-potlib.X + . + ../global + + Makefile + + + + localhost + PIC16F887 + + + PK5Tool + XC8 + 2.45 + 3 + + + + + + + + + + + + + + + + + + + + + + + false + false + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/887demonstration.X/nbproject/private/configurations.xml b/src/887demonstration.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..1ddea8d --- /dev/null +++ b/src/887demonstration.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + :=MPLABComm-USB-Microchip:=<vid>04D8:=<pid>9036:=<rev>0100:=<man>Microchip Technology Incorporated:=<prod>MPLAB PICkit 5:=<sn>020026702RYN005435:=<drv>x:=<xpt>b:=end + C:\Program Files\Microchip\xc8\v2.45\bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/src/887demonstration.X/nbproject/private/private.xml b/src/887demonstration.X/nbproject/private/private.xml new file mode 100644 index 0000000..e082e3b --- /dev/null +++ b/src/887demonstration.X/nbproject/private/private.xml @@ -0,0 +1,10 @@ + + + + + + file:/C:/Users/wesse/OneDrive%20-%20Hogeschool%20Inholland/herkansing%20es/887demonstration.X/main.c + file:/C:/Users/wesse/OneDrive%20-%20Hogeschool%20Inholland/herkansing%20es/887demonstration.X/init.c + + + diff --git a/picamp.X/nbproject/project.xml b/src/887demonstration.X/nbproject/project.xml similarity index 70% rename from picamp.X/nbproject/project.xml rename to src/887demonstration.X/nbproject/project.xml index 953b35e..411a56d 100644 --- a/picamp.X/nbproject/project.xml +++ b/src/887demonstration.X/nbproject/project.xml @@ -3,16 +3,18 @@ com.microchip.mplab.nbide.embedded.makeproject - PICAMP - 6e82f017-1e11-4f32-aea4-27829d036f6c + 887demonstration + 189ceae8-574f-4402-aade-2932cf45a0a7 0 ISO-8859-1 - ../picamp-potentiometer.X - ../picamp-rotary.X + ../new-potlib.X + ../new-rotlib.X + ../new-potlib.X . + ../global diff --git a/src/887demonstration.X/queuelogs/debugtool b/src/887demonstration.X/queuelogs/debugtool new file mode 100644 index 0000000..2759a99 --- /dev/null +++ b/src/887demonstration.X/queuelogs/debugtool @@ -0,0 +1,1038 @@ +1060 1710847534790 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000 +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 0, Type = Cfg, Mask = 00000000 +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = ff, Buffer Length = 0, Type = EEData, Mask = 00000000 +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2000, End = 2003, Buffer Length = 0, Type = UserID, Mask = 00000000 +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847534801 XXXX 1710847534801, Thread 1060: XXXX 1710847534801, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534803 XXXX 1710847534803, Thread 1060: XXXX 1710847534803, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534803 XXXX 1710847534803, Thread 1060: XXXX 1710847534803, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534804 XXXX 1710847534804, Thread 1060: XXXX 1710847534804, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534804 XXXX 1710847534804, Thread 1060: XXXX 1710847534804, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534805 XXXX 1710847534805, Thread 1060: XXXX 1710847534805, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534805 XXXX 1710847534805, Thread 1060: XXXX 1710847534805, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534835 XXXX 1710847534835, Thread 1060: XXXX 1710847534835, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534835 XXXX 1710847534835, Thread 1060: XXXX 1710847534835, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534836 XXXX 1710847534836, Thread 1060: XXXX 1710847534836, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534837 XXXX 1710847534837, Thread 1060: XXXX 1710847534836, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534837 XXXX 1710847534837, Thread 1060: XXXX 1710847534837, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534838 XXXX 1710847534838, Thread 1060: XXXX 1710847534838, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534838 XXXX 1710847534838, Thread 1060: XXXX 1710847534838, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534838 XXXX 1710847534838, Thread 1060: XXXX 1710847534838, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534868 XXXX 1710847534868, Thread 1060: XXXX 1710847534868, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534868 XXXX 1710847534868, Thread 1060: XXXX 1710847534868, Entering Thread 1060: Commands::runScriptBasic, script name = EraseChip, timeOut = 30000 ms +1060 1710847534875 XXXX 1710847534875, Thread 1060: XXXX 1710847534875, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534875 XXXX 1710847534875, Thread 1060: XXXX 1710847534875, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847534877 XXXX 1710847534877, Thread 1060: XXXX 1710847534877, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534877 XXXX 1710847534877, Thread 1060: XXXX 1710847534877, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534878 XXXX 1710847534878, Thread 1060: XXXX 1710847534878, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534878 XXXX 1710847534878, Thread 1060: XXXX 1710847534878, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534879 XXXX 1710847534879, Thread 1060: XXXX 1710847534879, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534879 XXXX 1710847534879, Thread 1060: XXXX 1710847534879, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534880 XXXX 1710847534880, Thread 1060: XXXX 1710847534880, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534880 XXXX 1710847534880, Thread 1060: XXXX 1710847534880, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534910 XXXX 1710847534910, Thread 1060: XXXX 1710847534910, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534910 XXXX 1710847534910, Thread 1060: XXXX 1710847534910, Entering Thread 1060: Commands::runScriptBasic, script name = EraseDataEEmem, timeOut = 30000 ms +1060 1710847534917 XXXX 1710847534917, Thread 1060: XXXX 1710847534917, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534917 XXXX 1710847534917, Thread 1060: XXXX 1710847534917, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847534919 XXXX 1710847534919, Thread 1060: XXXX 1710847534919, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847534919 XXXX 1710847534919, Thread 1060: XXXX 1710847534919, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534921 XXXX 1710847534921, Thread 1060: XXXX 1710847534921, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534921 XXXX 1710847534921, Thread 1060: XXXX 1710847534921, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534922 XXXX 1710847534922, Thread 1060: XXXX 1710847534922, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534922 XXXX 1710847534922, Thread 1060: XXXX 1710847534922, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534922 XXXX 1710847534922, Thread 1060: XXXX 1710847534922, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534922 XXXX 1710847534922, Thread 1060: XXXX 1710847534922, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534952 XXXX 1710847534952, Thread 1060: XXXX 1710847534952, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534953 XXXX 1710847534953, Thread 1060: XXXX 1710847534953, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534953 XXXX 1710847534953, Thread 1060: XXXX 1710847534953, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534953 XXXX 1710847534953, Thread 1060: XXXX 1710847534953, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534954 XXXX 1710847534954, Thread 1060: XXXX 1710847534954, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534954 XXXX 1710847534954, Thread 1060: XXXX 1710847534954, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534955 XXXX 1710847534955, Thread 1060: XXXX 1710847534955, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534955 XXXX 1710847534955, Thread 1060: XXXX 1710847534955, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534985 XXXX 1710847534985, Thread 1060: XXXX 1710847534985, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534985 XXXX 1710847534985, Thread 1060: XXXX 1710847534985, Entering Thread 1060: Commands::runScriptWithDownload, script name = WriteConfigmem +1060 1710847534999 XXXX 1710847534999, Thread 1060: XXXX 1710847534999, Exiting Thread 1060: Commands::runScriptWithDownload(WriteConfigmem) +1060 1710847534999 XXXX 1710847534999, Thread 1060: XXXX 1710847534999, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535001 XXXX 1710847535001, Thread 1060: XXXX 1710847535001, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535001 XXXX 1710847535001, Thread 1060: XXXX 1710847535001, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535002 XXXX 1710847535002, Thread 1060: XXXX 1710847535002, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535002 XXXX 1710847535002, Thread 1060: XXXX 1710847535002, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535003 XXXX 1710847535003, Thread 1060: XXXX 1710847535003, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535003 XXXX 1710847535003, Thread 1060: XXXX 1710847535003, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535004 XXXX 1710847535004, Thread 1060: XXXX 1710847535004, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535004 XXXX 1710847535004, Thread 1060: XXXX 1710847535004, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535033 XXXX 1710847535033, Thread 1060: XXXX 1710847535033, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535033 XXXX 1710847535033, Thread 1060: XXXX 1710847535033, Entering Thread 1060: Commands::runScriptWithUpload, script name = ReadConfigmem +1060 1710847535033 XXXX 1710847535033, Thread 1060: XXXX 1710847535033, Entering Thread 1060: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1060 1710847535036 XXXX 1710847535036, Thread 1060: XXXX 1710847535036, Exiting Thread 1060: ToolCommUsb::readTransfer, cr.status = 0x0 +1060 1710847535036 XXXX 1710847535036, Thread 1060: XXXX 1710847535036, Exiting Thread 1060: Commands::runScriptWithUpload +1060 1710847535036 XXXX 1710847535036, Thread 1060: XXXX 1710847535036, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535038 XXXX 1710847535038, Thread 1060: XXXX 1710847535038, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535038 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1060 1710847535038 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847535038 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847535038 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 65f, Buffer Length = 3264, Type = Pgm, Mask = 00000000 +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847535040 XXXX 1710847535040, Thread 1060: XXXX 1710847535040, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535041 XXXX 1710847535041, Thread 1060: XXXX 1710847535041, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535041 XXXX 1710847535041, Thread 1060: XXXX 1710847535041, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535042 XXXX 1710847535042, Thread 1060: XXXX 1710847535042, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535042 XXXX 1710847535042, Thread 1060: XXXX 1710847535042, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535043 XXXX 1710847535043, Thread 1060: XXXX 1710847535043, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535043 XXXX 1710847535043, Thread 1060: XXXX 1710847535043, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535073 XXXX 1710847535073, Thread 1060: XXXX 1710847535073, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535073 XXXX 1710847535073, Thread 1060: XXXX 1710847535073, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535075 XXXX 1710847535075, Thread 1060: XXXX 1710847535075, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535075 XXXX 1710847535075, Thread 1060: XXXX 1710847535075, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535076 XXXX 1710847535076, Thread 1060: XXXX 1710847535076, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535076 XXXX 1710847535076, Thread 1060: XXXX 1710847535076, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535076 XXXX 1710847535076, Thread 1060: XXXX 1710847535076, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535077 XXXX 1710847535077, Thread 1060: XXXX 1710847535077, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535106 XXXX 1710847535106, Thread 1060: XXXX 1710847535106, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535106 XXXX 1710847535106, Thread 1060: XXXX 1710847535106, Entering Thread 1060: Commands::runScriptWithDownload, script name = WriteProgmem +1060 1710847535795 XXXX 1710847535795, Thread 1060: XXXX 1710847535795, Exiting Thread 1060: Commands::runScriptWithDownload(WriteProgmem) +1060 1710847535795 XXXX 1710847535795, Thread 1060: XXXX 1710847535795, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535796 XXXX 1710847535796, Thread 1060: XXXX 1710847535796, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535796 XXXX 1710847535796, Thread 1060: XXXX 1710847535796, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535797 XXXX 1710847535797, Thread 1060: XXXX 1710847535797, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535797 XXXX 1710847535797, Thread 1060: XXXX 1710847535797, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535798 XXXX 1710847535798, Thread 1060: XXXX 1710847535798, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535798 XXXX 1710847535798, Thread 1060: XXXX 1710847535798, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535799 XXXX 1710847535799, Thread 1060: XXXX 1710847535799, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535799 XXXX 1710847535799, Thread 1060: XXXX 1710847535799, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535829 XXXX 1710847535829, Thread 1060: XXXX 1710847535829, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535829 XXXX 1710847535829, Thread 1060: XXXX 1710847535829, Entering Thread 1060: Commands::runScriptWithUpload, script name = ReadProgmem +1060 1710847535829 XXXX 1710847535829, Thread 1060: XXXX 1710847535829, Entering Thread 1060: ToolCommUsb::readTransfer, sideData is 0x3d bytes long, transferDataLength is 0xcc0 bytes long +1060 1710847535902 XXXX 1710847535902, Thread 1060: XXXX 1710847535902, Exiting Thread 1060: ToolCommUsb::readTransfer, cr.status = 0x0 +1060 1710847535902 XXXX 1710847535902, Thread 1060: XXXX 1710847535902, Exiting Thread 1060: Commands::runScriptWithUpload +1060 1710847535903 XXXX 1710847535903, Thread 1060: XXXX 1710847535903, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535904 XXXX 1710847535904, Thread 1060: XXXX 1710847535904, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535905 XXXX 1710847535905, Thread 1060: XXXX 1710847535905, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535905 XXXX 1710847535905, Thread 1060: XXXX 1710847535905, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535905 XXXX 1710847535905, Thread 1060: XXXX 1710847535905, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535906 XXXX 1710847535906, Thread 1060: XXXX 1710847535906, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535907 XXXX 1710847535907, Thread 1060: XXXX 1710847535907, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535907 XXXX 1710847535907, Thread 1060: XXXX 1710847535907, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535908 XXXX 1710847535908, Thread 1060: XXXX 1710847535907, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535937 XXXX 1710847535937, Thread 1060: XXXX 1710847535937, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535937 XXXX 1710847535937, Thread 1060: XXXX 1710847535937, Entering Thread 1060: Commands::runScriptWithDownload, script name = WriteConfigmem +1060 1710847535952 XXXX 1710847535952, Thread 1060: XXXX 1710847535952, Exiting Thread 1060: Commands::runScriptWithDownload(WriteConfigmem) +1060 1710847535952 XXXX 1710847535952, Thread 1060: XXXX 1710847535952, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535953 XXXX 1710847535953, Thread 1060: XXXX 1710847535953, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535954 XXXX 1710847535954, Thread 1060: XXXX 1710847535954, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535954 XXXX 1710847535954, Thread 1060: XXXX 1710847535954, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535955 XXXX 1710847535955, Thread 1060: XXXX 1710847535955, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535955 XXXX 1710847535955, Thread 1060: XXXX 1710847535955, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535956 XXXX 1710847535956, Thread 1060: XXXX 1710847535956, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535956 XXXX 1710847535956, Thread 1060: XXXX 1710847535956, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535957 XXXX 1710847535957, Thread 1060: XXXX 1710847535957, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535987 XXXX 1710847535987, Thread 1060: XXXX 1710847535987, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535987 XXXX 1710847535987, Thread 1060: XXXX 1710847535987, Entering Thread 1060: Commands::runScriptWithUpload, script name = ReadConfigmem +1060 1710847535987 XXXX 1710847535987, Thread 1060: XXXX 1710847535987, Entering Thread 1060: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1060 1710847535990 XXXX 1710847535990, Thread 1060: XXXX 1710847535990, Exiting Thread 1060: ToolCommUsb::readTransfer, cr.status = 0x0 +1060 1710847535990 XXXX 1710847535990, Thread 1060: XXXX 1710847535990, Exiting Thread 1060: Commands::runScriptWithUpload +1060 1710847535990 XXXX 1710847535990, Thread 1060: XXXX 1710847535990, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535992 XXXX 1710847535992, Thread 1060: XXXX 1710847535992, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:endOfOperations +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 null +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847535992 XXXX 1710847535992, Thread 1060: XXXX 1710847535992, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535993 XXXX 1710847535993, Thread 1060: XXXX 1710847535993, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535993 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:endOfOperations +1060 1710847535993 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847535993 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847535993 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847535996 XXXX 1710847535996, Thread 1060: XXXX 1710847535996, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535998 XXXX 1710847535998, Thread 1060: XXXX 1710847535998, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535998 XXXX 1710847535998, Thread 1060: XXXX 1710847535998, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0x42, ... +1060 1710847535999 XXXX 1710847535999, Thread 1060: XXXX 1710847535999, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535999 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1060 1710847535999 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847535999 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847535999 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:EstablishCommunincations +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@2e5a1960 +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:EstablishCommunincations +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 true +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:GetFirmwareInfo +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: Values: +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.00.84, fpgaVer = ff.ff.ff, scriptVer = 00.05.85, macAddress = 0504883548174844852485054485057, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN005435, appCommitID = null, scriptCommitID = d33d758f73, PCB_ID = 2 +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End +1074 1710847555180 XXXX 1710847555180, Thread 1074: XXXX 1710847555180, Entering Thread 1074: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ... +1074 1710847555180 XXXX 1710847555180, Thread 1074: XXXX 1710847555180, Entering Thread 1074: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long +1074 1710847555183 XXXX 1710847555183, Thread 1074: XXXX 1710847555183, Exiting Thread 1074: ToolCommUsb::readTransfer, cr.status = 0x0 +1074 1710847555183 XXXX 1710847555183, Thread 1074: XXXX 1710847555183, Exiting Thread 1074: Commands::runScriptWithUpload + +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetPowerInfo +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: Values: +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: shotDownSystem = false, isToolPower = true, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = false, useMaintainActivePower = false +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555183 XXXX 1710847555183, Thread 1074: XXXX 1710847555183, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x39, ... +1074 1710847555184 XXXX 1710847555184, Thread 1074: XXXX 1710847555184, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555184 XXXX 1710847555184, Thread 1074: XXXX 1710847555184, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x46, ... +1074 1710847555185 XXXX 1710847555185, Thread 1074: XXXX 1710847555185, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555185 XXXX 1710847555185, Thread 1074: XXXX 1710847555185, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x44, ... +1074 1710847555198 XXXX 1710847555198, Thread 1074: XXXX 1710847555198, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555198 XXXX 1710847555198, Thread 1074: XXXX 1710847555198, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x40, ... +1074 1710847555378 XXXX 1710847555378, Thread 1074: XXXX 1710847555378, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555378 XXXX 1710847555378, Thread 1074: XXXX 1710847555378, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x47, ... +1074 1710847555383 XXXX 1710847555383, Thread 1074: XXXX 1710847555383, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetPowerInfo +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetLEDBrightness +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 5 +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555383 XXXX 1710847555383, Thread 1074: XXXX 1710847555383, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ... +1074 1710847555384 XXXX 1710847555384, Thread 1074: XXXX 1710847555384, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetLEDBrightness +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetToolInfo +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: Values: +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2 +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555384 XXXX 1710847555384, Thread 1074: XXXX 1710847555384, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x27, ... +1074 1710847555385 XXXX 1710847555385, Thread 1074: XXXX 1710847555385, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555385 XXXX 1710847555385, Thread 1074: XXXX 1710847555385, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555386 XXXX 1710847555386, Thread 1074: XXXX 1710847555386, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555386 XXXX 1710847555386, Thread 1074: XXXX 1710847555386, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555387 XXXX 1710847555387, Thread 1074: XXXX 1710847555387, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555387 XXXX 1710847555387, Thread 1074: XXXX 1710847555387, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555388 XXXX 1710847555388, Thread 1074: XXXX 1710847555388, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555388 XXXX 1710847555388, Thread 1074: XXXX 1710847555388, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xd4, ... +1074 1710847555388 XXXX 1710847555388, Thread 1074: XXXX 1710847555388, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555388 XXXX 1710847555388, Thread 1074: XXXX 1710847555388, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1074 1710847555389 XXXX 1710847555389, Thread 1074: XXXX 1710847555389, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555389 XXXX 1710847555389, Thread 1074: XXXX 1710847555389, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1074 1710847555390 XXXX 1710847555390, Thread 1074: XXXX 1710847555390, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555390 XXXX 1710847555390, Thread 1074: XXXX 1710847555390, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1074 1710847555392 XXXX 1710847555392, Thread 1074: XXXX 1710847555392, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555392 XXXX 1710847555392, Thread 1074: XXXX 1710847555392, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1074 1710847555393 XXXX 1710847555393, Thread 1074: XXXX 1710847555393, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555393 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetToolInfo +1074 1710847555393 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555393 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1074 1710847555393 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000 +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 0, Type = Cfg, Mask = 00000000 +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = ff, Buffer Length = 0, Type = EEData, Mask = 00000000 +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2000, End = 2003, Buffer Length = 0, Type = UserID, Mask = 00000000 +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847555398 XXXX 1710847555398, Thread 1074: XXXX 1710847555398, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555399 XXXX 1710847555399, Thread 1074: XXXX 1710847555399, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555399 XXXX 1710847555399, Thread 1074: XXXX 1710847555399, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555400 XXXX 1710847555400, Thread 1074: XXXX 1710847555400, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555400 XXXX 1710847555400, Thread 1074: XXXX 1710847555400, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555401 XXXX 1710847555401, Thread 1074: XXXX 1710847555401, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555401 XXXX 1710847555401, Thread 1074: XXXX 1710847555401, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555431 XXXX 1710847555431, Thread 1074: XXXX 1710847555431, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555431 XXXX 1710847555431, Thread 1074: XXXX 1710847555431, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555432 XXXX 1710847555432, Thread 1074: XXXX 1710847555432, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555432 XXXX 1710847555432, Thread 1074: XXXX 1710847555432, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555433 XXXX 1710847555433, Thread 1074: XXXX 1710847555433, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555433 XXXX 1710847555433, Thread 1074: XXXX 1710847555433, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555434 XXXX 1710847555434, Thread 1074: XXXX 1710847555434, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555434 XXXX 1710847555434, Thread 1074: XXXX 1710847555434, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555463 XXXX 1710847555463, Thread 1074: XXXX 1710847555463, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555463 XXXX 1710847555463, Thread 1074: XXXX 1710847555463, Entering Thread 1074: Commands::runScriptBasic, script name = EraseChip, timeOut = 30000 ms +1074 1710847555470 XXXX 1710847555470, Thread 1074: XXXX 1710847555470, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555470 XXXX 1710847555470, Thread 1074: XXXX 1710847555470, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847555472 XXXX 1710847555472, Thread 1074: XXXX 1710847555472, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555472 XXXX 1710847555472, Thread 1074: XXXX 1710847555472, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555473 XXXX 1710847555473, Thread 1074: XXXX 1710847555473, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555473 XXXX 1710847555473, Thread 1074: XXXX 1710847555473, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555474 XXXX 1710847555474, Thread 1074: XXXX 1710847555474, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555474 XXXX 1710847555474, Thread 1074: XXXX 1710847555474, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555475 XXXX 1710847555475, Thread 1074: XXXX 1710847555475, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555475 XXXX 1710847555475, Thread 1074: XXXX 1710847555475, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555505 XXXX 1710847555505, Thread 1074: XXXX 1710847555505, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555505 XXXX 1710847555505, Thread 1074: XXXX 1710847555505, Entering Thread 1074: Commands::runScriptBasic, script name = EraseDataEEmem, timeOut = 30000 ms +1074 1710847555512 XXXX 1710847555512, Thread 1074: XXXX 1710847555512, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555512 XXXX 1710847555512, Thread 1074: XXXX 1710847555512, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847555514 XXXX 1710847555514, Thread 1074: XXXX 1710847555514, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847555514 XXXX 1710847555514, Thread 1074: XXXX 1710847555514, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555515 XXXX 1710847555515, Thread 1074: XXXX 1710847555515, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555515 XXXX 1710847555515, Thread 1074: XXXX 1710847555515, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555516 XXXX 1710847555516, Thread 1074: XXXX 1710847555516, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555516 XXXX 1710847555516, Thread 1074: XXXX 1710847555516, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555517 XXXX 1710847555517, Thread 1074: XXXX 1710847555517, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555517 XXXX 1710847555517, Thread 1074: XXXX 1710847555517, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555546 XXXX 1710847555546, Thread 1074: XXXX 1710847555546, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555546 XXXX 1710847555546, Thread 1074: XXXX 1710847555546, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555547 XXXX 1710847555547, Thread 1074: XXXX 1710847555547, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555547 XXXX 1710847555547, Thread 1074: XXXX 1710847555547, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555548 XXXX 1710847555548, Thread 1074: XXXX 1710847555548, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555548 XXXX 1710847555548, Thread 1074: XXXX 1710847555548, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555549 XXXX 1710847555549, Thread 1074: XXXX 1710847555549, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555549 XXXX 1710847555549, Thread 1074: XXXX 1710847555549, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555579 XXXX 1710847555579, Thread 1074: XXXX 1710847555579, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555579 XXXX 1710847555579, Thread 1074: XXXX 1710847555579, Entering Thread 1074: Commands::runScriptWithDownload, script name = WriteConfigmem +1074 1710847555593 XXXX 1710847555593, Thread 1074: XXXX 1710847555593, Exiting Thread 1074: Commands::runScriptWithDownload(WriteConfigmem) +1074 1710847555593 XXXX 1710847555593, Thread 1074: XXXX 1710847555593, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847555595 XXXX 1710847555595, Thread 1074: XXXX 1710847555595, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555595 XXXX 1710847555595, Thread 1074: XXXX 1710847555595, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555596 XXXX 1710847555596, Thread 1074: XXXX 1710847555596, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555596 XXXX 1710847555596, Thread 1074: XXXX 1710847555596, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555597 XXXX 1710847555597, Thread 1074: XXXX 1710847555597, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555597 XXXX 1710847555597, Thread 1074: XXXX 1710847555597, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555598 XXXX 1710847555598, Thread 1074: XXXX 1710847555598, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555598 XXXX 1710847555598, Thread 1074: XXXX 1710847555598, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555627 XXXX 1710847555627, Thread 1074: XXXX 1710847555627, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555627 XXXX 1710847555627, Thread 1074: XXXX 1710847555627, Entering Thread 1074: Commands::runScriptWithUpload, script name = ReadConfigmem +1074 1710847555627 XXXX 1710847555627, Thread 1074: XXXX 1710847555627, Entering Thread 1074: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1074 1710847555629 XXXX 1710847555629, Thread 1074: XXXX 1710847555629, Exiting Thread 1074: ToolCommUsb::readTransfer, cr.status = 0x0 +1074 1710847555629 XXXX 1710847555629, Thread 1074: XXXX 1710847555629, Exiting Thread 1074: Commands::runScriptWithUpload +1074 1710847555629 XXXX 1710847555629, Thread 1074: XXXX 1710847555629, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847555631 XXXX 1710847555631, Thread 1074: XXXX 1710847555631, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555631 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1074 1710847555631 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847555631 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847555631 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 65f, Buffer Length = 3264, Type = Pgm, Mask = 00000000 +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847555632 XXXX 1710847555632, Thread 1074: XXXX 1710847555632, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555633 XXXX 1710847555633, Thread 1074: XXXX 1710847555633, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555633 XXXX 1710847555633, Thread 1074: XXXX 1710847555633, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555634 XXXX 1710847555634, Thread 1074: XXXX 1710847555634, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555634 XXXX 1710847555634, Thread 1074: XXXX 1710847555634, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555635 XXXX 1710847555635, Thread 1074: XXXX 1710847555635, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555635 XXXX 1710847555635, Thread 1074: XXXX 1710847555635, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555665 XXXX 1710847555665, Thread 1074: XXXX 1710847555665, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555666 XXXX 1710847555666, Thread 1074: XXXX 1710847555666, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555666 XXXX 1710847555666, Thread 1074: XXXX 1710847555666, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555666 XXXX 1710847555666, Thread 1074: XXXX 1710847555666, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555667 XXXX 1710847555667, Thread 1074: XXXX 1710847555667, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555667 XXXX 1710847555667, Thread 1074: XXXX 1710847555667, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555669 XXXX 1710847555669, Thread 1074: XXXX 1710847555669, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555669 XXXX 1710847555669, Thread 1074: XXXX 1710847555669, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555698 XXXX 1710847555698, Thread 1074: XXXX 1710847555698, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555698 XXXX 1710847555698, Thread 1074: XXXX 1710847555698, Entering Thread 1074: Commands::runScriptWithDownload, script name = WriteProgmem +1074 1710847556386 XXXX 1710847556386, Thread 1074: XXXX 1710847556386, Exiting Thread 1074: Commands::runScriptWithDownload(WriteProgmem) +1074 1710847556386 XXXX 1710847556386, Thread 1074: XXXX 1710847556386, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556388 XXXX 1710847556388, Thread 1074: XXXX 1710847556388, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556388 XXXX 1710847556388, Thread 1074: XXXX 1710847556388, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847556388 XXXX 1710847556388, Thread 1074: XXXX 1710847556388, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556388 XXXX 1710847556388, Thread 1074: XXXX 1710847556388, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847556389 XXXX 1710847556389, Thread 1074: XXXX 1710847556389, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556390 XXXX 1710847556390, Thread 1074: XXXX 1710847556390, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847556390 XXXX 1710847556390, Thread 1074: XXXX 1710847556390, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556391 XXXX 1710847556391, Thread 1074: XXXX 1710847556391, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847556420 XXXX 1710847556420, Thread 1074: XXXX 1710847556420, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556420 XXXX 1710847556420, Thread 1074: XXXX 1710847556420, Entering Thread 1074: Commands::runScriptWithUpload, script name = ReadProgmem +1074 1710847556420 XXXX 1710847556420, Thread 1074: XXXX 1710847556420, Entering Thread 1074: ToolCommUsb::readTransfer, sideData is 0x3d bytes long, transferDataLength is 0xcc0 bytes long +1074 1710847556493 XXXX 1710847556493, Thread 1074: XXXX 1710847556493, Exiting Thread 1074: ToolCommUsb::readTransfer, cr.status = 0x0 +1074 1710847556494 XXXX 1710847556494, Thread 1074: XXXX 1710847556493, Exiting Thread 1074: Commands::runScriptWithUpload +1074 1710847556494 XXXX 1710847556494, Thread 1074: XXXX 1710847556494, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556495 XXXX 1710847556495, Thread 1074: XXXX 1710847556495, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556496 XXXX 1710847556496, Thread 1074: XXXX 1710847556496, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847556497 XXXX 1710847556497, Thread 1074: XXXX 1710847556497, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556497 XXXX 1710847556497, Thread 1074: XXXX 1710847556497, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847556498 XXXX 1710847556497, Thread 1074: XXXX 1710847556497, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556498 XXXX 1710847556498, Thread 1074: XXXX 1710847556498, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847556498 XXXX 1710847556498, Thread 1074: XXXX 1710847556498, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556498 XXXX 1710847556498, Thread 1074: XXXX 1710847556498, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847556528 XXXX 1710847556528, Thread 1074: XXXX 1710847556528, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556528 XXXX 1710847556528, Thread 1074: XXXX 1710847556528, Entering Thread 1074: Commands::runScriptWithDownload, script name = WriteConfigmem +1074 1710847556542 XXXX 1710847556542, Thread 1074: XXXX 1710847556542, Exiting Thread 1074: Commands::runScriptWithDownload(WriteConfigmem) +1074 1710847556542 XXXX 1710847556542, Thread 1074: XXXX 1710847556542, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556544 XXXX 1710847556544, Thread 1074: XXXX 1710847556544, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556544 XXXX 1710847556544, Thread 1074: XXXX 1710847556544, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847556544 XXXX 1710847556544, Thread 1074: XXXX 1710847556544, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556544 XXXX 1710847556544, Thread 1074: XXXX 1710847556544, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847556545 XXXX 1710847556545, Thread 1074: XXXX 1710847556545, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556545 XXXX 1710847556545, Thread 1074: XXXX 1710847556545, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847556546 XXXX 1710847556546, Thread 1074: XXXX 1710847556546, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556546 XXXX 1710847556546, Thread 1074: XXXX 1710847556546, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847556577 XXXX 1710847556576, Thread 1074: XXXX 1710847556576, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556577 XXXX 1710847556577, Thread 1074: XXXX 1710847556577, Entering Thread 1074: Commands::runScriptWithUpload, script name = ReadConfigmem +1074 1710847556577 XXXX 1710847556577, Thread 1074: XXXX 1710847556577, Entering Thread 1074: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1074 1710847556578 XXXX 1710847556578, Thread 1074: XXXX 1710847556578, Exiting Thread 1074: ToolCommUsb::readTransfer, cr.status = 0x0 +1074 1710847556578 XXXX 1710847556578, Thread 1074: XXXX 1710847556578, Exiting Thread 1074: Commands::runScriptWithUpload +1074 1710847556578 XXXX 1710847556578, Thread 1074: XXXX 1710847556578, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556581 XXXX 1710847556581, Thread 1074: XXXX 1710847556581, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:endOfOperations +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 null +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847556581 XXXX 1710847556581, Thread 1074: XXXX 1710847556581, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556583 XXXX 1710847556583, Thread 1074: XXXX 1710847556583, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556583 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:endOfOperations +1074 1710847556583 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847556583 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847556583 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847556585 XXXX 1710847556585, Thread 1074: XXXX 1710847556585, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556587 XXXX 1710847556587, Thread 1074: XXXX 1710847556587, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556587 XXXX 1710847556587, Thread 1074: XXXX 1710847556587, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x42, ... +1074 1710847556588 XXXX 1710847556588, Thread 1074: XXXX 1710847556588, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556588 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1074 1710847556588 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847556588 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847556588 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:EstablishCommunincations +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@2e5a1960 +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:EstablishCommunincations +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 true +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:GetFirmwareInfo +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: Values: +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.00.84, fpgaVer = ff.ff.ff, scriptVer = 00.05.85, macAddress = 0504883548174844852485054485057, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN005435, appCommitID = null, scriptCommitID = d33d758f73, PCB_ID = 2 +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End +1087 1710847572789 XXXX 1710847572789, Thread 1087: XXXX 1710847572789, Entering Thread 1087: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ... +1087 1710847572789 XXXX 1710847572789, Thread 1087: XXXX 1710847572789, Entering Thread 1087: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long +1087 1710847572792 XXXX 1710847572792, Thread 1087: XXXX 1710847572792, Exiting Thread 1087: ToolCommUsb::readTransfer, cr.status = 0x0 +1087 1710847572792 XXXX 1710847572792, Thread 1087: XXXX 1710847572792, Exiting Thread 1087: Commands::runScriptWithUpload + +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetPowerInfo +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: Values: +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: shotDownSystem = false, isToolPower = true, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = false, useMaintainActivePower = false +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572792 XXXX 1710847572792, Thread 1087: XXXX 1710847572792, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x39, ... +1087 1710847572793 XXXX 1710847572793, Thread 1087: XXXX 1710847572793, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572793 XXXX 1710847572793, Thread 1087: XXXX 1710847572793, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x46, ... +1087 1710847572794 XXXX 1710847572794, Thread 1087: XXXX 1710847572794, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572794 XXXX 1710847572794, Thread 1087: XXXX 1710847572794, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x44, ... +1087 1710847572806 XXXX 1710847572806, Thread 1087: XXXX 1710847572806, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572806 XXXX 1710847572806, Thread 1087: XXXX 1710847572806, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x40, ... +1087 1710847572986 XXXX 1710847572986, Thread 1087: XXXX 1710847572986, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572986 XXXX 1710847572986, Thread 1087: XXXX 1710847572986, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x47, ... +1087 1710847572991 XXXX 1710847572991, Thread 1087: XXXX 1710847572991, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetPowerInfo +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetLEDBrightness +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 5 +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572991 XXXX 1710847572991, Thread 1087: XXXX 1710847572991, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ... +1087 1710847572991 XXXX 1710847572991, Thread 1087: XXXX 1710847572991, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetLEDBrightness +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetToolInfo +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: Values: +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2 +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572993 XXXX 1710847572993, Thread 1087: XXXX 1710847572993, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x27, ... +1087 1710847572993 XXXX 1710847572993, Thread 1087: XXXX 1710847572993, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572993 XXXX 1710847572993, Thread 1087: XXXX 1710847572993, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847572994 XXXX 1710847572994, Thread 1087: XXXX 1710847572994, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572994 XXXX 1710847572994, Thread 1087: XXXX 1710847572994, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847572995 XXXX 1710847572995, Thread 1087: XXXX 1710847572995, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572995 XXXX 1710847572995, Thread 1087: XXXX 1710847572995, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847572996 XXXX 1710847572996, Thread 1087: XXXX 1710847572996, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572996 XXXX 1710847572996, Thread 1087: XXXX 1710847572996, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xd4, ... +1087 1710847572997 XXXX 1710847572997, Thread 1087: XXXX 1710847572997, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572997 XXXX 1710847572997, Thread 1087: XXXX 1710847572997, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1087 1710847572998 XXXX 1710847572998, Thread 1087: XXXX 1710847572998, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572998 XXXX 1710847572998, Thread 1087: XXXX 1710847572998, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1087 1710847572999 XXXX 1710847572999, Thread 1087: XXXX 1710847572999, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572999 XXXX 1710847572999, Thread 1087: XXXX 1710847572999, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1087 1710847573000 XXXX 1710847573000, Thread 1087: XXXX 1710847573000, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573000 XXXX 1710847573000, Thread 1087: XXXX 1710847573000, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1087 1710847573001 XXXX 1710847573001, Thread 1087: XXXX 1710847573001, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573001 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetToolInfo +1087 1710847573001 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847573001 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1087 1710847573001 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000 +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 0, Type = Cfg, Mask = 00000000 +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = ff, Buffer Length = 0, Type = EEData, Mask = 00000000 +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2000, End = 2003, Buffer Length = 0, Type = UserID, Mask = 00000000 +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847573007 XXXX 1710847573007, Thread 1087: XXXX 1710847573007, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573008 XXXX 1710847573008, Thread 1087: XXXX 1710847573008, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573008 XXXX 1710847573008, Thread 1087: XXXX 1710847573008, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573009 XXXX 1710847573009, Thread 1087: XXXX 1710847573009, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573009 XXXX 1710847573009, Thread 1087: XXXX 1710847573009, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573010 XXXX 1710847573010, Thread 1087: XXXX 1710847573010, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573010 XXXX 1710847573010, Thread 1087: XXXX 1710847573010, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573040 XXXX 1710847573040, Thread 1087: XXXX 1710847573040, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573040 XXXX 1710847573040, Thread 1087: XXXX 1710847573040, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573041 XXXX 1710847573041, Thread 1087: XXXX 1710847573041, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573041 XXXX 1710847573041, Thread 1087: XXXX 1710847573041, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573042 XXXX 1710847573042, Thread 1087: XXXX 1710847573042, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573042 XXXX 1710847573042, Thread 1087: XXXX 1710847573042, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573043 XXXX 1710847573043, Thread 1087: XXXX 1710847573043, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573043 XXXX 1710847573043, Thread 1087: XXXX 1710847573043, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573072 XXXX 1710847573072, Thread 1087: XXXX 1710847573072, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573072 XXXX 1710847573072, Thread 1087: XXXX 1710847573072, Entering Thread 1087: Commands::runScriptBasic, script name = EraseChip, timeOut = 30000 ms +1087 1710847573079 XXXX 1710847573079, Thread 1087: XXXX 1710847573079, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573079 XXXX 1710847573079, Thread 1087: XXXX 1710847573079, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847573081 XXXX 1710847573081, Thread 1087: XXXX 1710847573081, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573081 XXXX 1710847573081, Thread 1087: XXXX 1710847573081, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573082 XXXX 1710847573082, Thread 1087: XXXX 1710847573082, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573082 XXXX 1710847573082, Thread 1087: XXXX 1710847573082, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573083 XXXX 1710847573083, Thread 1087: XXXX 1710847573083, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573083 XXXX 1710847573083, Thread 1087: XXXX 1710847573083, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573084 XXXX 1710847573084, Thread 1087: XXXX 1710847573084, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573084 XXXX 1710847573084, Thread 1087: XXXX 1710847573084, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573114 XXXX 1710847573114, Thread 1087: XXXX 1710847573114, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573114 XXXX 1710847573114, Thread 1087: XXXX 1710847573114, Entering Thread 1087: Commands::runScriptBasic, script name = EraseDataEEmem, timeOut = 30000 ms +1087 1710847573121 XXXX 1710847573121, Thread 1087: XXXX 1710847573121, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573121 XXXX 1710847573121, Thread 1087: XXXX 1710847573121, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847573123 XXXX 1710847573123, Thread 1087: XXXX 1710847573123, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847573123 XXXX 1710847573123, Thread 1087: XXXX 1710847573123, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573124 XXXX 1710847573124, Thread 1087: XXXX 1710847573124, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573124 XXXX 1710847573124, Thread 1087: XXXX 1710847573124, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573125 XXXX 1710847573125, Thread 1087: XXXX 1710847573125, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573125 XXXX 1710847573125, Thread 1087: XXXX 1710847573125, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573126 XXXX 1710847573126, Thread 1087: XXXX 1710847573126, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573126 XXXX 1710847573126, Thread 1087: XXXX 1710847573126, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573155 XXXX 1710847573155, Thread 1087: XXXX 1710847573155, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573155 XXXX 1710847573155, Thread 1087: XXXX 1710847573155, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573156 XXXX 1710847573156, Thread 1087: XXXX 1710847573156, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573156 XXXX 1710847573156, Thread 1087: XXXX 1710847573156, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573157 XXXX 1710847573157, Thread 1087: XXXX 1710847573157, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573157 XXXX 1710847573157, Thread 1087: XXXX 1710847573157, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573158 XXXX 1710847573158, Thread 1087: XXXX 1710847573158, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573158 XXXX 1710847573158, Thread 1087: XXXX 1710847573158, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573188 XXXX 1710847573188, Thread 1087: XXXX 1710847573188, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573188 XXXX 1710847573188, Thread 1087: XXXX 1710847573188, Entering Thread 1087: Commands::runScriptWithDownload, script name = WriteConfigmem +1087 1710847573202 XXXX 1710847573202, Thread 1087: XXXX 1710847573202, Exiting Thread 1087: Commands::runScriptWithDownload(WriteConfigmem) +1087 1710847573202 XXXX 1710847573202, Thread 1087: XXXX 1710847573202, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847573204 XXXX 1710847573204, Thread 1087: XXXX 1710847573204, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573204 XXXX 1710847573204, Thread 1087: XXXX 1710847573204, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573205 XXXX 1710847573205, Thread 1087: XXXX 1710847573205, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573205 XXXX 1710847573205, Thread 1087: XXXX 1710847573205, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573206 XXXX 1710847573206, Thread 1087: XXXX 1710847573206, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573206 XXXX 1710847573206, Thread 1087: XXXX 1710847573206, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573207 XXXX 1710847573207, Thread 1087: XXXX 1710847573207, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573207 XXXX 1710847573207, Thread 1087: XXXX 1710847573207, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573236 XXXX 1710847573236, Thread 1087: XXXX 1710847573236, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573236 XXXX 1710847573236, Thread 1087: XXXX 1710847573236, Entering Thread 1087: Commands::runScriptWithUpload, script name = ReadConfigmem +1087 1710847573236 XXXX 1710847573236, Thread 1087: XXXX 1710847573236, Entering Thread 1087: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1087 1710847573239 XXXX 1710847573239, Thread 1087: XXXX 1710847573239, Exiting Thread 1087: ToolCommUsb::readTransfer, cr.status = 0x0 +1087 1710847573239 XXXX 1710847573239, Thread 1087: XXXX 1710847573239, Exiting Thread 1087: Commands::runScriptWithUpload +1087 1710847573239 XXXX 1710847573239, Thread 1087: XXXX 1710847573239, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847573241 XXXX 1710847573241, Thread 1087: XXXX 1710847573241, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573241 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1087 1710847573241 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847573241 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847573241 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 65f, Buffer Length = 3264, Type = Pgm, Mask = 00000000 +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847573244 XXXX 1710847573244, Thread 1087: XXXX 1710847573244, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573245 XXXX 1710847573245, Thread 1087: XXXX 1710847573245, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573245 XXXX 1710847573245, Thread 1087: XXXX 1710847573245, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573246 XXXX 1710847573246, Thread 1087: XXXX 1710847573246, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573246 XXXX 1710847573246, Thread 1087: XXXX 1710847573246, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573247 XXXX 1710847573247, Thread 1087: XXXX 1710847573247, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573247 XXXX 1710847573247, Thread 1087: XXXX 1710847573247, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573277 XXXX 1710847573277, Thread 1087: XXXX 1710847573277, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573277 XXXX 1710847573277, Thread 1087: XXXX 1710847573277, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573278 XXXX 1710847573278, Thread 1087: XXXX 1710847573278, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573278 XXXX 1710847573278, Thread 1087: XXXX 1710847573278, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573279 XXXX 1710847573279, Thread 1087: XXXX 1710847573279, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573279 XXXX 1710847573279, Thread 1087: XXXX 1710847573279, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573280 XXXX 1710847573280, Thread 1087: XXXX 1710847573280, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573280 XXXX 1710847573280, Thread 1087: XXXX 1710847573280, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573309 XXXX 1710847573309, Thread 1087: XXXX 1710847573309, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573309 XXXX 1710847573309, Thread 1087: XXXX 1710847573309, Entering Thread 1087: Commands::runScriptWithDownload, script name = WriteProgmem +1087 1710847573999 XXXX 1710847573999, Thread 1087: XXXX 1710847573999, Exiting Thread 1087: Commands::runScriptWithDownload(WriteProgmem) +1087 1710847573999 XXXX 1710847573999, Thread 1087: XXXX 1710847573999, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574000 XXXX 1710847574000, Thread 1087: XXXX 1710847574000, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574000 XXXX 1710847574000, Thread 1087: XXXX 1710847574000, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847574001 XXXX 1710847574001, Thread 1087: XXXX 1710847574001, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574001 XXXX 1710847574001, Thread 1087: XXXX 1710847574001, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847574002 XXXX 1710847574002, Thread 1087: XXXX 1710847574002, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574002 XXXX 1710847574002, Thread 1087: XXXX 1710847574002, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847574003 XXXX 1710847574003, Thread 1087: XXXX 1710847574003, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574003 XXXX 1710847574003, Thread 1087: XXXX 1710847574003, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847574033 XXXX 1710847574033, Thread 1087: XXXX 1710847574033, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574033 XXXX 1710847574033, Thread 1087: XXXX 1710847574033, Entering Thread 1087: Commands::runScriptWithUpload, script name = ReadProgmem +1087 1710847574033 XXXX 1710847574033, Thread 1087: XXXX 1710847574033, Entering Thread 1087: ToolCommUsb::readTransfer, sideData is 0x3d bytes long, transferDataLength is 0xcc0 bytes long +1087 1710847574106 XXXX 1710847574106, Thread 1087: XXXX 1710847574106, Exiting Thread 1087: ToolCommUsb::readTransfer, cr.status = 0x0 +1087 1710847574106 XXXX 1710847574106, Thread 1087: XXXX 1710847574106, Exiting Thread 1087: Commands::runScriptWithUpload +1087 1710847574106 XXXX 1710847574106, Thread 1087: XXXX 1710847574106, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574108 XXXX 1710847574108, Thread 1087: XXXX 1710847574108, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574108 XXXX 1710847574108, Thread 1087: XXXX 1710847574108, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847574109 XXXX 1710847574109, Thread 1087: XXXX 1710847574109, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574109 XXXX 1710847574109, Thread 1087: XXXX 1710847574109, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847574110 XXXX 1710847574110, Thread 1087: XXXX 1710847574110, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574110 XXXX 1710847574110, Thread 1087: XXXX 1710847574110, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847574111 XXXX 1710847574111, Thread 1087: XXXX 1710847574111, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574111 XXXX 1710847574111, Thread 1087: XXXX 1710847574111, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847574140 XXXX 1710847574140, Thread 1087: XXXX 1710847574140, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574140 XXXX 1710847574140, Thread 1087: XXXX 1710847574140, Entering Thread 1087: Commands::runScriptWithDownload, script name = WriteConfigmem +1087 1710847574155 XXXX 1710847574155, Thread 1087: XXXX 1710847574155, Exiting Thread 1087: Commands::runScriptWithDownload(WriteConfigmem) +1087 1710847574155 XXXX 1710847574155, Thread 1087: XXXX 1710847574155, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574157 XXXX 1710847574157, Thread 1087: XXXX 1710847574157, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574157 XXXX 1710847574157, Thread 1087: XXXX 1710847574157, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847574158 XXXX 1710847574158, Thread 1087: XXXX 1710847574158, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574158 XXXX 1710847574158, Thread 1087: XXXX 1710847574158, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847574159 XXXX 1710847574159, Thread 1087: XXXX 1710847574159, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574159 XXXX 1710847574159, Thread 1087: XXXX 1710847574159, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847574160 XXXX 1710847574160, Thread 1087: XXXX 1710847574160, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574160 XXXX 1710847574160, Thread 1087: XXXX 1710847574160, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847574190 XXXX 1710847574190, Thread 1087: XXXX 1710847574190, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574190 XXXX 1710847574190, Thread 1087: XXXX 1710847574190, Entering Thread 1087: Commands::runScriptWithUpload, script name = ReadConfigmem +1087 1710847574190 XXXX 1710847574190, Thread 1087: XXXX 1710847574190, Entering Thread 1087: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1087 1710847574193 XXXX 1710847574193, Thread 1087: XXXX 1710847574193, Exiting Thread 1087: ToolCommUsb::readTransfer, cr.status = 0x0 +1087 1710847574193 XXXX 1710847574193, Thread 1087: XXXX 1710847574193, Exiting Thread 1087: Commands::runScriptWithUpload +1087 1710847574193 XXXX 1710847574193, Thread 1087: XXXX 1710847574193, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574195 XXXX 1710847574195, Thread 1087: XXXX 1710847574195, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:endOfOperations +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 null +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847574195 XXXX 1710847574195, Thread 1087: XXXX 1710847574195, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574197 XXXX 1710847574197, Thread 1087: XXXX 1710847574197, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574197 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:endOfOperations +1087 1710847574197 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847574197 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847574197 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847574200 XXXX 1710847574200, Thread 1087: XXXX 1710847574200, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574202 XXXX 1710847574202, Thread 1087: XXXX 1710847574202, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574202 XXXX 1710847574202, Thread 1087: XXXX 1710847574202, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x42, ... +1087 1710847574203 XXXX 1710847574203, Thread 1087: XXXX 1710847574203, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1087 1710847574203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847574203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847574203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:EstablishCommunincations +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@2e5a1960 +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:EstablishCommunincations +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 true +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:GetFirmwareInfo +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: Values: +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.00.84, fpgaVer = ff.ff.ff, scriptVer = 00.05.85, macAddress = 0504883548174844852485054485057, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN005435, appCommitID = null, scriptCommitID = d33d758f73, PCB_ID = 2 +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End +1098 1710847584863 XXXX 1710847584863, Thread 1098: XXXX 1710847584863, Entering Thread 1098: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ... +1098 1710847584863 XXXX 1710847584863, Thread 1098: XXXX 1710847584863, Entering Thread 1098: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long +1098 1710847584867 XXXX 1710847584867, Thread 1098: XXXX 1710847584867, Exiting Thread 1098: ToolCommUsb::readTransfer, cr.status = 0x0 +1098 1710847584867 XXXX 1710847584867, Thread 1098: XXXX 1710847584867, Exiting Thread 1098: Commands::runScriptWithUpload + +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetPowerInfo +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: Values: +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: shotDownSystem = false, isToolPower = true, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = false, useMaintainActivePower = false +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847584867 XXXX 1710847584867, Thread 1098: XXXX 1710847584867, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x39, ... +1098 1710847584867 XXXX 1710847584867, Thread 1098: XXXX 1710847584867, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847584868 XXXX 1710847584868, Thread 1098: XXXX 1710847584868, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x46, ... +1098 1710847584868 XXXX 1710847584868, Thread 1098: XXXX 1710847584868, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847584869 XXXX 1710847584869, Thread 1098: XXXX 1710847584869, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x44, ... +1098 1710847584881 XXXX 1710847584881, Thread 1098: XXXX 1710847584881, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847584881 XXXX 1710847584881, Thread 1098: XXXX 1710847584881, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x40, ... +1098 1710847585060 XXXX 1710847585060, Thread 1098: XXXX 1710847585060, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585060 XXXX 1710847585060, Thread 1098: XXXX 1710847585060, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x47, ... +1098 1710847585066 XXXX 1710847585066, Thread 1098: XXXX 1710847585066, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetPowerInfo +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetLEDBrightness +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 5 +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847585066 XXXX 1710847585066, Thread 1098: XXXX 1710847585066, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ... +1098 1710847585066 XXXX 1710847585066, Thread 1098: XXXX 1710847585066, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetLEDBrightness +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetToolInfo +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: Values: +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2 +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847585066 XXXX 1710847585066, Thread 1098: XXXX 1710847585066, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x27, ... +1098 1710847585067 XXXX 1710847585067, Thread 1098: XXXX 1710847585067, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585067 XXXX 1710847585067, Thread 1098: XXXX 1710847585067, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585068 XXXX 1710847585068, Thread 1098: XXXX 1710847585068, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585068 XXXX 1710847585068, Thread 1098: XXXX 1710847585068, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585069 XXXX 1710847585069, Thread 1098: XXXX 1710847585069, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585069 XXXX 1710847585069, Thread 1098: XXXX 1710847585069, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585070 XXXX 1710847585070, Thread 1098: XXXX 1710847585070, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585070 XXXX 1710847585070, Thread 1098: XXXX 1710847585070, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xd4, ... +1098 1710847585071 XXXX 1710847585071, Thread 1098: XXXX 1710847585071, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585071 XXXX 1710847585071, Thread 1098: XXXX 1710847585071, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1098 1710847585072 XXXX 1710847585072, Thread 1098: XXXX 1710847585072, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585072 XXXX 1710847585072, Thread 1098: XXXX 1710847585072, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1098 1710847585074 XXXX 1710847585074, Thread 1098: XXXX 1710847585074, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585074 XXXX 1710847585074, Thread 1098: XXXX 1710847585074, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1098 1710847585074 XXXX 1710847585074, Thread 1098: XXXX 1710847585074, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585074 XXXX 1710847585074, Thread 1098: XXXX 1710847585074, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1098 1710847585076 XXXX 1710847585076, Thread 1098: XXXX 1710847585076, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585076 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetToolInfo +1098 1710847585076 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847585076 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1098 1710847585076 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000 +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 0, Type = Cfg, Mask = 00000000 +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = ff, Buffer Length = 0, Type = EEData, Mask = 00000000 +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2000, End = 2003, Buffer Length = 0, Type = UserID, Mask = 00000000 +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847585085 XXXX 1710847585085, Thread 1098: XXXX 1710847585085, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585086 XXXX 1710847585086, Thread 1098: XXXX 1710847585086, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585086 XXXX 1710847585086, Thread 1098: XXXX 1710847585086, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585087 XXXX 1710847585087, Thread 1098: XXXX 1710847585087, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585087 XXXX 1710847585087, Thread 1098: XXXX 1710847585087, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585088 XXXX 1710847585088, Thread 1098: XXXX 1710847585088, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585088 XXXX 1710847585088, Thread 1098: XXXX 1710847585088, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585118 XXXX 1710847585118, Thread 1098: XXXX 1710847585118, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585118 XXXX 1710847585118, Thread 1098: XXXX 1710847585118, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585120 XXXX 1710847585120, Thread 1098: XXXX 1710847585120, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585120 XXXX 1710847585120, Thread 1098: XXXX 1710847585120, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585122 XXXX 1710847585122, Thread 1098: XXXX 1710847585122, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585122 XXXX 1710847585122, Thread 1098: XXXX 1710847585122, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585123 XXXX 1710847585123, Thread 1098: XXXX 1710847585123, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585123 XXXX 1710847585123, Thread 1098: XXXX 1710847585123, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585152 XXXX 1710847585152, Thread 1098: XXXX 1710847585152, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585152 XXXX 1710847585152, Thread 1098: XXXX 1710847585152, Entering Thread 1098: Commands::runScriptBasic, script name = EraseChip, timeOut = 30000 ms +1098 1710847585159 XXXX 1710847585159, Thread 1098: XXXX 1710847585159, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585159 XXXX 1710847585159, Thread 1098: XXXX 1710847585159, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847585161 XXXX 1710847585161, Thread 1098: XXXX 1710847585161, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585161 XXXX 1710847585161, Thread 1098: XXXX 1710847585161, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585162 XXXX 1710847585162, Thread 1098: XXXX 1710847585162, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585162 XXXX 1710847585162, Thread 1098: XXXX 1710847585162, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585163 XXXX 1710847585163, Thread 1098: XXXX 1710847585163, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585163 XXXX 1710847585163, Thread 1098: XXXX 1710847585163, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585164 XXXX 1710847585164, Thread 1098: XXXX 1710847585164, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585164 XXXX 1710847585164, Thread 1098: XXXX 1710847585164, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585193 XXXX 1710847585193, Thread 1098: XXXX 1710847585193, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585193 XXXX 1710847585193, Thread 1098: XXXX 1710847585193, Entering Thread 1098: Commands::runScriptBasic, script name = EraseDataEEmem, timeOut = 30000 ms +1098 1710847585200 XXXX 1710847585200, Thread 1098: XXXX 1710847585200, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585200 XXXX 1710847585200, Thread 1098: XXXX 1710847585200, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847585202 XXXX 1710847585202, Thread 1098: XXXX 1710847585202, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585202 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1098 1710847585202 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847585202 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847585202 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847585203 XXXX 1710847585203, Thread 1098: XXXX 1710847585203, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585203 XXXX 1710847585203, Thread 1098: XXXX 1710847585203, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585203 XXXX 1710847585203, Thread 1098: XXXX 1710847585203, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585204 XXXX 1710847585204, Thread 1098: XXXX 1710847585204, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585204 XXXX 1710847585204, Thread 1098: XXXX 1710847585204, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585205 XXXX 1710847585205, Thread 1098: XXXX 1710847585205, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585205 XXXX 1710847585205, Thread 1098: XXXX 1710847585205, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585234 XXXX 1710847585234, Thread 1098: XXXX 1710847585234, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585235 XXXX 1710847585235, Thread 1098: XXXX 1710847585235, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585235 XXXX 1710847585235, Thread 1098: XXXX 1710847585235, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585235 XXXX 1710847585235, Thread 1098: XXXX 1710847585235, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585236 XXXX 1710847585236, Thread 1098: XXXX 1710847585236, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585236 XXXX 1710847585236, Thread 1098: XXXX 1710847585236, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585237 XXXX 1710847585237, Thread 1098: XXXX 1710847585237, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585237 XXXX 1710847585237, Thread 1098: XXXX 1710847585237, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585267 XXXX 1710847585267, Thread 1098: XXXX 1710847585267, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585267 XXXX 1710847585267, Thread 1098: XXXX 1710847585267, Entering Thread 1098: Commands::runScriptWithDownload, script name = WriteConfigmem +1098 1710847585283 XXXX 1710847585283, Thread 1098: XXXX 1710847585283, Exiting Thread 1098: Commands::runScriptWithDownload(WriteConfigmem) +1098 1710847585283 XXXX 1710847585283, Thread 1098: XXXX 1710847585283, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847585285 XXXX 1710847585284, Thread 1098: XXXX 1710847585284, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585285 XXXX 1710847585285, Thread 1098: XXXX 1710847585285, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585285 XXXX 1710847585285, Thread 1098: XXXX 1710847585285, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585285 XXXX 1710847585285, Thread 1098: XXXX 1710847585285, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585286 XXXX 1710847585286, Thread 1098: XXXX 1710847585286, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585286 XXXX 1710847585286, Thread 1098: XXXX 1710847585286, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585287 XXXX 1710847585287, Thread 1098: XXXX 1710847585287, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585287 XXXX 1710847585287, Thread 1098: XXXX 1710847585287, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585317 XXXX 1710847585317, Thread 1098: XXXX 1710847585317, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585317 XXXX 1710847585317, Thread 1098: XXXX 1710847585317, Entering Thread 1098: Commands::runScriptWithUpload, script name = ReadConfigmem +1098 1710847585317 XXXX 1710847585317, Thread 1098: XXXX 1710847585317, Entering Thread 1098: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1098 1710847585320 XXXX 1710847585320, Thread 1098: XXXX 1710847585320, Exiting Thread 1098: ToolCommUsb::readTransfer, cr.status = 0x0 +1098 1710847585320 XXXX 1710847585320, Thread 1098: XXXX 1710847585320, Exiting Thread 1098: Commands::runScriptWithUpload +1098 1710847585320 XXXX 1710847585320, Thread 1098: XXXX 1710847585320, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847585321 XXXX 1710847585321, Thread 1098: XXXX 1710847585321, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585322 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1098 1710847585322 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847585322 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847585322 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 65f, Buffer Length = 3264, Type = Pgm, Mask = 00000000 +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847585323 XXXX 1710847585323, Thread 1098: XXXX 1710847585323, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585324 XXXX 1710847585324, Thread 1098: XXXX 1710847585324, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585324 XXXX 1710847585324, Thread 1098: XXXX 1710847585324, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585325 XXXX 1710847585325, Thread 1098: XXXX 1710847585325, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585325 XXXX 1710847585325, Thread 1098: XXXX 1710847585325, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585326 XXXX 1710847585326, Thread 1098: XXXX 1710847585326, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585326 XXXX 1710847585326, Thread 1098: XXXX 1710847585326, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585356 XXXX 1710847585356, Thread 1098: XXXX 1710847585356, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585356 XXXX 1710847585356, Thread 1098: XXXX 1710847585356, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585357 XXXX 1710847585357, Thread 1098: XXXX 1710847585357, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585357 XXXX 1710847585357, Thread 1098: XXXX 1710847585357, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585358 XXXX 1710847585358, Thread 1098: XXXX 1710847585358, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585358 XXXX 1710847585358, Thread 1098: XXXX 1710847585358, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585359 XXXX 1710847585359, Thread 1098: XXXX 1710847585359, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585359 XXXX 1710847585359, Thread 1098: XXXX 1710847585359, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585388 XXXX 1710847585388, Thread 1098: XXXX 1710847585388, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585388 XXXX 1710847585388, Thread 1098: XXXX 1710847585388, Entering Thread 1098: Commands::runScriptWithDownload, script name = WriteProgmem +1098 1710847586077 XXXX 1710847586077, Thread 1098: XXXX 1710847586077, Exiting Thread 1098: Commands::runScriptWithDownload(WriteProgmem) +1098 1710847586077 XXXX 1710847586077, Thread 1098: XXXX 1710847586077, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586079 XXXX 1710847586079, Thread 1098: XXXX 1710847586079, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586079 XXXX 1710847586079, Thread 1098: XXXX 1710847586079, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847586080 XXXX 1710847586080, Thread 1098: XXXX 1710847586080, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586080 XXXX 1710847586080, Thread 1098: XXXX 1710847586080, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847586081 XXXX 1710847586081, Thread 1098: XXXX 1710847586081, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586081 XXXX 1710847586081, Thread 1098: XXXX 1710847586081, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847586082 XXXX 1710847586082, Thread 1098: XXXX 1710847586082, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586082 XXXX 1710847586082, Thread 1098: XXXX 1710847586082, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847586112 XXXX 1710847586112, Thread 1098: XXXX 1710847586112, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586112 XXXX 1710847586112, Thread 1098: XXXX 1710847586112, Entering Thread 1098: Commands::runScriptWithUpload, script name = ReadProgmem +1098 1710847586112 XXXX 1710847586112, Thread 1098: XXXX 1710847586112, Entering Thread 1098: ToolCommUsb::readTransfer, sideData is 0x3d bytes long, transferDataLength is 0xcc0 bytes long +1098 1710847586187 XXXX 1710847586187, Thread 1098: XXXX 1710847586187, Exiting Thread 1098: ToolCommUsb::readTransfer, cr.status = 0x0 +1098 1710847586187 XXXX 1710847586187, Thread 1098: XXXX 1710847586187, Exiting Thread 1098: Commands::runScriptWithUpload +1098 1710847586187 XXXX 1710847586187, Thread 1098: XXXX 1710847586187, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586189 XXXX 1710847586189, Thread 1098: XXXX 1710847586189, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586189 XXXX 1710847586189, Thread 1098: XXXX 1710847586189, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847586190 XXXX 1710847586190, Thread 1098: XXXX 1710847586190, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586190 XXXX 1710847586190, Thread 1098: XXXX 1710847586190, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847586191 XXXX 1710847586191, Thread 1098: XXXX 1710847586191, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586191 XXXX 1710847586191, Thread 1098: XXXX 1710847586191, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847586192 XXXX 1710847586192, Thread 1098: XXXX 1710847586192, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586192 XXXX 1710847586192, Thread 1098: XXXX 1710847586192, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847586221 XXXX 1710847586221, Thread 1098: XXXX 1710847586221, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586221 XXXX 1710847586221, Thread 1098: XXXX 1710847586221, Entering Thread 1098: Commands::runScriptWithDownload, script name = WriteConfigmem +1098 1710847586235 XXXX 1710847586235, Thread 1098: XXXX 1710847586235, Exiting Thread 1098: Commands::runScriptWithDownload(WriteConfigmem) +1098 1710847586235 XXXX 1710847586235, Thread 1098: XXXX 1710847586235, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586237 XXXX 1710847586237, Thread 1098: XXXX 1710847586237, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586238 XXXX 1710847586238, Thread 1098: XXXX 1710847586238, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847586238 XXXX 1710847586238, Thread 1098: XXXX 1710847586238, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586238 XXXX 1710847586238, Thread 1098: XXXX 1710847586238, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847586239 XXXX 1710847586239, Thread 1098: XXXX 1710847586239, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586239 XXXX 1710847586239, Thread 1098: XXXX 1710847586239, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847586240 XXXX 1710847586240, Thread 1098: XXXX 1710847586240, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586240 XXXX 1710847586240, Thread 1098: XXXX 1710847586240, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847586270 XXXX 1710847586270, Thread 1098: XXXX 1710847586270, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586270 XXXX 1710847586270, Thread 1098: XXXX 1710847586270, Entering Thread 1098: Commands::runScriptWithUpload, script name = ReadConfigmem +1098 1710847586270 XXXX 1710847586270, Thread 1098: XXXX 1710847586270, Entering Thread 1098: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1098 1710847586273 XXXX 1710847586273, Thread 1098: XXXX 1710847586273, Exiting Thread 1098: ToolCommUsb::readTransfer, cr.status = 0x0 +1098 1710847586273 XXXX 1710847586273, Thread 1098: XXXX 1710847586273, Exiting Thread 1098: Commands::runScriptWithUpload +1098 1710847586273 XXXX 1710847586273, Thread 1098: XXXX 1710847586273, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586275 XXXX 1710847586275, Thread 1098: XXXX 1710847586275, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:endOfOperations +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 null +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847586275 XXXX 1710847586275, Thread 1098: XXXX 1710847586275, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586277 XXXX 1710847586277, Thread 1098: XXXX 1710847586277, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586277 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:endOfOperations +1098 1710847586277 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847586277 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847586277 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847586280 XXXX 1710847586280, Thread 1098: XXXX 1710847586280, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586281 XXXX 1710847586281, Thread 1098: XXXX 1710847586281, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586282 XXXX 1710847586282, Thread 1098: XXXX 1710847586282, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x42, ... +1098 1710847586282 XXXX 1710847586282, Thread 1098: XXXX 1710847586282, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586283 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1098 1710847586283 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847586283 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847586283 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:Calling Update on plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@658e9694 +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:Entering plug and play Update(). Attached PID = 9036 +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:Entering MPLABCommEvent handler +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:MPLABCommEvent.pid = 9036 +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:eventType = MPLABCOMM_TOOL_UNPLUGGED +105 1710847718084 GEN4_CONNECT_DIAGNOSTICS:Exiting plug and play Update() +105 1710847718597 XXXX 1710847718596, Thread 105: com.Send returned false +105 1710847718600 XXXX 1710847718600, Thread 105: execCommand: exception after writeSideChanel null +105 1710847718600 GEN4_CONNECT_DIAGNOSTICS:Before MPLABCommTool.Connect() +105 1710847718600 GEN4_CONNECT_DIAGNOSTICS:After MPLABCommTool.Connect() +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:Calling Update on plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@658e9694 +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:Entering plug and play Update(). Attached PID = 9036 +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:Entering MPLABCommEvent handler +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:MPLABCommEvent.pid = 9036 +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:eventType = MPLABCOMM_TOOL_PLUGGEDIN + +105 1710847718604 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +105 1710847718604 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +105 1710847718604 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +105 1710847718604 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +105 1710847718617 XXXX 1710847718617, Thread 105: com.Send returned false +105 1710847718617 XXXX 1710847718617, Thread 105: execCommand: exception after writeSideChanel null +105 1710847718617 GEN4_CONNECT_DIAGNOSTICS:Exiting plug and play Update() + +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:EstablishCommunincations +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@2e5a1960 +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:EstablishCommunincations +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 true +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1124 1710848256984 XXXX 1710848256984, Thread 1124: com.Send returned false +1124 1710848256984 XXXX 1710848256984, Thread 1124: execCommand: exception after writeSideChanel null diff --git a/src/global/picamp-potentiometer.h b/src/global/picamp-potentiometer.h new file mode 100644 index 0000000..a1dd2b6 --- /dev/null +++ b/src/global/picamp-potentiometer.h @@ -0,0 +1,57 @@ +#ifndef POTENTIOMETER_H +#define POTENTIOMETER_H + +#include "registers.h" +// #[declarations:adc] +typedef enum _ADCChannelSelect { + // PIC16F887 + P887A_AN00 = 0b0000, + P887A_AN01 = 0b0001, + P887A_AN02 = 0b0010, + P887A_AN03 = 0b0011, + P887A_AN04 = 0b0100, + P887A_AN05 = 0b0101, + P887A_AN06 = 0b0110, + P887A_AN07 = 0b0111, + P887A_AN08 = 0b1000, + P887A_AN09 = 0b1001, + P887A_AN10 = 0b1010, + P887A_AN11 = 0b1011, + P887A_AN12 = 0b1100, + P887A_AN13 = 0b1101, + P887A_CVREF = 0b1110, // CVREF + P887A_FXREF = 0b1111, // Fixed Ref (0.6V fixed voltage reference) + // PIC16F1829 + P1829_AN00 = 0b00000, + P1829_AN01 = 0b00001, + P1829_AN02 = 0b00010, + P1829_AN03 = 0b00011, + P1829_AN04 = 0b00100, + P1829_AN05 = 0b00101, + P1829_AN06 = 0b00110, + P1829_AN07 = 0b00111, + P1829_AN08 = 0b01000, + P1829_AN09 = 0b01001, + P1829_AN10 = 0b01010, + P1829_AN11 = 0b01011, + P1829_TEMP = 0b11101, + P1829_DACO = 0b11110, + P1829_FVRB = 0b11111, +} ADCChannelSelect; + +typedef struct _ADCPins { + Reg GOnDONE; + Reg ADRESH; + Reg ADRESL; +} ADCPins; + +ADCPins ADC; + +void init_pot(picId id, ADCChannelSelect channel); +void _pot_init_887(ADCChannelSelect channel); +void _pot_init_1829(ADCChannelSelect channel); +int read_potentiometer(void); +void populate_step_array(int *array, int size, int potLimit); +int adc_to_step(int *stepArray, int size, int deadzone); + +#endif \ No newline at end of file diff --git a/src/global/picamp-rotary.h b/src/global/picamp-rotary.h new file mode 100644 index 0000000..75d889d --- /dev/null +++ b/src/global/picamp-rotary.h @@ -0,0 +1,44 @@ +#ifndef ROTARY_H +#define ROTARY_H + +#include "registers.h" + +// intcon = 0x0B +// OPTION_REG = 0x81 +// IOCB = 0x96 +// pin 17 = int pin? + +typedef enum { ROTATE_LEFT = 1, ROTATE_RIGHT = 2 } RotaryEncoderStates; +typedef enum { + IOCRB0 = 0, + IOCRB1 = 1, + IOCRB2 = 2, + IOCRB3 = 3, + IOCRB4 = 4, + IOCRB5 = 5, + IOCRB6 = 6, + IOCRB7 = 7 +} IOCPin; + +typedef struct _Encoder { + int LastState; + int Steps; + int Input; + int min; + int max; + int stepReq; + Reg pinA; + Reg pinB; + Reg encoderRail; + picId host; +} Encoder; + +Encoder encoder = {0, 0, 0}; + +void _rot_init_887(IOCPin pinA, IOCPin pinB); +void _rot_init_1829(); +void init_rot(picId id); +//void read_rotary(char pA, char pB, char *counter, char max, char min); +int read_rotary(void); + +#endif \ No newline at end of file diff --git a/src/global/registers.c b/src/global/registers.c new file mode 100644 index 0000000..aba7580 --- /dev/null +++ b/src/global/registers.c @@ -0,0 +1,25 @@ +#include "registers.h" + +void SetReg(Reg* R, unsigned char V) { + unsigned char bitMask; + V = (unsigned char) (V << R->offset); + bitMask = (unsigned char) (((1 << R->size) - 1) << R->offset); + *(R->address) &= ~bitMask; + *(R->address) |= V & bitMask; +} + +unsigned char GetReg(Reg* R) { + unsigned char V, bitMask; + bitMask = (unsigned char) (((1 << R->size) - 1) << R->offset); + V = *(R->address) & bitMask; + V = V >> R->offset; + return V; +} + +unsigned char SetRawReg(unsigned char* address, unsigned char size, unsigned char offset, unsigned char V) { + unsigned char bitMask; + V = (unsigned char) (V << offset); + bitMask = (unsigned char) (((1 << size) - 1) << offset); + *(address) &= ~bitMask; + *(address) |= V & bitMask; +} \ No newline at end of file diff --git a/src/global/registers.h b/src/global/registers.h new file mode 100644 index 0000000..1140550 --- /dev/null +++ b/src/global/registers.h @@ -0,0 +1,19 @@ +#ifndef REGISTERS_H +#define REGISTERS_H + +typedef enum _picId { + PIC16F1829, + PIC16F887A +} picId; + +typedef struct _Reg { + unsigned char* address; + unsigned char size; + unsigned char offset; +} Reg; + +void SetReg(Reg* R, unsigned char V); +unsigned char SetRawReg(unsigned char* address, unsigned char size, unsigned char offset, unsigned char V); +unsigned char GetReg(Reg* R); + +#endif \ No newline at end of file diff --git a/picamp.X/Makefile b/src/picamp-potentiometer.X/Makefile similarity index 100% rename from picamp.X/Makefile rename to src/picamp-potentiometer.X/Makefile diff --git a/picamp-potentiometer.X/nbproject/Makefile-default.mk b/src/picamp-potentiometer.X/nbproject/Makefile-default.mk similarity index 100% rename from picamp-potentiometer.X/nbproject/Makefile-default.mk rename to src/picamp-potentiometer.X/nbproject/Makefile-default.mk diff --git a/picamp-potentiometer.X/nbproject/Makefile-genesis.properties b/src/picamp-potentiometer.X/nbproject/Makefile-genesis.properties similarity index 100% rename from picamp-potentiometer.X/nbproject/Makefile-genesis.properties rename to src/picamp-potentiometer.X/nbproject/Makefile-genesis.properties diff --git a/picamp-potentiometer.X/nbproject/Makefile-impl.mk b/src/picamp-potentiometer.X/nbproject/Makefile-impl.mk similarity index 100% rename from picamp-potentiometer.X/nbproject/Makefile-impl.mk rename to src/picamp-potentiometer.X/nbproject/Makefile-impl.mk diff --git a/picamp-potentiometer.X/nbproject/Makefile-local-default.mk b/src/picamp-potentiometer.X/nbproject/Makefile-local-default.mk similarity index 100% rename from picamp-potentiometer.X/nbproject/Makefile-local-default.mk rename to src/picamp-potentiometer.X/nbproject/Makefile-local-default.mk diff --git a/picamp-potentiometer.X/nbproject/Makefile-variables.mk b/src/picamp-potentiometer.X/nbproject/Makefile-variables.mk similarity index 100% rename from picamp-potentiometer.X/nbproject/Makefile-variables.mk rename to src/picamp-potentiometer.X/nbproject/Makefile-variables.mk diff --git a/picamp-potentiometer.X/nbproject/configurations.xml b/src/picamp-potentiometer.X/nbproject/configurations.xml similarity index 100% rename from picamp-potentiometer.X/nbproject/configurations.xml rename to src/picamp-potentiometer.X/nbproject/configurations.xml diff --git a/picamp-potentiometer.X/nbproject/private/.LCKconfigurations.xml~ b/src/picamp-potentiometer.X/nbproject/private/.LCKconfigurations.xml~ similarity index 100% rename from picamp-potentiometer.X/nbproject/private/.LCKconfigurations.xml~ rename to src/picamp-potentiometer.X/nbproject/private/.LCKconfigurations.xml~ diff --git a/picamp-potentiometer.X/nbproject/private/configurations.xml b/src/picamp-potentiometer.X/nbproject/private/configurations.xml similarity index 100% rename from picamp-potentiometer.X/nbproject/private/configurations.xml rename to src/picamp-potentiometer.X/nbproject/private/configurations.xml diff --git a/picamp-potentiometer.X/nbproject/private/private.xml b/src/picamp-potentiometer.X/nbproject/private/private.xml similarity index 100% rename from picamp-potentiometer.X/nbproject/private/private.xml rename to src/picamp-potentiometer.X/nbproject/private/private.xml diff --git a/picamp-potentiometer.X/nbproject/project.xml b/src/picamp-potentiometer.X/nbproject/project.xml similarity index 100% rename from picamp-potentiometer.X/nbproject/project.xml rename to src/picamp-potentiometer.X/nbproject/project.xml diff --git a/src/picamp-potentiometer.X/picamp-potentiometer.c b/src/picamp-potentiometer.X/picamp-potentiometer.c new file mode 100644 index 0000000..bca6eb2 --- /dev/null +++ b/src/picamp-potentiometer.X/picamp-potentiometer.c @@ -0,0 +1,113 @@ +#include "../global/picamp-potentiometer.h" +#include "../global/registers.h" +// #include + +void _pot_delay() { + unsigned char counter = 1; // Delay Cycle to achieve 500Us delay (165) + while (--counter != 0) // Delay Timing is approximately 3 (3*2*2*2=24) usec per loop + continue; // Note this routine is for 4MHz (500khz) crystal frequency +} + +void init_pot(picId id, ADCChannelSelect channel) { + switch (id) { + case PIC16F1829: _pot_init_1829(channel); break; + case PIC16F887A: _pot_init_887(channel); break; + } +} + +//todo: add tris and ansel bit fields +void _pot_init_887(ADCChannelSelect channel) { + + SetRawReg((unsigned char *)0x01F, 1, 0, 1); // ADON + SetRawReg((unsigned char *)0x01F, 4, 2, channel); // CHS + SetRawReg((unsigned char *)0x01F, 2, 6, 0b00); // ADCS + SetRawReg((unsigned char *)0x09F, 2, 4, 0b00); // VCFG + SetRawReg((unsigned char *)0x09F, 1, 7, 1); // ADFM + + ADC = (ADCPins) { + .GOnDONE = { (unsigned char*) 0x01F, 1, 1 }, + .ADRESH = { (unsigned char*) 0x01E, 8, 0 }, + .ADRESL = { (unsigned char*) 0x09E, 8, 0 }, + }; + + // Memory space is limited on the pic, so we group the registers with the same value. + // .VCFG0 = { (unsigned char*) 0x01F, 1, 4 }, + // .VCFG1 = { (unsigned char*) 0x01F, 1, 5 }, + // .ADCS = { (unsigned char*) 0x01F, 1, 6 }, + // SetReg(&ADC.ADCS, 0); + // SetReg(&ADC.VCFG0, 0); + // SetReg(&ADC.VCFG1, 0); +// .ADON = { (unsigned char*) 0x01F, 1, 0 }, +// .CHS = { (unsigned char*) 0x01F, 4, 2 }, +// .ADCS = { (unsigned char*) 0x01F, 2, 6 }, +// .VCFG = { (unsigned char*) 0x09F, 2, 4 }, +// .ADFM = { (unsigned char*) 0x09F, 1, 7 }, + + // SetRawReg((unsigned char*) 0x01F, 1, 0, 1); + +// SetReg(&ADC.ADON, 1); + SetReg(&ADC.GOnDONE, 1); +// SetReg(&ADC.CHS, channel); +// SetReg(&ADC.VCFGADCS, 0b000); +// SetReg(&ADC.ADFM, 1); +} + +void _pot_init_1829(ADCChannelSelect channel) { + + SetRawReg((unsigned char *)0x09D, 1, 0, 1); // ADON + SetRawReg((unsigned char *)0x09D, 5, 2, channel); // CHS + SetRawReg((unsigned char *)0x09E, 5, 0, 0b00000); // VCFGADCS + SetRawReg((unsigned char *)0x09E, 1, 7, 1); // ADFM + + ADC = (ADCPins) { + .GOnDONE = { (unsigned char*) 0x09D, 1, 1 }, + .ADRESH = { (unsigned char*) 0x09C, 8, 0 }, + .ADRESL = { (unsigned char*) 0x09B, 8, 0 }, + }; + + // Just like the 887, memory space is limited. Structs take up a lot of space, + // so we group the registers with the same value. + // .ADON = { (unsigned char*) 0x09D, 1, 0 }, + // .CHS = { (unsigned char*) 0x09D, 5, 2 }, + // .VCFGADCS = { (unsigned char*) 0x09E, 5, 0 }, + // .ADFM = { (unsigned char*) 0x09E, 1, 7 }, + // .VCFG0 = { (unsigned char*) 0x09E, 2, 0 }, + // .VCFG1 = { (unsigned char*) 0x09E, 1, 2 }, + // .ADCS = { (unsigned char*) 0x09E, 3, 4 }, + // SetReg(&ADC.VCFG0, 0); + // SetReg(&ADC.VCFG1, 0); + // SetReg(&ADC.ADCS, 0); + // structs are only needed for re-used values outside of this function + +// SetReg(&ADC.ADON, 1); + SetReg(&ADC.GOnDONE, 1); +// SetReg(&ADC.CHS, channel); +// SetReg(&ADC.VCFGADCS, 0b00000); +// SetReg(&ADC.ADFM, 1); +} + +void populate_step_array(int *array, int size, int potLimit) { + array[0] = potLimit / (size + 1); + for (int i = 0; i < size; i++) { + array[i] = array[0] * (i + 1); + } +} + +int read_potentiometer() { + // Wait for regulating capacitor to charge + _pot_delay(); + + // Bit 2 of `ADCON0` is set to `1`, meaning `GO` will wait until + // ADC got a signal, converted analog to digital, etc. + SetReg(&ADC.GOnDONE, 1); + while (GetReg(&ADC.GOnDONE)) continue; + + // Read the data from the potmeter pin (`E2`) registers, and combine + // them into a single integer + return (GetReg(&ADC.ADRESH) << 8 | GetReg(&ADC.ADRESL)); +} + +//todo: fix! +int adc_to_step(int *stepArray, int size, int deadzone) { + return 0; +} \ No newline at end of file diff --git a/src/picamp-rotary.X/Makefile b/src/picamp-rotary.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp-rotary.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/picamp-rotary.X/nbproject/.LCKconfigurations.xml~ b/src/picamp-rotary.X/nbproject/.LCKconfigurations.xml~ similarity index 100% rename from picamp-rotary.X/nbproject/.LCKconfigurations.xml~ rename to src/picamp-rotary.X/nbproject/.LCKconfigurations.xml~ diff --git a/picamp-rotary.X/nbproject/Makefile-default.mk b/src/picamp-rotary.X/nbproject/Makefile-default.mk similarity index 100% rename from picamp-rotary.X/nbproject/Makefile-default.mk rename to src/picamp-rotary.X/nbproject/Makefile-default.mk diff --git a/picamp-rotary.X/nbproject/Makefile-genesis.properties b/src/picamp-rotary.X/nbproject/Makefile-genesis.properties similarity index 100% rename from picamp-rotary.X/nbproject/Makefile-genesis.properties rename to src/picamp-rotary.X/nbproject/Makefile-genesis.properties diff --git a/picamp-rotary.X/nbproject/Makefile-impl.mk b/src/picamp-rotary.X/nbproject/Makefile-impl.mk similarity index 100% rename from picamp-rotary.X/nbproject/Makefile-impl.mk rename to src/picamp-rotary.X/nbproject/Makefile-impl.mk diff --git a/picamp-rotary.X/nbproject/Makefile-local-default.mk b/src/picamp-rotary.X/nbproject/Makefile-local-default.mk similarity index 100% rename from picamp-rotary.X/nbproject/Makefile-local-default.mk rename to src/picamp-rotary.X/nbproject/Makefile-local-default.mk diff --git a/picamp-rotary.X/nbproject/Makefile-variables.mk b/src/picamp-rotary.X/nbproject/Makefile-variables.mk similarity index 100% rename from picamp-rotary.X/nbproject/Makefile-variables.mk rename to src/picamp-rotary.X/nbproject/Makefile-variables.mk diff --git a/picamp-rotary.X/nbproject/configurations.xml b/src/picamp-rotary.X/nbproject/configurations.xml similarity index 100% rename from picamp-rotary.X/nbproject/configurations.xml rename to src/picamp-rotary.X/nbproject/configurations.xml diff --git a/picamp-rotary.X/nbproject/private/configurations.xml b/src/picamp-rotary.X/nbproject/private/configurations.xml similarity index 100% rename from picamp-rotary.X/nbproject/private/configurations.xml rename to src/picamp-rotary.X/nbproject/private/configurations.xml diff --git a/picamp-rotary.X/nbproject/private/private.xml b/src/picamp-rotary.X/nbproject/private/private.xml similarity index 100% rename from picamp-rotary.X/nbproject/private/private.xml rename to src/picamp-rotary.X/nbproject/private/private.xml diff --git a/picamp-rotary.X/nbproject/project.xml b/src/picamp-rotary.X/nbproject/project.xml similarity index 100% rename from picamp-rotary.X/nbproject/project.xml rename to src/picamp-rotary.X/nbproject/project.xml diff --git a/src/picamp-rotary.X/picamp-rotary.c b/src/picamp-rotary.X/picamp-rotary.c new file mode 100644 index 0000000..2dace3a --- /dev/null +++ b/src/picamp-rotary.X/picamp-rotary.c @@ -0,0 +1,115 @@ +#include "../global/picamp-rotary.h" +#include "../global/registers.h" + +void init_rot(picId id) { + switch (id) { + case PIC16F1829: _rot_init_1829(); break; + case PIC16F887A: _rot_init_887(IOCRB4, IOCRB5); break; + } + + encoder.LastState = 1; + encoder.Input = 1; + encoder.min = 0; + encoder.max = 4; + encoder.stepReq = 1; +} + + +void _rot_init_887(IOCPin pinA, IOCPin pinB) { + encoder.host = PIC16F887A; + //todo: Add anselb, trisb + SetRawReg((unsigned char*) 0x189, 1, 5, 0); // ANSEL.13 + SetRawReg((unsigned char*) 0x189, 1, 3, 0); // ANSEL.11 + SetRawReg((unsigned char*) 0x086, 1, 4, 1); // TRISB.4 + SetRawReg((unsigned char*) 0x086, 1, 5, 1); // TRISB.5 + + encoder.encoderRail = (Reg) { (unsigned char*) 0x006, 8, 0 }; + + SetRawReg((unsigned char*) 0x00B, 2, 3, 0b11); // RBIE, INTE + SetRawReg((unsigned char*) 0x00B, 2, 6, 0b11); // GIE, PEIE + SetRawReg((unsigned char*) 0x096, 1, pinA, 1); // IOC Pin A + SetRawReg((unsigned char*) 0x096, 1, pinB, 1); // IOC Pin B + SetRawReg((unsigned char*) 0x081, 1, 6, 0); // INTEDG + + encoder.pinA = (Reg) { (unsigned char*) 0x006, 1, 4 }; + encoder.pinB = (Reg) { (unsigned char*) 0x006, 1, 5 }; + // ROT = (ROTPins) { + // .RBIEINTE = { (unsigned char*) 0x00B, 2, 3 }, + // .RBIE = { (unsigned char*) 0x00B, 1, 3 }, + // .INTE = { (unsigned char*) 0x00B, 1, 4 }, + // .GIEPEIE = { (unsigned char*) 0x00B, 2, 6 }, + // .PEIE = { (unsigned char*) 0x00B, 1, 6 }, + // .GIE = { (unsigned char*) 0x00B, 1, 7 }, + // .IOCBA = { (unsigned char*) 0x096, 1, pinA }, // 0x0D + // .IOCBB = { (unsigned char*) 0x096, 1, pinB }, + // .INTEDG = { (unsigned char*) 0x081, 1, 6 }, + // .PORTB = { (unsigned char*) 0x106, 8, 0 }, + // .INTF = { (unsigned char*) 0x00B, 1, 1 }, + // .RBIF = { (unsigned char*) 0x00B, 1, 0 } + // }; + + // SetReg(&ROT.INTF, 0); + // SetReg(&ROT.RBIF, 0); + + // SetReg(&ROT.GIEPEIE, 0b11); + // SetReg(&ROT.RBIEINTE, 0b11); + // SetReg(&ROT.GIE, 1); + // SetReg(&ROT.INTE, 1); + // SetReg(&ROT.PEIE, 1); + // SetReg(&ROT.RBIE, 1); + // SetReg(&ROT.IOCBA, 1); + // SetReg(&ROT.IOCBB, 1); + // SetReg(&ROT.INTEDG, 0); + +} + +void _rot_init_1829() { + SetRawReg((unsigned char *)0x18C, 1, 0, 0); // ANSELA.0 + SetRawReg((unsigned char *)0x18C, 1, 1, 0); // ANSELA.1 + + SetRawReg((unsigned char *)0x08C, 1, 0, 1); // TRISA.0 + SetRawReg((unsigned char *)0x08C, 1, 1, 1); // TRISA.1 + + SetRawReg((unsigned char *)0x391, 1, 0, 1); // IOCAP.0 + SetRawReg((unsigned char *)0x391, 1, 1, 1); // IOCAP.1 + + SetRawReg((unsigned char *)0x00B, 1, 3, 1); // IOCIE + SetRawReg((unsigned char *)0x00B, 1, 4, 1); // INTE + SetRawReg((unsigned char *)0x00B, 1, 6, 1); // PEIE + SetRawReg((unsigned char *)0x00B, 1, 7, 1); // GIE + + encoder.pinA = (Reg) { (unsigned char*) 0x00C, 1, 0 }; + encoder.pinB = (Reg) { (unsigned char*) 0x00C, 1, 1 }; +} + +int read_rotary(void) { + // Only check for a change in the CLK pin to identify "full click" + int a = GetReg(&encoder.pinA); + + // If state changed, a movement is registered + if (a != encoder.LastState) { + int b = GetReg(&encoder.pinB); + + if (b != a) encoder.Steps++; // Clockwise + else encoder.Steps--; // Anti-clockwise + + // Only change counter if correct amount of clicks have been registered + if (encoder.Steps > (encoder.stepReq * 2)) { + encoder.Input++; + encoder.Steps = 0; + } else if (encoder.Steps < (-(encoder.stepReq * 2))) { + encoder.Input--; + encoder.Steps = 0; + } + + // Adjust counter for boundaries + if (encoder.Input < encoder.min) encoder.Input = encoder.max; + else if (encoder.Input > encoder.max) encoder.Input = encoder.min; + + encoder.LastState = a; + } + + if (encoder.host == PIC16F887A) SetReg(&encoder.encoderRail, GetReg(&encoder.encoderRail)); + + return encoder.Input; +} \ No newline at end of file diff --git a/src/picamp.X/Makefile b/src/picamp.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/src/picamp.X/config.h b/src/picamp.X/config.h new file mode 100644 index 0000000..2378569 --- /dev/null +++ b/src/picamp.X/config.h @@ -0,0 +1,104 @@ +#ifndef CONFIG_H +#define CONFIG_H + +// PIC16F887 Configuration Bit Settings +// #pragma config statements should precede project file includes. +#pragma config FOSC = INTRC_NOCLKOUT // Oscillator Selection bits (INTOSCIO oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN) +#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled and can be enabled by SWDTEN bit of the WDTCON register) +#pragma config PWRTE = ON // Power-up Timer Enable bit (PWRT disabled) +#pragma config MCLRE = OFF // RE3/MCLR pin function select bit (RE3/MCLR pin function is digital input, MCLR internally tied to VDD) +#pragma config CP = OFF // Code Protection bit (Program memory code protection is disabled) +#pragma config CPD = OFF // Data Code Protection bit (Data memory code protection is disabled) +#pragma config BOREN = ON // Brown Out Reset Selection bits (BOR enabled) +#pragma config IESO = OFF // Internal External Switchover bit (Internal/External Switchover mode is disabled) +#pragma config FCMEN = OFF // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is disabled) +#pragma config LVP = OFF // Low Voltage Programming Enable bit (RB3 pin has digital I/O, HV on MCLR must be used for programming) +#pragma config BOR4V = BOR21V // Brown-out Reset Selection bit (Brown-out Reset set to 4.0V) +#pragma config WRT = OFF // Flash Program Memory Self Write Enable bits (Write protection off) + +// Used by the XC8 delay_ms(x) macro +#define _XTAL_FREQ 8000000 + +#define LED_AMOUNT 4 + +#define POT_LIMIT 1023 +#define DEADZONE 2 + +#include +#include "./libs/HCMS2913.X/h/HCMS2913.h" +#include "./libs/global/picamp-potentiometer.h" +#include "./libs/global/picamp-rotary.h" +#include "./libs/IR_LIB/IRLib_v7.X/IRLib_v7.h" + +//P moves right, M moves left +#define MOTOR_P PORTCbits.RC1 +#define MOTOR_Ptris TRISCbits.TRISC1 +#define MOTOR_M PORTCbits.RC0 +#define MOTOR_Mtris TRISCbits.TRISC0 + +#define LED1 PORTAbits.RA0 +#define LED2 PORTAbits.RA1 +#define LED3 PORTAbits.RA2 +#define LED4 PORTAbits.RA3 + +char selLoadString[8] = "SEL. 00"; +char volLoadString[8] = "VOL. 000"; + +//The screen on the right uses portc +const HCMS_settings screenSettings_1 = { + 1, + //spi buffer + &SSPBUF, + {&SSPCON, 0}, + {&SSPSTAT, 0}, + //spi data + {&PORTC, 3}, + {&TRISC, 4}, //SDI + {&TRISC, 5}, + {&TRISC, 3}, + //spi int + {&PIE1, 3}, + {&PIR1, 3}, + //spi settings + {&SSPCON, 4}, + {&SSPSTAT, 6}, + {&SSPCON, 5}, + {&SSPSTAT, 7}, + //screen pins + {&PORTC, 2}, + {&PORTC, 6}, + {&PORTC, 4}, + {&PORTC, 7} +}; + +const HCMS_settings screenSettings_2 = { + 1, + //spi buffer + &SSPBUF, + {&SSPCON, 0}, + {&SSPSTAT, 0}, + //spi data + {&PORTC, 3}, + {&TRISC, 4}, //SDI + {&TRISC, 5}, + {&TRISC, 3}, + //spi int + {&PIE1, 3}, + {&PIR1, 3}, + //spi settings + {&SSPCON, 4}, + {&SSPSTAT, 6}, + {&SSPCON, 5}, + {&SSPSTAT, 7}, + //screen pins + {&PORTD, 2}, + {&PORTD, 6}, + {&PORTD, 4}, + {&PORTD, 7} +}; + +#define _MTPR 211 +#define _MTPrSc 0b01 +#define _MTPoSc 0b0001 +#define _TTPrSc 0b11 +#endif diff --git a/src/picamp.X/libs/887demonstration.X/Makefile b/src/picamp.X/libs/887demonstration.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/picamp.X/include/config.h b/src/picamp.X/libs/887demonstration.X/config.h similarity index 62% rename from picamp.X/include/config.h rename to src/picamp.X/libs/887demonstration.X/config.h index ab30f18..c8437cd 100644 --- a/picamp.X/include/config.h +++ b/src/picamp.X/libs/887demonstration.X/config.h @@ -1,9 +1,6 @@ #ifndef CONFIG_H #define CONFIG_H -// PIC hardware mapping -#include - // PIC16F887 Configuration Bit Settings // #pragma config statements should precede project file includes. #pragma config FOSC = INTRC_NOCLKOUT // Oscillator Selection bits (INTOSCIO oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN) @@ -22,48 +19,9 @@ // Used by the XC8 delay_ms(x) macro #define _XTAL_FREQ 500000 -#define REA PORTBbits.RB4 -#define REB PORTBbits.RB5 - -#define NPN -#define PIC887A - -#define ENABLED 1 -#define DISABLED 0 - #define LED_AMOUNT 4 -#define POT_STEP_AMOUNT 10 #define POT_LIMIT 1023 -#define DEADZONE 15 - -#define SCK_PIN PORTCbits.RC3 -#define SDO_DDIR TRISCbits.TRISC5 // DDIR = Data DIRection -#define SDI_DDIR TRISCbits.TRISC4 -#define SCK_DDIR TRISCbits.TRISC3 -#define SSPM SSPCONbits.SSPM - -char selLoadString[8] = "SEL. 00"; -char volLoadString[8] = "VOL. 000"; -char volumeBuffer[40]; -char selectBuffer[40]; - - -//screen 1, right side -#define RESET_1 PORTCbits.RC2 -#define CENABLE_1 PORTCbits.RC4 -#define BLANK_1 PORTCbits.RC6 -#define RSELECT_1 PORTCbits.RC7 - -#define RESET_PINNUM 2 -#define CENABLE_PINNUM 4 -#define BLANK_PINNUM 6 -#define RSELECT_PINNUM 7 - -//screen 2, left side -#define RESET_2 PORTDbits.RD2 -#define CENABLE_2 PORTDbits.RD4 -#define BLANK_2 PORTDbits.RD6 -#define RSELECT_2 PORTDbits.RD7 +#define DEADZONE 2 #endif diff --git a/src/picamp.X/libs/887demonstration.X/main.c b/src/picamp.X/libs/887demonstration.X/main.c new file mode 100644 index 0000000..2af629f --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/main.c @@ -0,0 +1,87 @@ +#include "./config.h" + +#include +#include "../global/picamp-potentiometer.h" +#include "../global/picamp-rotary.h" + +// Function declarations +void pic_init(void); +void init_gpio(void); +void init_osc(void); +void pic_loop(void); + +int count = 0; + +void main(void) { + // Do all initialisation here + pic_init(); + // Start indefinite program loop + pic_loop(); +} + +void pic_loop(void) { + // Initialize potentiometer step array + int stepArray[LED_AMOUNT] = { 0 }; + populate_step_array(stepArray, LED_AMOUNT, POT_LIMIT); + + while (1) { + // Do not display the LEDs if input selector is > 0 + if (count != 0) continue; + // Parse result from potentiometer + int result = read_potentiometer(); + // Read the data from the potmeter pin (`E2`) registers, and combine + // them into a single integer + // Loop through all `stepArray`, check if the output of the potmeter + // (on `ADRES`) falls inbetween the steps - `DEADZONE`, if so execute + // An OR/AND bitshift operation in order to turn on the corresponding + // LED on `PORTA`. + for (int i = 0; i < LED_AMOUNT; i++) { + if (result > (stepArray[i] - DEADZONE)) { + PORTA = (unsigned char)(PORTA & ~(1 << i)); + } else if (result <= (stepArray[i] - DEADZONE)) { + PORTA = (unsigned char)(PORTA | (1 << i)); + } + } + // int step = adc_to_step(*stepArray, LED_AMOUNT, DEADZONE); + // PORTA = (unsigned char)(PORTA | (1 << step)); + } +} + +void pic_init(void) { + init_osc(); + init_pot(PIC16F887A, P887A_AN07); + init_rot(PIC16F887A); + init_gpio(); +} + +// #[initialisation:gpio] +void init_gpio(void) { + // LED => output, digital (transistors) + TRISA = 0x00; + PORTA = 0xFF; + ANSEL = 0; +} + +// #[initialisation:osc] +void init_osc(void) { + // System Clock Select (SCS) + OSCCONbits.SCS = 0b1; // Internal Clock selected + // Internal Resistor-Capacitor Frequency select (IRCF) + OSCCONbits.IRCF = 0b011; // 500 kHz clock speed + OSCCONbits.OSTS = 0b1; // OSC startup time + + // Halt boot until clock is stable + while (OSCCONbits.HTS != 0b1); +} + +// #[routine:interrupt_service] +void __interrupt() isr(void) { + if (INTCONbits.RBIF == 1) { + // Parse rotary changes into `count`, shift it into `PORTA` + count = read_rotary(); + PORTA = (unsigned char)(~(1 << count)); + + // Clear the Port B change interrupt flag + INTCONbits.RBIF = 0; + } +} diff --git a/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-default.mk b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..6ca2286 --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-default.mk @@ -0,0 +1,162 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=mkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=elf +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=hex +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=main.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/main.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/main.p1 + +# Source Files +SOURCEFILES=main.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F887 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=pickit5 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: link +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../new-potlib.X/dist/default/debug/new-potlib.X.a ../new-rotlib.X/dist/default/debug/new-rotlib.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.map -D__DEBUG=1 -mdebugger=pickit5 -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -mrom=default,-1f00-1ffe -mram=default,-0-0,-70-70,-80-80,-f0-f0,-100-100,-170-170,-180-180,-1e5-1f0 $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ../new-potlib.X/dist/default/debug/new-potlib.X.a ../new-rotlib.X/dist/default/debug/new-rotlib.X.a + @${RM} ${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.hex + + +else +${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../new-potlib.X/dist/default/production/new-potlib.X.a ../new-rotlib.X/dist/default/production/new-rotlib.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.map -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/887demonstration.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ../new-potlib.X/dist/default/production/new-potlib.X.a ../new-rotlib.X/dist/default/production/new-rotlib.X.a + + +endif + + +# Subprojects +.build-subprojects: + cd ../new-potlib.X && ${MAKE} -f Makefile CONF=default + cd ../new-rotlib.X && ${MAKE} -f Makefile CONF=default + + +# Subprojects +.clean-subprojects: + cd ../new-potlib.X && rm -rf "build/default" "dist/default" + cd ../new-rotlib.X && rm -rf "build/default" "dist/default" + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-genesis.properties b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..c8e994b --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Thu Mar 28 15:09:41 CET 2024 +default.languagetoolchain.version=2.46 +default.Pack.dfplocation=/home/burhan/.mchp_packs/Microchip/PIC16Fxxx_DFP/1.4.149 +default.com-microchip-mplab-mdbcore-PK5Tool-PK5ToolImpl.md5=8ed9aa4326bfc0c1a849e697826741b7 +conf.ids=default +default.languagetoolchain.dir=/home/burhan/.local/share/microchip/xc8/v2.46/bin +host.id=1odb-89vf-4o +configurations-xml=3c69dd47796b61a74071670903c16b5b +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=f612087c95360c842296d189edfe3321 +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=bf89cdcdd6c0a49174fe4b605ef2b42d +proj.dir=/home/burhan/Desktop/PROJ ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/887demonstration.X +host.platform=linux diff --git a/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-impl.mk b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..73fd138 --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=887demonstration.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/picamp.X/nbproject/Makefile-local-default.mk b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-local-default.mk similarity index 97% rename from picamp.X/nbproject/Makefile-local-default.mk rename to src/picamp.X/libs/887demonstration.X/nbproject/Makefile-local-default.mk index 305de11..33e01a1 100644 --- a/picamp.X/nbproject/Makefile-local-default.mk +++ b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-local-default.mk @@ -33,3 +33,4 @@ MP_CC_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" MP_AS_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" MP_LD_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" MP_AR_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +DFP_DIR=/home/burhan/.mchp_packs/Microchip/PIC16Fxxx_DFP/1.4.149 diff --git a/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-variables.mk b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..984bf92 --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=887demonstration.X.production.hex +CND_ARTIFACT_PATH_default=dist/default/production/887demonstration.X.production.hex diff --git a/picamp.X/nbproject/configurations.xml b/src/picamp.X/libs/887demonstration.X/nbproject/configurations.xml similarity index 72% rename from picamp.X/nbproject/configurations.xml rename to src/picamp.X/libs/887demonstration.X/nbproject/configurations.xml index 6944ca5..d39b246 100644 --- a/picamp.X/nbproject/configurations.xml +++ b/src/picamp.X/libs/887demonstration.X/nbproject/configurations.xml @@ -4,14 +4,9 @@ - - include/config.h - include/initialisation.h - include/rotary_encoder.h - include/potentiometer.h - include/HCMS2913.h - include/ascii.h - + config.h + ../global/picamp-potentiometer.h + ../global/picamp-rotary.h - - src/initialisation.c - src/main.c - src/HCMS2913.c - + main.c + ../new-potlib.X . + ../global Makefile @@ -43,10 +36,10 @@ PIC16F887 - pk4hybrid + PK5Tool XC8 2.46 - 2 + 3 @@ -57,37 +50,37 @@ - + OP="dist/default/production/new-potlib.X.a" + DOP="dist/default/debug/new-potlib.X.a" + FL="dist/default/production/new-potlib.X.a" + PD="dist/default/production/new-potlib.X.a" + DD="dist/default/debug/new-potlib.X.a"> - + OP="dist/default/production/new-rotlib.X.a" + DOP="dist/default/debug/new-rotlib.X.a" + FL="dist/default/production/new-rotlib.X.a" + PD="dist/default/production/new-rotlib.X.a" + DD="dist/default/debug/new-rotlib.X.a"> @@ -227,9 +220,7 @@ - - + @@ -272,11 +263,9 @@ - - @@ -293,9 +282,7 @@ - - + @@ -306,14 +293,11 @@ - - @@ -347,72 +331,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/picamp.X/libs/887demonstration.X/nbproject/private/configurations.xml b/src/picamp.X/libs/887demonstration.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..bc01067 --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + :=MPLABComm-USB-Microchip:=<vid>04D8:=<pid>9036:=<rev>0100:=<man>Microchip Technology Incorporated:=<prod>MPLAB PICkit 5:=<sn>020026702RYN005435:=<drv>x:=<xpt>b:=end + /home/burhan/.local/share/microchip/xc8/v2.46/bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/src/picamp.X/libs/887demonstration.X/nbproject/private/private.xml b/src/picamp.X/libs/887demonstration.X/nbproject/private/private.xml new file mode 100644 index 0000000..6807a2b --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/nbproject/private/private.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/picamp.X/libs/887demonstration.X/nbproject/project.xml b/src/picamp.X/libs/887demonstration.X/nbproject/project.xml new file mode 100644 index 0000000..411a56d --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/nbproject/project.xml @@ -0,0 +1,30 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + 887demonstration + 189ceae8-574f-4402-aade-2932cf45a0a7 + 0 + ISO-8859-1 + + ../new-potlib.X + ../new-rotlib.X + + + ../new-potlib.X + . + ../global + + + + default + 2 + + + + false + + + + diff --git a/src/picamp.X/libs/887demonstration.X/queuelogs/debugtool b/src/picamp.X/libs/887demonstration.X/queuelogs/debugtool new file mode 100644 index 0000000..2759a99 --- /dev/null +++ b/src/picamp.X/libs/887demonstration.X/queuelogs/debugtool @@ -0,0 +1,1038 @@ +1060 1710847534790 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000 +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 0, Type = Cfg, Mask = 00000000 +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = ff, Buffer Length = 0, Type = EEData, Mask = 00000000 +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2000, End = 2003, Buffer Length = 0, Type = UserID, Mask = 00000000 +1060 1710847534801 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847534801 XXXX 1710847534801, Thread 1060: XXXX 1710847534801, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534803 XXXX 1710847534803, Thread 1060: XXXX 1710847534803, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534803 XXXX 1710847534803, Thread 1060: XXXX 1710847534803, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534804 XXXX 1710847534804, Thread 1060: XXXX 1710847534804, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534804 XXXX 1710847534804, Thread 1060: XXXX 1710847534804, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534805 XXXX 1710847534805, Thread 1060: XXXX 1710847534805, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534805 XXXX 1710847534805, Thread 1060: XXXX 1710847534805, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534835 XXXX 1710847534835, Thread 1060: XXXX 1710847534835, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534835 XXXX 1710847534835, Thread 1060: XXXX 1710847534835, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534836 XXXX 1710847534836, Thread 1060: XXXX 1710847534836, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534837 XXXX 1710847534837, Thread 1060: XXXX 1710847534836, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534837 XXXX 1710847534837, Thread 1060: XXXX 1710847534837, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534838 XXXX 1710847534838, Thread 1060: XXXX 1710847534838, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534838 XXXX 1710847534838, Thread 1060: XXXX 1710847534838, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534838 XXXX 1710847534838, Thread 1060: XXXX 1710847534838, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534868 XXXX 1710847534868, Thread 1060: XXXX 1710847534868, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534868 XXXX 1710847534868, Thread 1060: XXXX 1710847534868, Entering Thread 1060: Commands::runScriptBasic, script name = EraseChip, timeOut = 30000 ms +1060 1710847534875 XXXX 1710847534875, Thread 1060: XXXX 1710847534875, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534875 XXXX 1710847534875, Thread 1060: XXXX 1710847534875, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847534877 XXXX 1710847534877, Thread 1060: XXXX 1710847534877, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534877 XXXX 1710847534877, Thread 1060: XXXX 1710847534877, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534878 XXXX 1710847534878, Thread 1060: XXXX 1710847534878, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534878 XXXX 1710847534878, Thread 1060: XXXX 1710847534878, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534879 XXXX 1710847534879, Thread 1060: XXXX 1710847534879, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534879 XXXX 1710847534879, Thread 1060: XXXX 1710847534879, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534880 XXXX 1710847534880, Thread 1060: XXXX 1710847534880, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534880 XXXX 1710847534880, Thread 1060: XXXX 1710847534880, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534910 XXXX 1710847534910, Thread 1060: XXXX 1710847534910, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534910 XXXX 1710847534910, Thread 1060: XXXX 1710847534910, Entering Thread 1060: Commands::runScriptBasic, script name = EraseDataEEmem, timeOut = 30000 ms +1060 1710847534917 XXXX 1710847534917, Thread 1060: XXXX 1710847534917, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534917 XXXX 1710847534917, Thread 1060: XXXX 1710847534917, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847534919 XXXX 1710847534919, Thread 1060: XXXX 1710847534919, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1060 1710847534919 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847534919 XXXX 1710847534919, Thread 1060: XXXX 1710847534919, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534921 XXXX 1710847534921, Thread 1060: XXXX 1710847534921, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534921 XXXX 1710847534921, Thread 1060: XXXX 1710847534921, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534922 XXXX 1710847534922, Thread 1060: XXXX 1710847534922, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534922 XXXX 1710847534922, Thread 1060: XXXX 1710847534922, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534922 XXXX 1710847534922, Thread 1060: XXXX 1710847534922, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534922 XXXX 1710847534922, Thread 1060: XXXX 1710847534922, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534952 XXXX 1710847534952, Thread 1060: XXXX 1710847534952, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534953 XXXX 1710847534953, Thread 1060: XXXX 1710847534953, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847534953 XXXX 1710847534953, Thread 1060: XXXX 1710847534953, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534953 XXXX 1710847534953, Thread 1060: XXXX 1710847534953, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847534954 XXXX 1710847534954, Thread 1060: XXXX 1710847534954, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534954 XXXX 1710847534954, Thread 1060: XXXX 1710847534954, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847534955 XXXX 1710847534955, Thread 1060: XXXX 1710847534955, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534955 XXXX 1710847534955, Thread 1060: XXXX 1710847534955, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847534985 XXXX 1710847534985, Thread 1060: XXXX 1710847534985, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847534985 XXXX 1710847534985, Thread 1060: XXXX 1710847534985, Entering Thread 1060: Commands::runScriptWithDownload, script name = WriteConfigmem +1060 1710847534999 XXXX 1710847534999, Thread 1060: XXXX 1710847534999, Exiting Thread 1060: Commands::runScriptWithDownload(WriteConfigmem) +1060 1710847534999 XXXX 1710847534999, Thread 1060: XXXX 1710847534999, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535001 XXXX 1710847535001, Thread 1060: XXXX 1710847535001, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535001 XXXX 1710847535001, Thread 1060: XXXX 1710847535001, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535002 XXXX 1710847535002, Thread 1060: XXXX 1710847535002, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535002 XXXX 1710847535002, Thread 1060: XXXX 1710847535002, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535003 XXXX 1710847535003, Thread 1060: XXXX 1710847535003, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535003 XXXX 1710847535003, Thread 1060: XXXX 1710847535003, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535004 XXXX 1710847535004, Thread 1060: XXXX 1710847535004, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535004 XXXX 1710847535004, Thread 1060: XXXX 1710847535004, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535033 XXXX 1710847535033, Thread 1060: XXXX 1710847535033, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535033 XXXX 1710847535033, Thread 1060: XXXX 1710847535033, Entering Thread 1060: Commands::runScriptWithUpload, script name = ReadConfigmem +1060 1710847535033 XXXX 1710847535033, Thread 1060: XXXX 1710847535033, Entering Thread 1060: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1060 1710847535036 XXXX 1710847535036, Thread 1060: XXXX 1710847535036, Exiting Thread 1060: ToolCommUsb::readTransfer, cr.status = 0x0 +1060 1710847535036 XXXX 1710847535036, Thread 1060: XXXX 1710847535036, Exiting Thread 1060: Commands::runScriptWithUpload +1060 1710847535036 XXXX 1710847535036, Thread 1060: XXXX 1710847535036, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535038 XXXX 1710847535038, Thread 1060: XXXX 1710847535038, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535038 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1060 1710847535038 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847535038 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847535038 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 65f, Buffer Length = 3264, Type = Pgm, Mask = 00000000 +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1060 1710847535040 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847535040 XXXX 1710847535040, Thread 1060: XXXX 1710847535040, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535041 XXXX 1710847535041, Thread 1060: XXXX 1710847535041, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535041 XXXX 1710847535041, Thread 1060: XXXX 1710847535041, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535042 XXXX 1710847535042, Thread 1060: XXXX 1710847535042, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535042 XXXX 1710847535042, Thread 1060: XXXX 1710847535042, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535043 XXXX 1710847535043, Thread 1060: XXXX 1710847535043, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535043 XXXX 1710847535043, Thread 1060: XXXX 1710847535043, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535073 XXXX 1710847535073, Thread 1060: XXXX 1710847535073, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535073 XXXX 1710847535073, Thread 1060: XXXX 1710847535073, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535075 XXXX 1710847535075, Thread 1060: XXXX 1710847535075, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535075 XXXX 1710847535075, Thread 1060: XXXX 1710847535075, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535076 XXXX 1710847535076, Thread 1060: XXXX 1710847535076, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535076 XXXX 1710847535076, Thread 1060: XXXX 1710847535076, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535076 XXXX 1710847535076, Thread 1060: XXXX 1710847535076, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535077 XXXX 1710847535077, Thread 1060: XXXX 1710847535077, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535106 XXXX 1710847535106, Thread 1060: XXXX 1710847535106, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535106 XXXX 1710847535106, Thread 1060: XXXX 1710847535106, Entering Thread 1060: Commands::runScriptWithDownload, script name = WriteProgmem +1060 1710847535795 XXXX 1710847535795, Thread 1060: XXXX 1710847535795, Exiting Thread 1060: Commands::runScriptWithDownload(WriteProgmem) +1060 1710847535795 XXXX 1710847535795, Thread 1060: XXXX 1710847535795, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535796 XXXX 1710847535796, Thread 1060: XXXX 1710847535796, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535796 XXXX 1710847535796, Thread 1060: XXXX 1710847535796, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535797 XXXX 1710847535797, Thread 1060: XXXX 1710847535797, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535797 XXXX 1710847535797, Thread 1060: XXXX 1710847535797, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535798 XXXX 1710847535798, Thread 1060: XXXX 1710847535798, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535798 XXXX 1710847535798, Thread 1060: XXXX 1710847535798, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535799 XXXX 1710847535799, Thread 1060: XXXX 1710847535799, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535799 XXXX 1710847535799, Thread 1060: XXXX 1710847535799, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535829 XXXX 1710847535829, Thread 1060: XXXX 1710847535829, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535829 XXXX 1710847535829, Thread 1060: XXXX 1710847535829, Entering Thread 1060: Commands::runScriptWithUpload, script name = ReadProgmem +1060 1710847535829 XXXX 1710847535829, Thread 1060: XXXX 1710847535829, Entering Thread 1060: ToolCommUsb::readTransfer, sideData is 0x3d bytes long, transferDataLength is 0xcc0 bytes long +1060 1710847535902 XXXX 1710847535902, Thread 1060: XXXX 1710847535902, Exiting Thread 1060: ToolCommUsb::readTransfer, cr.status = 0x0 +1060 1710847535902 XXXX 1710847535902, Thread 1060: XXXX 1710847535902, Exiting Thread 1060: Commands::runScriptWithUpload +1060 1710847535903 XXXX 1710847535903, Thread 1060: XXXX 1710847535903, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535904 XXXX 1710847535904, Thread 1060: XXXX 1710847535904, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535905 XXXX 1710847535905, Thread 1060: XXXX 1710847535905, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535905 XXXX 1710847535905, Thread 1060: XXXX 1710847535905, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535905 XXXX 1710847535905, Thread 1060: XXXX 1710847535905, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535906 XXXX 1710847535906, Thread 1060: XXXX 1710847535906, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535907 XXXX 1710847535907, Thread 1060: XXXX 1710847535907, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535907 XXXX 1710847535907, Thread 1060: XXXX 1710847535907, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535908 XXXX 1710847535908, Thread 1060: XXXX 1710847535907, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535937 XXXX 1710847535937, Thread 1060: XXXX 1710847535937, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535937 XXXX 1710847535937, Thread 1060: XXXX 1710847535937, Entering Thread 1060: Commands::runScriptWithDownload, script name = WriteConfigmem +1060 1710847535952 XXXX 1710847535952, Thread 1060: XXXX 1710847535952, Exiting Thread 1060: Commands::runScriptWithDownload(WriteConfigmem) +1060 1710847535952 XXXX 1710847535952, Thread 1060: XXXX 1710847535952, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535953 XXXX 1710847535953, Thread 1060: XXXX 1710847535953, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535954 XXXX 1710847535954, Thread 1060: XXXX 1710847535954, Entering Thread 1060: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1060 1710847535954 XXXX 1710847535954, Thread 1060: XXXX 1710847535954, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535955 XXXX 1710847535955, Thread 1060: XXXX 1710847535955, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1060 1710847535955 XXXX 1710847535955, Thread 1060: XXXX 1710847535955, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535956 XXXX 1710847535956, Thread 1060: XXXX 1710847535956, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1060 1710847535956 XXXX 1710847535956, Thread 1060: XXXX 1710847535956, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535957 XXXX 1710847535957, Thread 1060: XXXX 1710847535957, Entering Thread 1060: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1060 1710847535987 XXXX 1710847535987, Thread 1060: XXXX 1710847535987, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535987 XXXX 1710847535987, Thread 1060: XXXX 1710847535987, Entering Thread 1060: Commands::runScriptWithUpload, script name = ReadConfigmem +1060 1710847535987 XXXX 1710847535987, Thread 1060: XXXX 1710847535987, Entering Thread 1060: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1060 1710847535990 XXXX 1710847535990, Thread 1060: XXXX 1710847535990, Exiting Thread 1060: ToolCommUsb::readTransfer, cr.status = 0x0 +1060 1710847535990 XXXX 1710847535990, Thread 1060: XXXX 1710847535990, Exiting Thread 1060: Commands::runScriptWithUpload +1060 1710847535990 XXXX 1710847535990, Thread 1060: XXXX 1710847535990, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535992 XXXX 1710847535992, Thread 1060: XXXX 1710847535992, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:endOfOperations +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 null +1060 1710847535992 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847535992 XXXX 1710847535992, Thread 1060: XXXX 1710847535992, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535993 XXXX 1710847535993, Thread 1060: XXXX 1710847535993, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535993 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:endOfOperations +1060 1710847535993 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847535993 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847535993 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true +1060 1710847535996 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1060 1710847535996 XXXX 1710847535996, Thread 1060: XXXX 1710847535996, Entering Thread 1060: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1060 1710847535998 XXXX 1710847535998, Thread 1060: XXXX 1710847535998, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535998 XXXX 1710847535998, Thread 1060: XXXX 1710847535998, Entering Thread 1060: Commands::runScriptBasic with script contents. contents[0] = 0x42, ... +1060 1710847535999 XXXX 1710847535999, Thread 1060: XXXX 1710847535999, Exiting Thread 1060: Commands::runScriptBasic +1060 1710847535999 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1060 1710847535999 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1060 1710847535999 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1060 1710847535999 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:EstablishCommunincations +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@2e5a1960 +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:EstablishCommunincations +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 true +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +1074 1710847555172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:GetFirmwareInfo +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: Values: +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.00.84, fpgaVer = ff.ff.ff, scriptVer = 00.05.85, macAddress = 0504883548174844852485054485057, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN005435, appCommitID = null, scriptCommitID = d33d758f73, PCB_ID = 2 +1074 1710847555180 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End +1074 1710847555180 XXXX 1710847555180, Thread 1074: XXXX 1710847555180, Entering Thread 1074: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ... +1074 1710847555180 XXXX 1710847555180, Thread 1074: XXXX 1710847555180, Entering Thread 1074: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long +1074 1710847555183 XXXX 1710847555183, Thread 1074: XXXX 1710847555183, Exiting Thread 1074: ToolCommUsb::readTransfer, cr.status = 0x0 +1074 1710847555183 XXXX 1710847555183, Thread 1074: XXXX 1710847555183, Exiting Thread 1074: Commands::runScriptWithUpload + +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetPowerInfo +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: Values: +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: shotDownSystem = false, isToolPower = true, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = false, useMaintainActivePower = false +1074 1710847555183 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555183 XXXX 1710847555183, Thread 1074: XXXX 1710847555183, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x39, ... +1074 1710847555184 XXXX 1710847555184, Thread 1074: XXXX 1710847555184, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555184 XXXX 1710847555184, Thread 1074: XXXX 1710847555184, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x46, ... +1074 1710847555185 XXXX 1710847555185, Thread 1074: XXXX 1710847555185, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555185 XXXX 1710847555185, Thread 1074: XXXX 1710847555185, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x44, ... +1074 1710847555198 XXXX 1710847555198, Thread 1074: XXXX 1710847555198, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555198 XXXX 1710847555198, Thread 1074: XXXX 1710847555198, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x40, ... +1074 1710847555378 XXXX 1710847555378, Thread 1074: XXXX 1710847555378, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555378 XXXX 1710847555378, Thread 1074: XXXX 1710847555378, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x47, ... +1074 1710847555383 XXXX 1710847555383, Thread 1074: XXXX 1710847555383, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetPowerInfo +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetLEDBrightness +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 5 +1074 1710847555383 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555383 XXXX 1710847555383, Thread 1074: XXXX 1710847555383, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ... +1074 1710847555384 XXXX 1710847555384, Thread 1074: XXXX 1710847555384, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetLEDBrightness +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetToolInfo +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: Values: +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2 +1074 1710847555384 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1074 1710847555384 XXXX 1710847555384, Thread 1074: XXXX 1710847555384, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x27, ... +1074 1710847555385 XXXX 1710847555385, Thread 1074: XXXX 1710847555385, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555385 XXXX 1710847555385, Thread 1074: XXXX 1710847555385, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555386 XXXX 1710847555386, Thread 1074: XXXX 1710847555386, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555386 XXXX 1710847555386, Thread 1074: XXXX 1710847555386, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555387 XXXX 1710847555387, Thread 1074: XXXX 1710847555387, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555387 XXXX 1710847555387, Thread 1074: XXXX 1710847555387, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555388 XXXX 1710847555388, Thread 1074: XXXX 1710847555388, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555388 XXXX 1710847555388, Thread 1074: XXXX 1710847555388, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xd4, ... +1074 1710847555388 XXXX 1710847555388, Thread 1074: XXXX 1710847555388, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555388 XXXX 1710847555388, Thread 1074: XXXX 1710847555388, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1074 1710847555389 XXXX 1710847555389, Thread 1074: XXXX 1710847555389, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555389 XXXX 1710847555389, Thread 1074: XXXX 1710847555389, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1074 1710847555390 XXXX 1710847555390, Thread 1074: XXXX 1710847555390, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555390 XXXX 1710847555390, Thread 1074: XXXX 1710847555390, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1074 1710847555392 XXXX 1710847555392, Thread 1074: XXXX 1710847555392, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555392 XXXX 1710847555392, Thread 1074: XXXX 1710847555392, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1074 1710847555393 XXXX 1710847555393, Thread 1074: XXXX 1710847555393, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555393 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetToolInfo +1074 1710847555393 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1074 1710847555393 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1074 1710847555393 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000 +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 0, Type = Cfg, Mask = 00000000 +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = ff, Buffer Length = 0, Type = EEData, Mask = 00000000 +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2000, End = 2003, Buffer Length = 0, Type = UserID, Mask = 00000000 +1074 1710847555398 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847555398 XXXX 1710847555398, Thread 1074: XXXX 1710847555398, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555399 XXXX 1710847555399, Thread 1074: XXXX 1710847555399, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555399 XXXX 1710847555399, Thread 1074: XXXX 1710847555399, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555400 XXXX 1710847555400, Thread 1074: XXXX 1710847555400, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555400 XXXX 1710847555400, Thread 1074: XXXX 1710847555400, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555401 XXXX 1710847555401, Thread 1074: XXXX 1710847555401, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555401 XXXX 1710847555401, Thread 1074: XXXX 1710847555401, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555431 XXXX 1710847555431, Thread 1074: XXXX 1710847555431, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555431 XXXX 1710847555431, Thread 1074: XXXX 1710847555431, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555432 XXXX 1710847555432, Thread 1074: XXXX 1710847555432, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555432 XXXX 1710847555432, Thread 1074: XXXX 1710847555432, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555433 XXXX 1710847555433, Thread 1074: XXXX 1710847555433, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555433 XXXX 1710847555433, Thread 1074: XXXX 1710847555433, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555434 XXXX 1710847555434, Thread 1074: XXXX 1710847555434, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555434 XXXX 1710847555434, Thread 1074: XXXX 1710847555434, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555463 XXXX 1710847555463, Thread 1074: XXXX 1710847555463, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555463 XXXX 1710847555463, Thread 1074: XXXX 1710847555463, Entering Thread 1074: Commands::runScriptBasic, script name = EraseChip, timeOut = 30000 ms +1074 1710847555470 XXXX 1710847555470, Thread 1074: XXXX 1710847555470, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555470 XXXX 1710847555470, Thread 1074: XXXX 1710847555470, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847555472 XXXX 1710847555472, Thread 1074: XXXX 1710847555472, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555472 XXXX 1710847555472, Thread 1074: XXXX 1710847555472, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555473 XXXX 1710847555473, Thread 1074: XXXX 1710847555473, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555473 XXXX 1710847555473, Thread 1074: XXXX 1710847555473, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555474 XXXX 1710847555474, Thread 1074: XXXX 1710847555474, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555474 XXXX 1710847555474, Thread 1074: XXXX 1710847555474, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555475 XXXX 1710847555475, Thread 1074: XXXX 1710847555475, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555475 XXXX 1710847555475, Thread 1074: XXXX 1710847555475, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555505 XXXX 1710847555505, Thread 1074: XXXX 1710847555505, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555505 XXXX 1710847555505, Thread 1074: XXXX 1710847555505, Entering Thread 1074: Commands::runScriptBasic, script name = EraseDataEEmem, timeOut = 30000 ms +1074 1710847555512 XXXX 1710847555512, Thread 1074: XXXX 1710847555512, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555512 XXXX 1710847555512, Thread 1074: XXXX 1710847555512, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847555514 XXXX 1710847555514, Thread 1074: XXXX 1710847555514, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1074 1710847555514 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847555514 XXXX 1710847555514, Thread 1074: XXXX 1710847555514, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555515 XXXX 1710847555515, Thread 1074: XXXX 1710847555515, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555515 XXXX 1710847555515, Thread 1074: XXXX 1710847555515, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555516 XXXX 1710847555516, Thread 1074: XXXX 1710847555516, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555516 XXXX 1710847555516, Thread 1074: XXXX 1710847555516, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555517 XXXX 1710847555517, Thread 1074: XXXX 1710847555517, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555517 XXXX 1710847555517, Thread 1074: XXXX 1710847555517, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555546 XXXX 1710847555546, Thread 1074: XXXX 1710847555546, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555546 XXXX 1710847555546, Thread 1074: XXXX 1710847555546, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555547 XXXX 1710847555547, Thread 1074: XXXX 1710847555547, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555547 XXXX 1710847555547, Thread 1074: XXXX 1710847555547, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555548 XXXX 1710847555548, Thread 1074: XXXX 1710847555548, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555548 XXXX 1710847555548, Thread 1074: XXXX 1710847555548, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555549 XXXX 1710847555549, Thread 1074: XXXX 1710847555549, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555549 XXXX 1710847555549, Thread 1074: XXXX 1710847555549, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555579 XXXX 1710847555579, Thread 1074: XXXX 1710847555579, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555579 XXXX 1710847555579, Thread 1074: XXXX 1710847555579, Entering Thread 1074: Commands::runScriptWithDownload, script name = WriteConfigmem +1074 1710847555593 XXXX 1710847555593, Thread 1074: XXXX 1710847555593, Exiting Thread 1074: Commands::runScriptWithDownload(WriteConfigmem) +1074 1710847555593 XXXX 1710847555593, Thread 1074: XXXX 1710847555593, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847555595 XXXX 1710847555595, Thread 1074: XXXX 1710847555595, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555595 XXXX 1710847555595, Thread 1074: XXXX 1710847555595, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555596 XXXX 1710847555596, Thread 1074: XXXX 1710847555596, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555596 XXXX 1710847555596, Thread 1074: XXXX 1710847555596, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555597 XXXX 1710847555597, Thread 1074: XXXX 1710847555597, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555597 XXXX 1710847555597, Thread 1074: XXXX 1710847555597, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555598 XXXX 1710847555598, Thread 1074: XXXX 1710847555598, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555598 XXXX 1710847555598, Thread 1074: XXXX 1710847555598, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555627 XXXX 1710847555627, Thread 1074: XXXX 1710847555627, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555627 XXXX 1710847555627, Thread 1074: XXXX 1710847555627, Entering Thread 1074: Commands::runScriptWithUpload, script name = ReadConfigmem +1074 1710847555627 XXXX 1710847555627, Thread 1074: XXXX 1710847555627, Entering Thread 1074: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1074 1710847555629 XXXX 1710847555629, Thread 1074: XXXX 1710847555629, Exiting Thread 1074: ToolCommUsb::readTransfer, cr.status = 0x0 +1074 1710847555629 XXXX 1710847555629, Thread 1074: XXXX 1710847555629, Exiting Thread 1074: Commands::runScriptWithUpload +1074 1710847555629 XXXX 1710847555629, Thread 1074: XXXX 1710847555629, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847555631 XXXX 1710847555631, Thread 1074: XXXX 1710847555631, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555631 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1074 1710847555631 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847555631 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847555631 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 65f, Buffer Length = 3264, Type = Pgm, Mask = 00000000 +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1074 1710847555632 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847555632 XXXX 1710847555632, Thread 1074: XXXX 1710847555632, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555633 XXXX 1710847555633, Thread 1074: XXXX 1710847555633, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555633 XXXX 1710847555633, Thread 1074: XXXX 1710847555633, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555634 XXXX 1710847555634, Thread 1074: XXXX 1710847555634, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555634 XXXX 1710847555634, Thread 1074: XXXX 1710847555634, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555635 XXXX 1710847555635, Thread 1074: XXXX 1710847555635, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555635 XXXX 1710847555635, Thread 1074: XXXX 1710847555635, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555665 XXXX 1710847555665, Thread 1074: XXXX 1710847555665, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555666 XXXX 1710847555666, Thread 1074: XXXX 1710847555666, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847555666 XXXX 1710847555666, Thread 1074: XXXX 1710847555666, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555666 XXXX 1710847555666, Thread 1074: XXXX 1710847555666, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847555667 XXXX 1710847555667, Thread 1074: XXXX 1710847555667, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555667 XXXX 1710847555667, Thread 1074: XXXX 1710847555667, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847555669 XXXX 1710847555669, Thread 1074: XXXX 1710847555669, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555669 XXXX 1710847555669, Thread 1074: XXXX 1710847555669, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847555698 XXXX 1710847555698, Thread 1074: XXXX 1710847555698, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847555698 XXXX 1710847555698, Thread 1074: XXXX 1710847555698, Entering Thread 1074: Commands::runScriptWithDownload, script name = WriteProgmem +1074 1710847556386 XXXX 1710847556386, Thread 1074: XXXX 1710847556386, Exiting Thread 1074: Commands::runScriptWithDownload(WriteProgmem) +1074 1710847556386 XXXX 1710847556386, Thread 1074: XXXX 1710847556386, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556388 XXXX 1710847556388, Thread 1074: XXXX 1710847556388, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556388 XXXX 1710847556388, Thread 1074: XXXX 1710847556388, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847556388 XXXX 1710847556388, Thread 1074: XXXX 1710847556388, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556388 XXXX 1710847556388, Thread 1074: XXXX 1710847556388, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847556389 XXXX 1710847556389, Thread 1074: XXXX 1710847556389, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556390 XXXX 1710847556390, Thread 1074: XXXX 1710847556390, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847556390 XXXX 1710847556390, Thread 1074: XXXX 1710847556390, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556391 XXXX 1710847556391, Thread 1074: XXXX 1710847556391, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847556420 XXXX 1710847556420, Thread 1074: XXXX 1710847556420, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556420 XXXX 1710847556420, Thread 1074: XXXX 1710847556420, Entering Thread 1074: Commands::runScriptWithUpload, script name = ReadProgmem +1074 1710847556420 XXXX 1710847556420, Thread 1074: XXXX 1710847556420, Entering Thread 1074: ToolCommUsb::readTransfer, sideData is 0x3d bytes long, transferDataLength is 0xcc0 bytes long +1074 1710847556493 XXXX 1710847556493, Thread 1074: XXXX 1710847556493, Exiting Thread 1074: ToolCommUsb::readTransfer, cr.status = 0x0 +1074 1710847556494 XXXX 1710847556494, Thread 1074: XXXX 1710847556493, Exiting Thread 1074: Commands::runScriptWithUpload +1074 1710847556494 XXXX 1710847556494, Thread 1074: XXXX 1710847556494, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556495 XXXX 1710847556495, Thread 1074: XXXX 1710847556495, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556496 XXXX 1710847556496, Thread 1074: XXXX 1710847556496, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847556497 XXXX 1710847556497, Thread 1074: XXXX 1710847556497, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556497 XXXX 1710847556497, Thread 1074: XXXX 1710847556497, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847556498 XXXX 1710847556497, Thread 1074: XXXX 1710847556497, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556498 XXXX 1710847556498, Thread 1074: XXXX 1710847556498, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847556498 XXXX 1710847556498, Thread 1074: XXXX 1710847556498, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556498 XXXX 1710847556498, Thread 1074: XXXX 1710847556498, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847556528 XXXX 1710847556528, Thread 1074: XXXX 1710847556528, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556528 XXXX 1710847556528, Thread 1074: XXXX 1710847556528, Entering Thread 1074: Commands::runScriptWithDownload, script name = WriteConfigmem +1074 1710847556542 XXXX 1710847556542, Thread 1074: XXXX 1710847556542, Exiting Thread 1074: Commands::runScriptWithDownload(WriteConfigmem) +1074 1710847556542 XXXX 1710847556542, Thread 1074: XXXX 1710847556542, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556544 XXXX 1710847556544, Thread 1074: XXXX 1710847556544, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556544 XXXX 1710847556544, Thread 1074: XXXX 1710847556544, Entering Thread 1074: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1074 1710847556544 XXXX 1710847556544, Thread 1074: XXXX 1710847556544, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556544 XXXX 1710847556544, Thread 1074: XXXX 1710847556544, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1074 1710847556545 XXXX 1710847556545, Thread 1074: XXXX 1710847556545, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556545 XXXX 1710847556545, Thread 1074: XXXX 1710847556545, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1074 1710847556546 XXXX 1710847556546, Thread 1074: XXXX 1710847556546, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556546 XXXX 1710847556546, Thread 1074: XXXX 1710847556546, Entering Thread 1074: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1074 1710847556577 XXXX 1710847556576, Thread 1074: XXXX 1710847556576, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556577 XXXX 1710847556577, Thread 1074: XXXX 1710847556577, Entering Thread 1074: Commands::runScriptWithUpload, script name = ReadConfigmem +1074 1710847556577 XXXX 1710847556577, Thread 1074: XXXX 1710847556577, Entering Thread 1074: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1074 1710847556578 XXXX 1710847556578, Thread 1074: XXXX 1710847556578, Exiting Thread 1074: ToolCommUsb::readTransfer, cr.status = 0x0 +1074 1710847556578 XXXX 1710847556578, Thread 1074: XXXX 1710847556578, Exiting Thread 1074: Commands::runScriptWithUpload +1074 1710847556578 XXXX 1710847556578, Thread 1074: XXXX 1710847556578, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556581 XXXX 1710847556581, Thread 1074: XXXX 1710847556581, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:endOfOperations +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 null +1074 1710847556581 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847556581 XXXX 1710847556581, Thread 1074: XXXX 1710847556581, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556583 XXXX 1710847556583, Thread 1074: XXXX 1710847556583, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556583 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:endOfOperations +1074 1710847556583 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847556583 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847556583 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true +1074 1710847556585 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1074 1710847556585 XXXX 1710847556585, Thread 1074: XXXX 1710847556585, Entering Thread 1074: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1074 1710847556587 XXXX 1710847556587, Thread 1074: XXXX 1710847556587, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556587 XXXX 1710847556587, Thread 1074: XXXX 1710847556587, Entering Thread 1074: Commands::runScriptBasic with script contents. contents[0] = 0x42, ... +1074 1710847556588 XXXX 1710847556588, Thread 1074: XXXX 1710847556588, Exiting Thread 1074: Commands::runScriptBasic +1074 1710847556588 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1074 1710847556588 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1074 1710847556588 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1074 1710847556588 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:EstablishCommunincations +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@2e5a1960 +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:EstablishCommunincations +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 true +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +1087 1710847572781 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:GetFirmwareInfo +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: Values: +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.00.84, fpgaVer = ff.ff.ff, scriptVer = 00.05.85, macAddress = 0504883548174844852485054485057, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN005435, appCommitID = null, scriptCommitID = d33d758f73, PCB_ID = 2 +1087 1710847572789 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End +1087 1710847572789 XXXX 1710847572789, Thread 1087: XXXX 1710847572789, Entering Thread 1087: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ... +1087 1710847572789 XXXX 1710847572789, Thread 1087: XXXX 1710847572789, Entering Thread 1087: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long +1087 1710847572792 XXXX 1710847572792, Thread 1087: XXXX 1710847572792, Exiting Thread 1087: ToolCommUsb::readTransfer, cr.status = 0x0 +1087 1710847572792 XXXX 1710847572792, Thread 1087: XXXX 1710847572792, Exiting Thread 1087: Commands::runScriptWithUpload + +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetPowerInfo +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: Values: +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: shotDownSystem = false, isToolPower = true, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = false, useMaintainActivePower = false +1087 1710847572792 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572792 XXXX 1710847572792, Thread 1087: XXXX 1710847572792, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x39, ... +1087 1710847572793 XXXX 1710847572793, Thread 1087: XXXX 1710847572793, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572793 XXXX 1710847572793, Thread 1087: XXXX 1710847572793, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x46, ... +1087 1710847572794 XXXX 1710847572794, Thread 1087: XXXX 1710847572794, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572794 XXXX 1710847572794, Thread 1087: XXXX 1710847572794, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x44, ... +1087 1710847572806 XXXX 1710847572806, Thread 1087: XXXX 1710847572806, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572806 XXXX 1710847572806, Thread 1087: XXXX 1710847572806, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x40, ... +1087 1710847572986 XXXX 1710847572986, Thread 1087: XXXX 1710847572986, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572986 XXXX 1710847572986, Thread 1087: XXXX 1710847572986, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x47, ... +1087 1710847572991 XXXX 1710847572991, Thread 1087: XXXX 1710847572991, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetPowerInfo +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetLEDBrightness +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 5 +1087 1710847572991 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572991 XXXX 1710847572991, Thread 1087: XXXX 1710847572991, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ... +1087 1710847572991 XXXX 1710847572991, Thread 1087: XXXX 1710847572991, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetLEDBrightness +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetToolInfo +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: Values: +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2 +1087 1710847572993 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1087 1710847572993 XXXX 1710847572993, Thread 1087: XXXX 1710847572993, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x27, ... +1087 1710847572993 XXXX 1710847572993, Thread 1087: XXXX 1710847572993, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572993 XXXX 1710847572993, Thread 1087: XXXX 1710847572993, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847572994 XXXX 1710847572994, Thread 1087: XXXX 1710847572994, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572994 XXXX 1710847572994, Thread 1087: XXXX 1710847572994, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847572995 XXXX 1710847572995, Thread 1087: XXXX 1710847572995, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572995 XXXX 1710847572995, Thread 1087: XXXX 1710847572995, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847572996 XXXX 1710847572996, Thread 1087: XXXX 1710847572996, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572996 XXXX 1710847572996, Thread 1087: XXXX 1710847572996, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xd4, ... +1087 1710847572997 XXXX 1710847572997, Thread 1087: XXXX 1710847572997, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572997 XXXX 1710847572997, Thread 1087: XXXX 1710847572997, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1087 1710847572998 XXXX 1710847572998, Thread 1087: XXXX 1710847572998, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572998 XXXX 1710847572998, Thread 1087: XXXX 1710847572998, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1087 1710847572999 XXXX 1710847572999, Thread 1087: XXXX 1710847572999, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847572999 XXXX 1710847572999, Thread 1087: XXXX 1710847572999, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1087 1710847573000 XXXX 1710847573000, Thread 1087: XXXX 1710847573000, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573000 XXXX 1710847573000, Thread 1087: XXXX 1710847573000, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1087 1710847573001 XXXX 1710847573001, Thread 1087: XXXX 1710847573001, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573001 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetToolInfo +1087 1710847573001 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1087 1710847573001 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1087 1710847573001 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000 +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 0, Type = Cfg, Mask = 00000000 +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = ff, Buffer Length = 0, Type = EEData, Mask = 00000000 +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2000, End = 2003, Buffer Length = 0, Type = UserID, Mask = 00000000 +1087 1710847573007 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847573007 XXXX 1710847573007, Thread 1087: XXXX 1710847573007, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573008 XXXX 1710847573008, Thread 1087: XXXX 1710847573008, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573008 XXXX 1710847573008, Thread 1087: XXXX 1710847573008, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573009 XXXX 1710847573009, Thread 1087: XXXX 1710847573009, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573009 XXXX 1710847573009, Thread 1087: XXXX 1710847573009, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573010 XXXX 1710847573010, Thread 1087: XXXX 1710847573010, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573010 XXXX 1710847573010, Thread 1087: XXXX 1710847573010, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573040 XXXX 1710847573040, Thread 1087: XXXX 1710847573040, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573040 XXXX 1710847573040, Thread 1087: XXXX 1710847573040, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573041 XXXX 1710847573041, Thread 1087: XXXX 1710847573041, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573041 XXXX 1710847573041, Thread 1087: XXXX 1710847573041, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573042 XXXX 1710847573042, Thread 1087: XXXX 1710847573042, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573042 XXXX 1710847573042, Thread 1087: XXXX 1710847573042, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573043 XXXX 1710847573043, Thread 1087: XXXX 1710847573043, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573043 XXXX 1710847573043, Thread 1087: XXXX 1710847573043, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573072 XXXX 1710847573072, Thread 1087: XXXX 1710847573072, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573072 XXXX 1710847573072, Thread 1087: XXXX 1710847573072, Entering Thread 1087: Commands::runScriptBasic, script name = EraseChip, timeOut = 30000 ms +1087 1710847573079 XXXX 1710847573079, Thread 1087: XXXX 1710847573079, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573079 XXXX 1710847573079, Thread 1087: XXXX 1710847573079, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847573081 XXXX 1710847573081, Thread 1087: XXXX 1710847573081, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573081 XXXX 1710847573081, Thread 1087: XXXX 1710847573081, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573082 XXXX 1710847573082, Thread 1087: XXXX 1710847573082, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573082 XXXX 1710847573082, Thread 1087: XXXX 1710847573082, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573083 XXXX 1710847573083, Thread 1087: XXXX 1710847573083, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573083 XXXX 1710847573083, Thread 1087: XXXX 1710847573083, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573084 XXXX 1710847573084, Thread 1087: XXXX 1710847573084, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573084 XXXX 1710847573084, Thread 1087: XXXX 1710847573084, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573114 XXXX 1710847573114, Thread 1087: XXXX 1710847573114, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573114 XXXX 1710847573114, Thread 1087: XXXX 1710847573114, Entering Thread 1087: Commands::runScriptBasic, script name = EraseDataEEmem, timeOut = 30000 ms +1087 1710847573121 XXXX 1710847573121, Thread 1087: XXXX 1710847573121, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573121 XXXX 1710847573121, Thread 1087: XXXX 1710847573121, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847573123 XXXX 1710847573123, Thread 1087: XXXX 1710847573123, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1087 1710847573123 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847573123 XXXX 1710847573123, Thread 1087: XXXX 1710847573123, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573124 XXXX 1710847573124, Thread 1087: XXXX 1710847573124, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573124 XXXX 1710847573124, Thread 1087: XXXX 1710847573124, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573125 XXXX 1710847573125, Thread 1087: XXXX 1710847573125, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573125 XXXX 1710847573125, Thread 1087: XXXX 1710847573125, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573126 XXXX 1710847573126, Thread 1087: XXXX 1710847573126, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573126 XXXX 1710847573126, Thread 1087: XXXX 1710847573126, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573155 XXXX 1710847573155, Thread 1087: XXXX 1710847573155, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573155 XXXX 1710847573155, Thread 1087: XXXX 1710847573155, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573156 XXXX 1710847573156, Thread 1087: XXXX 1710847573156, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573156 XXXX 1710847573156, Thread 1087: XXXX 1710847573156, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573157 XXXX 1710847573157, Thread 1087: XXXX 1710847573157, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573157 XXXX 1710847573157, Thread 1087: XXXX 1710847573157, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573158 XXXX 1710847573158, Thread 1087: XXXX 1710847573158, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573158 XXXX 1710847573158, Thread 1087: XXXX 1710847573158, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573188 XXXX 1710847573188, Thread 1087: XXXX 1710847573188, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573188 XXXX 1710847573188, Thread 1087: XXXX 1710847573188, Entering Thread 1087: Commands::runScriptWithDownload, script name = WriteConfigmem +1087 1710847573202 XXXX 1710847573202, Thread 1087: XXXX 1710847573202, Exiting Thread 1087: Commands::runScriptWithDownload(WriteConfigmem) +1087 1710847573202 XXXX 1710847573202, Thread 1087: XXXX 1710847573202, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847573204 XXXX 1710847573204, Thread 1087: XXXX 1710847573204, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573204 XXXX 1710847573204, Thread 1087: XXXX 1710847573204, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573205 XXXX 1710847573205, Thread 1087: XXXX 1710847573205, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573205 XXXX 1710847573205, Thread 1087: XXXX 1710847573205, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573206 XXXX 1710847573206, Thread 1087: XXXX 1710847573206, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573206 XXXX 1710847573206, Thread 1087: XXXX 1710847573206, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573207 XXXX 1710847573207, Thread 1087: XXXX 1710847573207, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573207 XXXX 1710847573207, Thread 1087: XXXX 1710847573207, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573236 XXXX 1710847573236, Thread 1087: XXXX 1710847573236, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573236 XXXX 1710847573236, Thread 1087: XXXX 1710847573236, Entering Thread 1087: Commands::runScriptWithUpload, script name = ReadConfigmem +1087 1710847573236 XXXX 1710847573236, Thread 1087: XXXX 1710847573236, Entering Thread 1087: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1087 1710847573239 XXXX 1710847573239, Thread 1087: XXXX 1710847573239, Exiting Thread 1087: ToolCommUsb::readTransfer, cr.status = 0x0 +1087 1710847573239 XXXX 1710847573239, Thread 1087: XXXX 1710847573239, Exiting Thread 1087: Commands::runScriptWithUpload +1087 1710847573239 XXXX 1710847573239, Thread 1087: XXXX 1710847573239, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847573241 XXXX 1710847573241, Thread 1087: XXXX 1710847573241, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573241 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1087 1710847573241 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847573241 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847573241 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 65f, Buffer Length = 3264, Type = Pgm, Mask = 00000000 +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1087 1710847573244 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847573244 XXXX 1710847573244, Thread 1087: XXXX 1710847573244, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573245 XXXX 1710847573245, Thread 1087: XXXX 1710847573245, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573245 XXXX 1710847573245, Thread 1087: XXXX 1710847573245, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573246 XXXX 1710847573246, Thread 1087: XXXX 1710847573246, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573246 XXXX 1710847573246, Thread 1087: XXXX 1710847573246, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573247 XXXX 1710847573247, Thread 1087: XXXX 1710847573247, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573247 XXXX 1710847573247, Thread 1087: XXXX 1710847573247, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573277 XXXX 1710847573277, Thread 1087: XXXX 1710847573277, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573277 XXXX 1710847573277, Thread 1087: XXXX 1710847573277, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847573278 XXXX 1710847573278, Thread 1087: XXXX 1710847573278, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573278 XXXX 1710847573278, Thread 1087: XXXX 1710847573278, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847573279 XXXX 1710847573279, Thread 1087: XXXX 1710847573279, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573279 XXXX 1710847573279, Thread 1087: XXXX 1710847573279, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847573280 XXXX 1710847573280, Thread 1087: XXXX 1710847573280, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573280 XXXX 1710847573280, Thread 1087: XXXX 1710847573280, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847573309 XXXX 1710847573309, Thread 1087: XXXX 1710847573309, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847573309 XXXX 1710847573309, Thread 1087: XXXX 1710847573309, Entering Thread 1087: Commands::runScriptWithDownload, script name = WriteProgmem +1087 1710847573999 XXXX 1710847573999, Thread 1087: XXXX 1710847573999, Exiting Thread 1087: Commands::runScriptWithDownload(WriteProgmem) +1087 1710847573999 XXXX 1710847573999, Thread 1087: XXXX 1710847573999, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574000 XXXX 1710847574000, Thread 1087: XXXX 1710847574000, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574000 XXXX 1710847574000, Thread 1087: XXXX 1710847574000, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847574001 XXXX 1710847574001, Thread 1087: XXXX 1710847574001, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574001 XXXX 1710847574001, Thread 1087: XXXX 1710847574001, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847574002 XXXX 1710847574002, Thread 1087: XXXX 1710847574002, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574002 XXXX 1710847574002, Thread 1087: XXXX 1710847574002, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847574003 XXXX 1710847574003, Thread 1087: XXXX 1710847574003, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574003 XXXX 1710847574003, Thread 1087: XXXX 1710847574003, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847574033 XXXX 1710847574033, Thread 1087: XXXX 1710847574033, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574033 XXXX 1710847574033, Thread 1087: XXXX 1710847574033, Entering Thread 1087: Commands::runScriptWithUpload, script name = ReadProgmem +1087 1710847574033 XXXX 1710847574033, Thread 1087: XXXX 1710847574033, Entering Thread 1087: ToolCommUsb::readTransfer, sideData is 0x3d bytes long, transferDataLength is 0xcc0 bytes long +1087 1710847574106 XXXX 1710847574106, Thread 1087: XXXX 1710847574106, Exiting Thread 1087: ToolCommUsb::readTransfer, cr.status = 0x0 +1087 1710847574106 XXXX 1710847574106, Thread 1087: XXXX 1710847574106, Exiting Thread 1087: Commands::runScriptWithUpload +1087 1710847574106 XXXX 1710847574106, Thread 1087: XXXX 1710847574106, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574108 XXXX 1710847574108, Thread 1087: XXXX 1710847574108, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574108 XXXX 1710847574108, Thread 1087: XXXX 1710847574108, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847574109 XXXX 1710847574109, Thread 1087: XXXX 1710847574109, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574109 XXXX 1710847574109, Thread 1087: XXXX 1710847574109, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847574110 XXXX 1710847574110, Thread 1087: XXXX 1710847574110, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574110 XXXX 1710847574110, Thread 1087: XXXX 1710847574110, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847574111 XXXX 1710847574111, Thread 1087: XXXX 1710847574111, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574111 XXXX 1710847574111, Thread 1087: XXXX 1710847574111, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847574140 XXXX 1710847574140, Thread 1087: XXXX 1710847574140, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574140 XXXX 1710847574140, Thread 1087: XXXX 1710847574140, Entering Thread 1087: Commands::runScriptWithDownload, script name = WriteConfigmem +1087 1710847574155 XXXX 1710847574155, Thread 1087: XXXX 1710847574155, Exiting Thread 1087: Commands::runScriptWithDownload(WriteConfigmem) +1087 1710847574155 XXXX 1710847574155, Thread 1087: XXXX 1710847574155, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574157 XXXX 1710847574157, Thread 1087: XXXX 1710847574157, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574157 XXXX 1710847574157, Thread 1087: XXXX 1710847574157, Entering Thread 1087: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1087 1710847574158 XXXX 1710847574158, Thread 1087: XXXX 1710847574158, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574158 XXXX 1710847574158, Thread 1087: XXXX 1710847574158, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1087 1710847574159 XXXX 1710847574159, Thread 1087: XXXX 1710847574159, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574159 XXXX 1710847574159, Thread 1087: XXXX 1710847574159, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1087 1710847574160 XXXX 1710847574160, Thread 1087: XXXX 1710847574160, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574160 XXXX 1710847574160, Thread 1087: XXXX 1710847574160, Entering Thread 1087: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1087 1710847574190 XXXX 1710847574190, Thread 1087: XXXX 1710847574190, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574190 XXXX 1710847574190, Thread 1087: XXXX 1710847574190, Entering Thread 1087: Commands::runScriptWithUpload, script name = ReadConfigmem +1087 1710847574190 XXXX 1710847574190, Thread 1087: XXXX 1710847574190, Entering Thread 1087: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1087 1710847574193 XXXX 1710847574193, Thread 1087: XXXX 1710847574193, Exiting Thread 1087: ToolCommUsb::readTransfer, cr.status = 0x0 +1087 1710847574193 XXXX 1710847574193, Thread 1087: XXXX 1710847574193, Exiting Thread 1087: Commands::runScriptWithUpload +1087 1710847574193 XXXX 1710847574193, Thread 1087: XXXX 1710847574193, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574195 XXXX 1710847574195, Thread 1087: XXXX 1710847574195, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:endOfOperations +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 null +1087 1710847574195 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847574195 XXXX 1710847574195, Thread 1087: XXXX 1710847574195, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574197 XXXX 1710847574197, Thread 1087: XXXX 1710847574197, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574197 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:endOfOperations +1087 1710847574197 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847574197 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847574197 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true +1087 1710847574200 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1087 1710847574200 XXXX 1710847574200, Thread 1087: XXXX 1710847574200, Entering Thread 1087: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1087 1710847574202 XXXX 1710847574202, Thread 1087: XXXX 1710847574202, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574202 XXXX 1710847574202, Thread 1087: XXXX 1710847574202, Entering Thread 1087: Commands::runScriptBasic with script contents. contents[0] = 0x42, ... +1087 1710847574203 XXXX 1710847574203, Thread 1087: XXXX 1710847574203, Exiting Thread 1087: Commands::runScriptBasic +1087 1710847574203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1087 1710847574203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1087 1710847574203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1087 1710847574203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:EstablishCommunincations +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@2e5a1960 +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:EstablishCommunincations +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 true +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +1098 1710847584856 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:GetFirmwareInfo +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: Values: +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.00.84, fpgaVer = ff.ff.ff, scriptVer = 00.05.85, macAddress = 0504883548174844852485054485057, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN005435, appCommitID = null, scriptCommitID = d33d758f73, PCB_ID = 2 +1098 1710847584863 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End +1098 1710847584863 XXXX 1710847584863, Thread 1098: XXXX 1710847584863, Entering Thread 1098: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ... +1098 1710847584863 XXXX 1710847584863, Thread 1098: XXXX 1710847584863, Entering Thread 1098: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long +1098 1710847584867 XXXX 1710847584867, Thread 1098: XXXX 1710847584867, Exiting Thread 1098: ToolCommUsb::readTransfer, cr.status = 0x0 +1098 1710847584867 XXXX 1710847584867, Thread 1098: XXXX 1710847584867, Exiting Thread 1098: Commands::runScriptWithUpload + +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetPowerInfo +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: Values: +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 PowerInfo: shotDownSystem = false, isToolPower = true, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = false, useMaintainActivePower = false +1098 1710847584867 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847584867 XXXX 1710847584867, Thread 1098: XXXX 1710847584867, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x39, ... +1098 1710847584867 XXXX 1710847584867, Thread 1098: XXXX 1710847584867, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847584868 XXXX 1710847584868, Thread 1098: XXXX 1710847584868, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x46, ... +1098 1710847584868 XXXX 1710847584868, Thread 1098: XXXX 1710847584868, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847584869 XXXX 1710847584869, Thread 1098: XXXX 1710847584869, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x44, ... +1098 1710847584881 XXXX 1710847584881, Thread 1098: XXXX 1710847584881, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847584881 XXXX 1710847584881, Thread 1098: XXXX 1710847584881, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x40, ... +1098 1710847585060 XXXX 1710847585060, Thread 1098: XXXX 1710847585060, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585060 XXXX 1710847585060, Thread 1098: XXXX 1710847585060, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x47, ... +1098 1710847585066 XXXX 1710847585066, Thread 1098: XXXX 1710847585066, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetPowerInfo +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetLEDBrightness +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 5 +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847585066 XXXX 1710847585066, Thread 1098: XXXX 1710847585066, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ... +1098 1710847585066 XXXX 1710847585066, Thread 1098: XXXX 1710847585066, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetLEDBrightness +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:SetToolInfo +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: Values: +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2 +1098 1710847585066 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1098 1710847585066 XXXX 1710847585066, Thread 1098: XXXX 1710847585066, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x27, ... +1098 1710847585067 XXXX 1710847585067, Thread 1098: XXXX 1710847585067, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585067 XXXX 1710847585067, Thread 1098: XXXX 1710847585067, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585068 XXXX 1710847585068, Thread 1098: XXXX 1710847585068, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585068 XXXX 1710847585068, Thread 1098: XXXX 1710847585068, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585069 XXXX 1710847585069, Thread 1098: XXXX 1710847585069, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585069 XXXX 1710847585069, Thread 1098: XXXX 1710847585069, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585070 XXXX 1710847585070, Thread 1098: XXXX 1710847585070, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585070 XXXX 1710847585070, Thread 1098: XXXX 1710847585070, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xd4, ... +1098 1710847585071 XXXX 1710847585071, Thread 1098: XXXX 1710847585071, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585071 XXXX 1710847585071, Thread 1098: XXXX 1710847585071, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1098 1710847585072 XXXX 1710847585072, Thread 1098: XXXX 1710847585072, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585072 XXXX 1710847585072, Thread 1098: XXXX 1710847585072, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1098 1710847585074 XXXX 1710847585074, Thread 1098: XXXX 1710847585074, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585074 XXXX 1710847585074, Thread 1098: XXXX 1710847585074, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xcd, ... +1098 1710847585074 XXXX 1710847585074, Thread 1098: XXXX 1710847585074, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585074 XXXX 1710847585074, Thread 1098: XXXX 1710847585074, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xce, ... +1098 1710847585076 XXXX 1710847585076, Thread 1098: XXXX 1710847585076, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585076 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:SetToolInfo +1098 1710847585076 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1098 1710847585076 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 none +1098 1710847585076 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000 +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 0, Type = Cfg, Mask = 00000000 +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = ff, Buffer Length = 0, Type = EEData, Mask = 00000000 +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2000, End = 2003, Buffer Length = 0, Type = UserID, Mask = 00000000 +1098 1710847585085 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847585085 XXXX 1710847585085, Thread 1098: XXXX 1710847585085, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585086 XXXX 1710847585086, Thread 1098: XXXX 1710847585086, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585086 XXXX 1710847585086, Thread 1098: XXXX 1710847585086, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585087 XXXX 1710847585087, Thread 1098: XXXX 1710847585087, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585087 XXXX 1710847585087, Thread 1098: XXXX 1710847585087, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585088 XXXX 1710847585088, Thread 1098: XXXX 1710847585088, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585088 XXXX 1710847585088, Thread 1098: XXXX 1710847585088, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585118 XXXX 1710847585118, Thread 1098: XXXX 1710847585118, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585118 XXXX 1710847585118, Thread 1098: XXXX 1710847585118, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585120 XXXX 1710847585120, Thread 1098: XXXX 1710847585120, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585120 XXXX 1710847585120, Thread 1098: XXXX 1710847585120, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585122 XXXX 1710847585122, Thread 1098: XXXX 1710847585122, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585122 XXXX 1710847585122, Thread 1098: XXXX 1710847585122, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585123 XXXX 1710847585123, Thread 1098: XXXX 1710847585123, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585123 XXXX 1710847585123, Thread 1098: XXXX 1710847585123, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585152 XXXX 1710847585152, Thread 1098: XXXX 1710847585152, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585152 XXXX 1710847585152, Thread 1098: XXXX 1710847585152, Entering Thread 1098: Commands::runScriptBasic, script name = EraseChip, timeOut = 30000 ms +1098 1710847585159 XXXX 1710847585159, Thread 1098: XXXX 1710847585159, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585159 XXXX 1710847585159, Thread 1098: XXXX 1710847585159, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847585161 XXXX 1710847585161, Thread 1098: XXXX 1710847585161, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585161 XXXX 1710847585161, Thread 1098: XXXX 1710847585161, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585162 XXXX 1710847585162, Thread 1098: XXXX 1710847585162, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585162 XXXX 1710847585162, Thread 1098: XXXX 1710847585162, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585163 XXXX 1710847585163, Thread 1098: XXXX 1710847585163, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585163 XXXX 1710847585163, Thread 1098: XXXX 1710847585163, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585164 XXXX 1710847585164, Thread 1098: XXXX 1710847585164, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585164 XXXX 1710847585164, Thread 1098: XXXX 1710847585164, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585193 XXXX 1710847585193, Thread 1098: XXXX 1710847585193, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585193 XXXX 1710847585193, Thread 1098: XXXX 1710847585193, Entering Thread 1098: Commands::runScriptBasic, script name = EraseDataEEmem, timeOut = 30000 ms +1098 1710847585200 XXXX 1710847585200, Thread 1098: XXXX 1710847585200, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585200 XXXX 1710847585200, Thread 1098: XXXX 1710847585200, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847585202 XXXX 1710847585202, Thread 1098: XXXX 1710847585202, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585202 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1098 1710847585202 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847585202 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847585202 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1098 1710847585203 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847585203 XXXX 1710847585203, Thread 1098: XXXX 1710847585203, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585203 XXXX 1710847585203, Thread 1098: XXXX 1710847585203, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585203 XXXX 1710847585203, Thread 1098: XXXX 1710847585203, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585204 XXXX 1710847585204, Thread 1098: XXXX 1710847585204, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585204 XXXX 1710847585204, Thread 1098: XXXX 1710847585204, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585205 XXXX 1710847585205, Thread 1098: XXXX 1710847585205, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585205 XXXX 1710847585205, Thread 1098: XXXX 1710847585205, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585234 XXXX 1710847585234, Thread 1098: XXXX 1710847585234, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585235 XXXX 1710847585235, Thread 1098: XXXX 1710847585235, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585235 XXXX 1710847585235, Thread 1098: XXXX 1710847585235, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585235 XXXX 1710847585235, Thread 1098: XXXX 1710847585235, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585236 XXXX 1710847585236, Thread 1098: XXXX 1710847585236, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585236 XXXX 1710847585236, Thread 1098: XXXX 1710847585236, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585237 XXXX 1710847585237, Thread 1098: XXXX 1710847585237, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585237 XXXX 1710847585237, Thread 1098: XXXX 1710847585237, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585267 XXXX 1710847585267, Thread 1098: XXXX 1710847585267, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585267 XXXX 1710847585267, Thread 1098: XXXX 1710847585267, Entering Thread 1098: Commands::runScriptWithDownload, script name = WriteConfigmem +1098 1710847585283 XXXX 1710847585283, Thread 1098: XXXX 1710847585283, Exiting Thread 1098: Commands::runScriptWithDownload(WriteConfigmem) +1098 1710847585283 XXXX 1710847585283, Thread 1098: XXXX 1710847585283, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847585285 XXXX 1710847585284, Thread 1098: XXXX 1710847585284, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585285 XXXX 1710847585285, Thread 1098: XXXX 1710847585285, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585285 XXXX 1710847585285, Thread 1098: XXXX 1710847585285, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585285 XXXX 1710847585285, Thread 1098: XXXX 1710847585285, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585286 XXXX 1710847585286, Thread 1098: XXXX 1710847585286, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585286 XXXX 1710847585286, Thread 1098: XXXX 1710847585286, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585287 XXXX 1710847585287, Thread 1098: XXXX 1710847585287, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585287 XXXX 1710847585287, Thread 1098: XXXX 1710847585287, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585317 XXXX 1710847585317, Thread 1098: XXXX 1710847585317, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585317 XXXX 1710847585317, Thread 1098: XXXX 1710847585317, Entering Thread 1098: Commands::runScriptWithUpload, script name = ReadConfigmem +1098 1710847585317 XXXX 1710847585317, Thread 1098: XXXX 1710847585317, Entering Thread 1098: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1098 1710847585320 XXXX 1710847585320, Thread 1098: XXXX 1710847585320, Exiting Thread 1098: ToolCommUsb::readTransfer, cr.status = 0x0 +1098 1710847585320 XXXX 1710847585320, Thread 1098: XXXX 1710847585320, Exiting Thread 1098: Commands::runScriptWithUpload +1098 1710847585320 XXXX 1710847585320, Thread 1098: XXXX 1710847585320, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847585321 XXXX 1710847585321, Thread 1098: XXXX 1710847585321, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585322 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1098 1710847585322 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847585322 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847585322 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 0, End = 65f, Buffer Length = 3264, Type = Pgm, Mask = 00000000 +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 TransferInfo: Start = 2007, End = 2008, Buffer Length = 4, Type = Cfg, Mask = 00000000 +1098 1710847585323 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847585323 XXXX 1710847585323, Thread 1098: XXXX 1710847585323, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585324 XXXX 1710847585324, Thread 1098: XXXX 1710847585324, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585324 XXXX 1710847585324, Thread 1098: XXXX 1710847585324, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585325 XXXX 1710847585325, Thread 1098: XXXX 1710847585325, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585325 XXXX 1710847585325, Thread 1098: XXXX 1710847585325, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585326 XXXX 1710847585326, Thread 1098: XXXX 1710847585326, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585326 XXXX 1710847585326, Thread 1098: XXXX 1710847585326, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585356 XXXX 1710847585356, Thread 1098: XXXX 1710847585356, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585356 XXXX 1710847585356, Thread 1098: XXXX 1710847585356, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847585357 XXXX 1710847585357, Thread 1098: XXXX 1710847585357, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585357 XXXX 1710847585357, Thread 1098: XXXX 1710847585357, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847585358 XXXX 1710847585358, Thread 1098: XXXX 1710847585358, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585358 XXXX 1710847585358, Thread 1098: XXXX 1710847585358, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847585359 XXXX 1710847585359, Thread 1098: XXXX 1710847585359, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585359 XXXX 1710847585359, Thread 1098: XXXX 1710847585359, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847585388 XXXX 1710847585388, Thread 1098: XXXX 1710847585388, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847585388 XXXX 1710847585388, Thread 1098: XXXX 1710847585388, Entering Thread 1098: Commands::runScriptWithDownload, script name = WriteProgmem +1098 1710847586077 XXXX 1710847586077, Thread 1098: XXXX 1710847586077, Exiting Thread 1098: Commands::runScriptWithDownload(WriteProgmem) +1098 1710847586077 XXXX 1710847586077, Thread 1098: XXXX 1710847586077, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586079 XXXX 1710847586079, Thread 1098: XXXX 1710847586079, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586079 XXXX 1710847586079, Thread 1098: XXXX 1710847586079, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847586080 XXXX 1710847586080, Thread 1098: XXXX 1710847586080, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586080 XXXX 1710847586080, Thread 1098: XXXX 1710847586080, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847586081 XXXX 1710847586081, Thread 1098: XXXX 1710847586081, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586081 XXXX 1710847586081, Thread 1098: XXXX 1710847586081, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847586082 XXXX 1710847586082, Thread 1098: XXXX 1710847586082, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586082 XXXX 1710847586082, Thread 1098: XXXX 1710847586082, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847586112 XXXX 1710847586112, Thread 1098: XXXX 1710847586112, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586112 XXXX 1710847586112, Thread 1098: XXXX 1710847586112, Entering Thread 1098: Commands::runScriptWithUpload, script name = ReadProgmem +1098 1710847586112 XXXX 1710847586112, Thread 1098: XXXX 1710847586112, Entering Thread 1098: ToolCommUsb::readTransfer, sideData is 0x3d bytes long, transferDataLength is 0xcc0 bytes long +1098 1710847586187 XXXX 1710847586187, Thread 1098: XXXX 1710847586187, Exiting Thread 1098: ToolCommUsb::readTransfer, cr.status = 0x0 +1098 1710847586187 XXXX 1710847586187, Thread 1098: XXXX 1710847586187, Exiting Thread 1098: Commands::runScriptWithUpload +1098 1710847586187 XXXX 1710847586187, Thread 1098: XXXX 1710847586187, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586189 XXXX 1710847586189, Thread 1098: XXXX 1710847586189, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586189 XXXX 1710847586189, Thread 1098: XXXX 1710847586189, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847586190 XXXX 1710847586190, Thread 1098: XXXX 1710847586190, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586190 XXXX 1710847586190, Thread 1098: XXXX 1710847586190, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847586191 XXXX 1710847586191, Thread 1098: XXXX 1710847586191, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586191 XXXX 1710847586191, Thread 1098: XXXX 1710847586191, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847586192 XXXX 1710847586192, Thread 1098: XXXX 1710847586192, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586192 XXXX 1710847586192, Thread 1098: XXXX 1710847586192, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847586221 XXXX 1710847586221, Thread 1098: XXXX 1710847586221, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586221 XXXX 1710847586221, Thread 1098: XXXX 1710847586221, Entering Thread 1098: Commands::runScriptWithDownload, script name = WriteConfigmem +1098 1710847586235 XXXX 1710847586235, Thread 1098: XXXX 1710847586235, Exiting Thread 1098: Commands::runScriptWithDownload(WriteConfigmem) +1098 1710847586235 XXXX 1710847586235, Thread 1098: XXXX 1710847586235, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586237 XXXX 1710847586237, Thread 1098: XXXX 1710847586237, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586238 XXXX 1710847586238, Thread 1098: XXXX 1710847586238, Entering Thread 1098: Commands::runScriptBasic, script name = SetSpeedFromDevice, timeOut = -1 ms +1098 1710847586238 XXXX 1710847586238, Thread 1098: XXXX 1710847586238, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586238 XXXX 1710847586238, Thread 1098: XXXX 1710847586238, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xed, ... +1098 1710847586239 XXXX 1710847586239, Thread 1098: XXXX 1710847586239, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586239 XXXX 1710847586239, Thread 1098: XXXX 1710847586239, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0xec, ... +1098 1710847586240 XXXX 1710847586240, Thread 1098: XXXX 1710847586240, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586240 XXXX 1710847586240, Thread 1098: XXXX 1710847586240, Entering Thread 1098: Commands::runScriptBasic, script name = EnterTMOD_HV, timeOut = -1 ms +1098 1710847586270 XXXX 1710847586270, Thread 1098: XXXX 1710847586270, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586270 XXXX 1710847586270, Thread 1098: XXXX 1710847586270, Entering Thread 1098: Commands::runScriptWithUpload, script name = ReadConfigmem +1098 1710847586270 XXXX 1710847586270, Thread 1098: XXXX 1710847586270, Entering Thread 1098: ToolCommUsb::readTransfer, sideData is 0x55 bytes long, transferDataLength is 0x4 bytes long +1098 1710847586273 XXXX 1710847586273, Thread 1098: XXXX 1710847586273, Exiting Thread 1098: ToolCommUsb::readTransfer, cr.status = 0x0 +1098 1710847586273 XXXX 1710847586273, Thread 1098: XXXX 1710847586273, Exiting Thread 1098: Commands::runScriptWithUpload +1098 1710847586273 XXXX 1710847586273, Thread 1098: XXXX 1710847586273, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586275 XXXX 1710847586275, Thread 1098: XXXX 1710847586275, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:endOfOperations +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 null +1098 1710847586275 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847586275 XXXX 1710847586275, Thread 1098: XXXX 1710847586275, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586277 XXXX 1710847586277, Thread 1098: XXXX 1710847586277, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586277 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:endOfOperations +1098 1710847586277 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847586277 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847586277 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End + +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Pre:SendOperation +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Values: +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true +1098 1710847586279 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Payload End +1098 1710847586280 XXXX 1710847586280, Thread 1098: XXXX 1710847586280, Entering Thread 1098: Commands::runScriptBasic, script name = ExitTMOD, timeOut = -1 ms +1098 1710847586281 XXXX 1710847586281, Thread 1098: XXXX 1710847586281, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586282 XXXX 1710847586282, Thread 1098: XXXX 1710847586282, Entering Thread 1098: Commands::runScriptBasic with script contents. contents[0] = 0x42, ... +1098 1710847586282 XXXX 1710847586282, Thread 1098: XXXX 1710847586282, Exiting Thread 1098: Commands::runScriptBasic +1098 1710847586283 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Post:SendOperation +1098 1710847586283 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return Value +1098 1710847586283 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 None +1098 1710847586283 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_PIC16F887 Return End +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:Calling Update on plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@658e9694 +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:Entering plug and play Update(). Attached PID = 9036 +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:Entering MPLABCommEvent handler +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:MPLABCommEvent.pid = 9036 +105 1710847718083 GEN4_CONNECT_DIAGNOSTICS:eventType = MPLABCOMM_TOOL_UNPLUGGED +105 1710847718084 GEN4_CONNECT_DIAGNOSTICS:Exiting plug and play Update() +105 1710847718597 XXXX 1710847718596, Thread 105: com.Send returned false +105 1710847718600 XXXX 1710847718600, Thread 105: execCommand: exception after writeSideChanel null +105 1710847718600 GEN4_CONNECT_DIAGNOSTICS:Before MPLABCommTool.Connect() +105 1710847718600 GEN4_CONNECT_DIAGNOSTICS:After MPLABCommTool.Connect() +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:Calling Update on plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@658e9694 +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:Entering plug and play Update(). Attached PID = 9036 +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:Entering MPLABCommEvent handler +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:MPLABCommEvent.pid = 9036 +105 1710847718604 GEN4_CONNECT_DIAGNOSTICS:eventType = MPLABCOMM_TOOL_PLUGGEDIN + +105 1710847718604 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +105 1710847718604 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +105 1710847718604 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +105 1710847718604 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +105 1710847718617 XXXX 1710847718617, Thread 105: com.Send returned false +105 1710847718617 XXXX 1710847718617, Thread 105: execCommand: exception after writeSideChanel null +105 1710847718617 GEN4_CONNECT_DIAGNOSTICS:Exiting plug and play Update() + +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:EstablishCommunincations +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@2e5a1960 +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Post:EstablishCommunincations +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return Value +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 true +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Return End + +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Pre:GetFirmwareInfo +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 null +1124 1710848256983 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_PIC16F887 Payload End +1124 1710848256984 XXXX 1710848256984, Thread 1124: com.Send returned false +1124 1710848256984 XXXX 1710848256984, Thread 1124: execCommand: exception after writeSideChanel null diff --git a/src/picamp.X/libs/HCMS2913.X/Makefile b/src/picamp.X/libs/HCMS2913.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/src/picamp.X/libs/HCMS2913.X/h/HCMS2913.h b/src/picamp.X/libs/HCMS2913.X/h/HCMS2913.h new file mode 100644 index 0000000..75ce3c0 --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/h/HCMS2913.h @@ -0,0 +1,106 @@ +#ifndef HCMS2913_H +#define HCMS2913_H + +#include "HCMS2913.h" +#include +#include + +/* MANUAL: + * 1/3 FILL IN HCMS_SETTINGS STRUCT + * 2/3 RUN HCMS_spi_init() + * 3/3 RUN HCMS_init() + * HCMS_load_word AND HCMS_change_brightness CAN BE USED NOW. + */ +//!!Remember to set the Tristates to Output(0) for RSELECT, CENABLE, BLANK, RESET. And start the Port pins at 0. Dont forget your analog selection. +//FIGURE 1 ON PAGE 12 OF THE DATASHEET EXPLAINS EXACTLY WHY IT IS NECESSARY TO USE SPI MODE 0 (CKP0 CKE1). DATA IS LATCHED ON FALLING CLK WHILE nCE IS HIGH. + +typedef struct { + volatile unsigned char * REGaddress; + unsigned char pin; +} REGbit; + +typedef struct { + int s_insNeededFor200ns; + //spi buffer + volatile unsigned char * s_SSPBUF; + REGbit s_SSPMlsb; //assumption: SSPM is always 4 bits long + REGbit s_SSPBF; + //spi data + REGbit s_SCK_PIN; + REGbit s_SDI_DDIR; + REGbit s_SDO_DDIR; + REGbit s_SCK_DDIR; + //spi int + REGbit s_SSPINTE; + REGbit s_SSPINTFLAG; + //spi settings + REGbit s_CKP; + REGbit s_CKE; + REGbit s_SSPEN; + REGbit s_SMP; + //screen pins + REGbit s_RESETpin; + REGbit s_BLANKpin; + REGbit s_CENABLEpin; + REGbit s_RSELECTpin; +} HCMS_settings; + +// PWM works on normal 4 bit binary: 0%, 1.7%, 3.3%, 5%, 6.7%, 8.3%, 11.7%, 15%, 18%, 23%, 30%, 37%, 47%, 60%, 80%, 100% +// Peak Current Brightness Control: 00 = 73%, 01 = 50%, 10 = 31%, 11 = 100% +// Sleep: 1 = Normal operation, 0 = Disables internal Oscillator-display blank + +typedef struct { + bool PWM0, PWM1, PWM2, PWM3, PKBC0, PKBC1, SLEEP, WORDSELECT; +} HCMS_ControlWordZero; + +//Serial/Simultaneous Data Out: 0 = D out holds contents of Bit D7, 1 = D out is functionally tied to Din. +//External Display Oscillator Prescaler: 0 = 1, 1 = 8. +//D2 - D6: Reserved for Future Use (Bits D 2 -D6 must be set Low) + +typedef struct { + bool SSDO, EXDO, D2, D3, D4, D5, D6, WORDSELECT; +} HCMS_ControlWordOne; + +//these are loaded MSB first, make sure your code reflects this! +//HCMS_ControlWordZero HCMS2913_word0 = {.PWM0 = 0, .PWM1 = 0, .PWM2 = 0, .PWM3 = 0, .PKBC0 = 0, .PKBC1 = 0, .SLEEP = 1, .WORDSELECT = 0}; +//HCMS_ControlWordOne HCMS2913_word1 = {.SSDO = 0, .EXDO = 0, .D2 = 0, .D3 = 0, .D4 = 0, .D5 = 0, .D6 = 0, .WORDSELECT = 1}; + +typedef enum { + MST_OSC_DIV_04, // 0x0: 0000 + MST_OSC_DIV_16, // 0x1: 0001 + MST_OSC_DIV_64, // 0x2: 0010 + MST_OSC_DIV_T2, // 0x3: 0011 + SLV_SS_EN, // 0x4: 0100 - not used in this version of our lib ... + SLV_SS_DIS // 0x5: 0101 +} sspmode; + +// Datasheet SMP (Sample Timing) behavior in (SPI MASTER MODE ONLY): +// 1 = Input data sampled (received) at end of data output time +// 0 = Input data sampled (recieved) at middle of data output time + +typedef enum { + SMP0_SDI_MIDDLE, SMP1_SDI_END +} rxsmpmoment; + +// Datasheet CKP (Clock Polarity) select bit behavior (SPI mode): +// 1 = Idle state for clock is a high level +// 0 = Idle state for clock is a low level + +typedef enum { + CKP0_CPOL0_IDLE_LOW, CKP1_CPOL1_IDLE_HIGH +} clkpol; + +// Datasheet CKE (Clock Edge) select bit behavior (SPI mode): +// 1 = Transmit occurs on transition from active to Idle clock state +// 0 = Transmit occurs on transition from Idle to active clock state +// ! NOTE: Microchip CKE bit is always the inverse of Motorola CPHA bit! + +typedef enum { + CKE0_CPHA1_TRSMIT_IDL2ACT, CKE1_CPHA0_TRSMIT_ACT2IDL +} txclkedge; + +void HCMS_spi_init(sspmode mst_slv_oscdiv, rxsmpmoment sdi_rx_smp, clkpol clock_pol, txclkedge sdo_tx_edge, const HCMS_settings* _settings); +void HCMS_init(const HCMS_settings* _settings); +void HCMS_load_word(const char *_string, const HCMS_settings* _settings); +void HCMS_change_brightness(uint8_t setTo, const HCMS_settings* _settings); +#endif diff --git a/picamp.X/include/ascii.h b/src/picamp.X/libs/HCMS2913.X/h/HCMS_ASCII.h old mode 100755 new mode 100644 similarity index 78% rename from picamp.X/include/ascii.h rename to src/picamp.X/libs/HCMS2913.X/h/HCMS_ASCII.h index 729bade..0364d43 --- a/picamp.X/include/ascii.h +++ b/src/picamp.X/libs/HCMS2913.X/h/HCMS_ASCII.h @@ -1,10 +1,11 @@ -#ifndef ASCII_H -#define ASCII_H +#ifndef HCMS_ASCII_H +#define HCMS_ASCII_H +#define ASCII_TABLE_SIZE 106 // characters taken from "HCMS-29xx/HCMS-39xx LED Displays Character Set (ASCII and Katakana)" // cherry picked and ordered by Burhan Topaloglu // item 6 is for lookup. -const char ascii[128][6] = { +const char HCMS_ascii[ASCII_TABLE_SIZE][6] = { // debug {0x00, 0x00, 0x00, 0x00, 0x00, ' '}, // 0 space/empty {0x2A, 0x55, 0x2A, 0x55, 0x2A, 0xD7}, // 1 checker, using the ascii for x cross @@ -123,29 +124,29 @@ const char ascii[128][6] = { {0x08, 0x04, 0x08, 0x10, 0x08, '~'}, // 104 ~ // user defined or unusual desired characters - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 105 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 106 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 107 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 108 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 109 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 110 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 111 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 112 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 113 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 114 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 115 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 116 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 117 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 118 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 119 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 120 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 121 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 122 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 123 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 124 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 125 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 126 filler - FULL - {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8} // 127 FINAL - FULL Latin capital letter O with slash + {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8} // 105 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 106 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 107 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 108 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 109 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 110 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 111 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 112 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 113 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 114 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 115 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 116 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 117 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 118 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 119 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 120 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 121 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 122 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 123 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 124 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 125 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8}, // 126 filler - FULL +// {0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xD8} // 127 FINAL - FULL Latin capital letter O with slash }; // filler has been added to keep size static in the future, this script may be edited to add custom characters if desired #endif \ No newline at end of file diff --git a/src/picamp.X/libs/HCMS2913.X/h/HCMS_brightness.h b/src/picamp.X/libs/HCMS2913.X/h/HCMS_brightness.h new file mode 100644 index 0000000..ab3e0a2 --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/h/HCMS_brightness.h @@ -0,0 +1,136 @@ +#ifndef HCMS_BRIGHTNESS_H +#define HCMS_BRIGHTNESS_H + +#include +#define HCMS2913_BRIGHTNESS_SETTINGS_COUNT 59 +//This header includes HCMS_BRIGHT_VALUES[59] and HCMS_BRIGHT_PERCENT[59] +//All possible brightness settings put into a spreadsheet and sorted by Burhan Topaloglu, this is 2^4 * 4 = 64 - 5 duplicates (0 0 0 30 30 15 15) = 59 +//These values include the 2 MSBs for word0, d7 to select word0 and d6 to set SLEEP to normal +//Information derives from the Avago "HCMS-29xx Series High Performance CMOS 5×7 Alphanumeric Displays" Datasheet +//Not a 2D array this time, dont need to store 59 extra floats if I just need 8 bits for the required message +const uint8_t HCMS_BRIGHT_VALUES[HCMS2913_BRIGHTNESS_SETTINGS_COUNT] = { + 0b01100000, + 0b01100001, + 0b01010001, + 0b01100010, + 0b01000001, + 0b01100011, + 0b01010010, + 0b01110001, + 0b01100100, + 0b01000010, + 0b01010011, + 0b01100101, + 0b01110010, + 0b01010100, + 0b01100110, + 0b01000011, + 0b01010101, + 0b01100111, + 0b01000100, + 0b01110011, + 0b01101000, + 0b01010110, + 0b01000101, + 0b01110100, + 0b01101001, + 0b01010111, + 0b01110101, + 0b01000110, + 0b01011000, + 0b01101010, + 0b01000111, + 0b01101011, + 0b01011001, + 0b01110110, + 0b01001000, + 0b01101100, + 0b01011010, + 0b01001001, + 0b01111000, + 0b01011011, + 0b01101101, + 0b01001010, + 0b01111001, + 0b01011100, + 0b01101110, + 0b01001011, + 0b01011101, + 0b01101111, + 0b01001100, + 0b01111011, + 0b01011110, + 0b01001101, + 0b01111100, + 0b01011111, + 0b01001110, + 0b01111101, + 0b01001111, + 0b01111110, + 0b01111111 +}; + +/* +const float HCMS_BRIGHT_PERCENT[HCMS2913_BRIGHTNESS_SETTINGS_COUNT] = { +0.0f, +0.527f, +0.85f, +1.023f, +1.241f, +1.55f, +1.65f, +1.7f, +2.077f, +2.409f, +2.5f, +2.573f, +3.3f, +3.35f, +3.627f, +3.65f, +4.15f, +4.65f, +4.891f, +5.0f, +5.58f, +5.85f, +6.059f, +6.7f, +7.13f, +7.5f, +8.3f, +8.541f, +9.0f, +9.3f, +10.95f, +11.47f, +11.5f, +11.7f, +13.14f, +14.57f, +15.0f, +16.79f, +18.0f, +18.5f, +18.6f, +21.9f, +23.0f, +23.5f, +24.8f, +27.01f, +30.0f, +31.0f, +34.31f, +37.0f, +40.0f, +43.8f, +47.0f, +50.0f, +58.4f, +60.0f, +73.0f, +80.0f, +100.0f +}; + */ +#endif \ No newline at end of file diff --git a/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-default.mk b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..eb1fae9 --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-default.mk @@ -0,0 +1,156 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=mkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=a +DEBUGGABLE_SUFFIX=a +FINAL_IMAGE=${DISTDIR}/HCMS2913.X.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=a +DEBUGGABLE_SUFFIX=a +FINAL_IMAGE=${DISTDIR}/HCMS2913.X.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=src/HCMS2913.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/src/HCMS2913.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/src/HCMS2913.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/src/HCMS2913.p1 + +# Source Files +SOURCEFILES=src/HCMS2913.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/HCMS2913.X.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F887 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/src/HCMS2913.p1: src/HCMS2913.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}/src" + @${RM} ${OBJECTDIR}/src/HCMS2913.p1.d + @${RM} ${OBJECTDIR}/src/HCMS2913.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../../../../../.local/share/microchip/xc8/v2.46/pic/include/c90" -I"../../../../../.local/share/microchip/xc8/v2.46/pic/include/c99" -I"../../../../../.local/share/microchip/xc8/v2.46/pic/include/legacy" -I"../../../../../.local/share/microchip/xc8/v2.46/pic/include/proc" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/src/HCMS2913.p1 src/HCMS2913.c + @-${MV} ${OBJECTDIR}/src/HCMS2913.d ${OBJECTDIR}/src/HCMS2913.p1.d + @${FIXDEPS} ${OBJECTDIR}/src/HCMS2913.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/src/HCMS2913.p1: src/HCMS2913.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}/src" + @${RM} ${OBJECTDIR}/src/HCMS2913.p1.d + @${RM} ${OBJECTDIR}/src/HCMS2913.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../../../../../.local/share/microchip/xc8/v2.46/pic/include/c90" -I"../../../../../.local/share/microchip/xc8/v2.46/pic/include/c99" -I"../../../../../.local/share/microchip/xc8/v2.46/pic/include/legacy" -I"../../../../../.local/share/microchip/xc8/v2.46/pic/include/proc" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/src/HCMS2913.p1 src/HCMS2913.c + @-${MV} ${OBJECTDIR}/src/HCMS2913.d ${OBJECTDIR}/src/HCMS2913.p1.d + @${FIXDEPS} ${OBJECTDIR}/src/HCMS2913.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: archive +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/HCMS2913.X.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} ${DISTDIR} + ${MP_AR} $(MP_EXTRA_AR_PRE) --target $(MP_PROCESSOR_OPTION) -mrom=default,-1f00-1ffe -mram=default,-0-0,-70-70,-80-80,-f0-f0,-100-100,-170-170,-180-180,-1e5-1f0 -r ${DISTDIR}/HCMS2913.X.a ${OBJECTFILES_QUOTED_IF_SPACED} + @${RM} ${DISTDIR}/HCMS2913.X.hex + +else +${DISTDIR}/HCMS2913.X.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} ${DISTDIR} + ${MP_AR} $(MP_EXTRA_AR_PRE) --target $(MP_PROCESSOR_OPTION) -r ${DISTDIR}/HCMS2913.X.a ${OBJECTFILES_QUOTED_IF_SPACED} + +endif + + +# Subprojects +.build-subprojects: + + +# Subprojects +.clean-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-genesis.properties b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..0006772 --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Thu Mar 28 11:18:33 CET 2024 +default.languagetoolchain.version=2.46 +default.Pack.dfplocation=/home/burhan/.local/share/microchip/mplabx/v6.20/packs/Microchip/PIC16Fxxx_DFP/1.6.156 +conf.ids=default +default.languagetoolchain.dir=/home/burhan/.local/share/microchip/xc8/v2.46/bin +host.id=1odb-89vf-4o +configurations-xml=babcd4603821b37b337d5ce6e03494a0 +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=f612087c95360c842296d189edfe3321 +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=bf89cdcdd6c0a49174fe4b605ef2b42d +proj.dir=/home/burhan/Desktop/PROJ ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/HCMS2913.X +default.com-microchip-mplab-mdbcore-pk4hybrid-Pk4HybridTooImpl.md5=916239579355067caf3c3a7796c790dc +host.platform=linux diff --git a/picamp.X/nbproject/Makefile-impl.mk b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-impl.mk similarity index 98% rename from picamp.X/nbproject/Makefile-impl.mk rename to src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-impl.mk index decd326..a548140 100644 --- a/picamp.X/nbproject/Makefile-impl.mk +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-impl.mk @@ -24,7 +24,7 @@ CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} # Project Name -PROJECTNAME=picamp.X +PROJECTNAME=HCMS2913.X # Active Configuration DEFAULTCONF=default diff --git a/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-local-default.mk b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..d461158 --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,36 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +PATH_TO_IDE_BIN=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="/home/burhan/.local/share/microchip/mplabx/v6.20/sys/java/zulu8.64.0.19-ca-fx-jre8.0.345-linux_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_LD="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_AR="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-ar" +DEP_GEN=${MP_JAVA_PATH}java -jar "/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_LD_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_AR_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +DFP_DIR=/home/burhan/.local/share/microchip/mplabx/v6.20/packs/Microchip/PIC16Fxxx_DFP/1.6.156 diff --git a/picamp.X/nbproject/Makefile-variables.mk b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-variables.mk similarity index 51% rename from picamp.X/nbproject/Makefile-variables.mk rename to src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-variables.mk index 1d6c920..e00c11c 100644 --- a/picamp.X/nbproject/Makefile-variables.mk +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/Makefile-variables.mk @@ -6,5 +6,5 @@ CND_BASEDIR=`pwd` # default configuration CND_ARTIFACT_DIR_default=dist/default/production -CND_ARTIFACT_NAME_default=picamp.X.production.hex -CND_ARTIFACT_PATH_default=dist/default/production/picamp.X.production.hex +CND_ARTIFACT_NAME_default=HCMS2913.X.a +CND_ARTIFACT_PATH_default=dist/default/production/HCMS2913.X.a diff --git a/src/picamp.X/libs/HCMS2913.X/nbproject/configurations.xml b/src/picamp.X/libs/HCMS2913.X/nbproject/configurations.xml new file mode 100644 index 0000000..db5fb51 --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/configurations.xml @@ -0,0 +1,321 @@ + + + + + + h/HCMS2913.h + h/HCMS_brightness.h + h/HCMS_ASCII.h + + + + Makefile + + + + + + src/HCMS2913.c + + + + + src + h + + Makefile + + + + localhost + PIC16F887 + + + pk4hybrid + XC8 + 2.46 + 2 + + + + + + + + + + + + + + + false + false + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/picamp.X/libs/HCMS2913.X/nbproject/private/configurations.xml b/src/picamp.X/libs/HCMS2913.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..b95eed5 --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + + /home/burhan/.local/share/microchip/xc8/v2.46/bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/src/picamp.X/libs/HCMS2913.X/nbproject/private/private.xml b/src/picamp.X/libs/HCMS2913.X/nbproject/private/private.xml new file mode 100644 index 0000000..a94871c --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/private/private.xml @@ -0,0 +1,9 @@ + + + + + + file:/home/burhan/Desktop/PROJ%20ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/HCMS2913.X/src/HCMS2913.c + + + diff --git a/src/picamp.X/libs/HCMS2913.X/nbproject/project.xml b/src/picamp.X/libs/HCMS2913.X/nbproject/project.xml new file mode 100644 index 0000000..996e67d --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/nbproject/project.xml @@ -0,0 +1,26 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + HCMS2913 + 6a2d0ead-ffe0-4dcc-9ecd-ea6e3ef7f9aa + 0 + ISO-8859-1 + + + src + h + + + + default + 3 + + + + false + + + + diff --git a/src/picamp.X/libs/HCMS2913.X/src/HCMS2913.c b/src/picamp.X/libs/HCMS2913.X/src/HCMS2913.c new file mode 100644 index 0000000..06f670d --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/src/HCMS2913.c @@ -0,0 +1,177 @@ +#include "./../h/HCMS2913.h" +#include "./../h/HCMS_ASCII.h" +#include "./../h/HCMS_brightness.h" + +//To do: fix types in HCMS_SETTINGS SO PINS CAN BE PASSED TO THE STRUCT + +const uint8_t init_word0 = 0b01111111, init_word1 = 0b10000000; +// 1/3. +//HCMS_SETTINGS = {}; + +void HCMS_delay200ns(const HCMS_settings* _settings); + +void HCMS_setbitinreg(REGbit a, short value) { + //uint8_t mask = ~(1 << a.pin); 0b11111110 + if (value == 0) + *a.REGaddress &= ~(1 << a.pin); + else + *a.REGaddress |= 1 << a.pin; +} + +bool HCMS_getbitinreg(REGbit a) { + //uint8_t mask = 1 << _bit.pin; 0b00000001 + return (*a.REGaddress & (1 << a.pin)) >> a.pin; +} + +// 2/3. + +void HCMS_spi_init(sspmode mst_slv_oscdiv, rxsmpmoment sdi_rx_smp, clkpol clock_pol, txclkedge sdo_tx_edge, const HCMS_settings* _settings) { + *_settings->s_SSPMlsb.REGaddress &= ~(mst_slv_oscdiv << _settings->s_SSPMlsb.pin); + + HCMS_setbitinreg(_settings->s_SDO_DDIR, 0); + + if (mst_slv_oscdiv & SLV_SS_EN || mst_slv_oscdiv & SLV_SS_DIS) { //SPI SLAVE + HCMS_setbitinreg(_settings->s_SMP, 0); + HCMS_setbitinreg(_settings->s_SCK_DDIR, 1); + HCMS_setbitinreg(_settings->s_CKP, HCMS_getbitinreg(_settings->s_SCK_PIN)); + HCMS_setbitinreg(_settings->s_SSPINTE, 1); + } else { //SPI MASTER + HCMS_setbitinreg(_settings->s_SMP, sdi_rx_smp); + HCMS_setbitinreg(_settings->s_SCK_DDIR, 0); + HCMS_setbitinreg(_settings->s_CKP, clock_pol); + } + + // CKE = ~(clock_pol ^ sdo_tx_edge); //XNOR + HCMS_setbitinreg(_settings->s_CKE, sdo_tx_edge); + if (clock_pol == 1 || HCMS_getbitinreg(_settings->s_SCK_PIN)) { + HCMS_setbitinreg(_settings->s_CKE, 1); + } + HCMS_setbitinreg(_settings->s_SSPEN, 1); +} + +void spi_transmit(char c, volatile unsigned char * _buffer) { + *_buffer = c; +} + +// 3/3. + +void HCMS_init(const HCMS_settings* _settings) { + //reset + HCMS_setbitinreg(_settings->s_RESETpin, 0); + HCMS_delay200ns(_settings); + HCMS_setbitinreg(_settings->s_RESETpin, 1); + + //flush register + HCMS_setbitinreg(_settings->s_RSELECTpin, 0); + HCMS_setbitinreg(_settings->s_CENABLEpin, 0); + for (int i = 0; i < 40; i++) { + spi_transmit(0x00, _settings->s_SSPBUF); + HCMS_delay200ns(_settings); + } + HCMS_setbitinreg(_settings->s_CENABLEpin, 1); + HCMS_setbitinreg(_settings->s_RSELECTpin, 1); + + HCMS_setbitinreg(_settings->s_CENABLEpin, 0); + spi_transmit(init_word0, _settings->s_SSPBUF); + HCMS_delay200ns(_settings); + HCMS_setbitinreg(_settings->s_CENABLEpin, 1); + HCMS_setbitinreg(_settings->s_CENABLEpin, 0); + spi_transmit(init_word1, _settings->s_SSPBUF); + HCMS_delay200ns(_settings); + HCMS_setbitinreg(_settings->s_CENABLEpin, 1); + + HCMS_setbitinreg(_settings->s_RSELECTpin, 0); +} + +//set brightness in control register 0 + +void HCMS_change_brightness(uint8_t setTo, const HCMS_settings* _settings) { + //unsigned so lower bound by nature + if (setTo > HCMS2913_BRIGHTNESS_SETTINGS_COUNT - 1) { +//if too high, set to 100% + setTo = HCMS2913_BRIGHTNESS_SETTINGS_COUNT - 1; + } + + uint8_t message = 0b01000000; + message = HCMS_BRIGHT_VALUES[setTo]; + + HCMS_setbitinreg(_settings->s_RSELECTpin, 1); + + HCMS_setbitinreg(_settings->s_CENABLEpin, 0); + spi_transmit(message, _settings->s_SSPBUF); + HCMS_delay200ns(_settings); + HCMS_setbitinreg(_settings->s_CENABLEpin, 1); + HCMS_setbitinreg(_settings->s_CENABLEpin, 0); + spi_transmit(message, _settings->s_SSPBUF); + HCMS_delay200ns(_settings); + HCMS_setbitinreg(_settings->s_CENABLEpin, 1); + + HCMS_setbitinreg(_settings->s_RSELECTpin, 0); +} + +//void load_buffer(int character, int position, char *bufferSelected) { +// for (int i = 0; i < 5; i++) { +// bufferSelected[position * 5 + i] = HCMS_ascii[character][i]; +// } +//} + +short TableLookup(char lookup) { + for (int i = 0; i < ASCII_TABLE_SIZE; ++i) { + if (HCMS_ascii[i][5] == lookup) { + return i; + } + } + return ASCII_TABLE_SIZE - 1; // Character not found in the ASCII table +} + +void HCMS_load_word(const char *_string, const HCMS_settings* _settings) { + short character = ASCII_TABLE_SIZE - 1; + char letterRow = ' '; + + HCMS_setbitinreg(_settings->s_CENABLEpin, 0); + for (short i = 0; i < 8; i++) { + //display character loop. send letter out per character + //check where on the table the current character is + character = TableLookup(_string[i]); + for (short j = 0; j < 5; j++) { + //column loop, fill letter with lookup table + letterRow = HCMS_ascii[character][j]; + spi_transmit(letterRow, _settings->s_SSPBUF); + } + } + + // while (_string[length] != '\0' && length < 8) { + // load_buffer(TableLookup(_string[length]), length, bufferVar); + // length++; + // } + // + // while (length < 8) { + // load_buffer(TableLookup(' '), length, bufferVar); + // length++; + // } + // + // for (int i = 0; i < 40; i++) { + // spi_transmit(bufferVar[i], _settings.s_SSPBUF); + // } + + HCMS_delay200ns(_settings); + HCMS_setbitinreg(_settings->s_CENABLEpin, 1); +} + +void HCMS_delay200ns(const HCMS_settings* _settings) { + // // 1s / 10MHz = 10ns! All that is required it to get a ratio! + // float cyclesRequired = _settings.s_Timer_Frequency / 10000000; + // if (cyclesRequired < 1.0f) cyclesRequired = 1.0f; + // unsigned char * yes = _ticks * (_settings.s_Timer_MaxValue - (unsigned char) cyclesRequired); + // _settings.s_Timer_REG = yes; + // + // while (HCMS_getbitinreg(_settings.s_Timer_INTF)) { + // } + // HCMS_setbitinreg(_settings.s_Timer_INTF, 0); // set INTF to 0 + //timer not needed, most PICs have an instruction speed very close to 200ns + int time = 1 + _settings->s_insNeededFor200ns; + + while (time > 0) { + time--; + } +} \ No newline at end of file diff --git a/src/picamp.X/libs/HCMS2913.X/src/HCMSset16f887.txt b/src/picamp.X/libs/HCMS2913.X/src/HCMSset16f887.txt new file mode 100644 index 0000000..4f4079f --- /dev/null +++ b/src/picamp.X/libs/HCMS2913.X/src/HCMSset16f887.txt @@ -0,0 +1,53 @@ +//PIC16F887 +const HCMS_settings screenSettings_887 = { + 1, + //spi buffer + &SSPBUF, + {&SSPCON, 0}, + {&SSPSTAT, 0}, + //spi data + {&PORTC, 3}, + {&TRISC, 4}, //SDI + {&TRISC, 5}, + {&TRISC, 3}, + //spi int + {&PIE1, 3}, + {&PIR1, 3}, + //spi settings + {&SSPCON, 4}, + {&SSPSTAT, 6}, + {&SSPCON, 5}, + {&SSPSTAT, 7}, + //screen pins + {&PORTC, 2}, + {&PORTC, 6}, + {&PORTC, 4}, + {&PORTC, 7} +}; + +//PIC16F1829 +const HCMS_settings screenSettings_1829 = { + 2, + //spi buffer + &SSP1BUF, + {&SSP1CON1, 0}, + {&SSP1STAT, 0}, + //spi data + {&PORTB, 6}, + {&TRISC, 2}, //SDI + {&TRISC, 7}, + {&TRISB, 6}, + //spi int + {&PIE1, 3}, + {&PIR1, 3}, + //spi settings + {&SSP1CON1, 4}, + {&SSP1STAT, 6}, + {&SSP1CON1, 5}, + {&SSP1STAT, 7}, + //screen pins + {&PORTB, 4}, + {&PORTB, 7}, + {&PORTC, 2}, + {&PORTB, 5} +}; diff --git a/src/picamp.X/libs/IR_LIB/IRBind1829.c b/src/picamp.X/libs/IR_LIB/IRBind1829.c new file mode 100644 index 0000000..821b913 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRBind1829.c @@ -0,0 +1,83 @@ +#include "./IRLib_v7.h" + +void IRBind1829(void) { + IRR.address = (unsigned char*) 0x00C; + IRR.offset = 2; + IRR.size = 1; + + MTimer.address = (unsigned char*) 0x01A; + MTimer.offset = 0; + MTimer.size = 8; + + MTOn.address = (unsigned char*) 0x01C; + MTOn.offset = 2; + MTOn.size = 1; + + MTIF.address = (unsigned char*) 0x011; + MTIF.offset = 1; + MTIF.size = 1; + + MTPR.address = (unsigned char*) 0x01B; + MTPR.offset = 0; + MTPR.size = 8; + + MTPrSc.address = (unsigned char*) 0x01C; + MTPrSc.offset = 0; + MTPrSc.size = 2; + + MTPoSc.address = (unsigned char*) 0x01C; + MTPoSc.offset = 3; + MTPoSc.size = 4; + + TTimer.address = (unsigned char*) 0x016; + TTimer.offset = 0; + TTimer.size = 8; + + TTOn.address = (unsigned char*) 0x018; + TTOn.offset = 0; + TTOn.size = 1; + + TTIF.address = (unsigned char*) 0x011; + TTIF.offset = 0; + TTIF.size = 1; + + TTPrSc.address = (unsigned char*) 0x018; + TTPrSc.offset = 4; + TTPrSc.size = 2; + + IntPinTrisReg.address = (unsigned char*) 0x08C; + IntPinTrisReg.offset = 2; + IntPinTrisReg.size = 1; + + IntPinAnselReg.address = (unsigned char*) 0x18C; + IntPinAnselReg.offset = 2; + IntPinAnselReg.size = 1; + + IntPinIF.address = (unsigned char*) 0x00B; + IntPinIF.offset = 1; + IntPinIF.size = 1; + + IntEdgeReg.address = (unsigned char*) 0x095; + IntEdgeReg.offset = 6; + IntEdgeReg.size = 1; + + IntConGIE.address = (unsigned char*) 0x00B; + IntConGIE.offset = 7; + IntConGIE.size = 1; + + IntConINTE.address = (unsigned char*) 0x00B; + IntConINTE.offset = 4; + IntConINTE.size = 1; + + IntConPEIE.address = (unsigned char*) 0x00B; + IntConPEIE.offset = 6; + IntConPEIE.size = 1; + + PIEMTIE.address = (unsigned char*) 0x091; + PIEMTIE.offset = 1; + PIEMTIE.size = 1; + + PIETTIE.address = (unsigned char*) 0x091; + PIETTIE.offset = 0; + PIETTIE.size = 1; +} \ No newline at end of file diff --git a/src/picamp.X/libs/IR_LIB/IRBind887.c b/src/picamp.X/libs/IR_LIB/IRBind887.c new file mode 100644 index 0000000..0867227 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRBind887.c @@ -0,0 +1,83 @@ +#include "./IRLib_v7.h" + +void IRBind887(void) { + IRR.address = (unsigned char*) 0x006; + IRR.offset = 0; + IRR.size = 1; + + MTimer.address = (unsigned char*) 0x011; + MTimer.offset = 0; + MTimer.size = 8; + + MTOn.address = (unsigned char*) 0x012; + MTOn.offset = 2; + MTOn.size = 1; + + MTIF.address = (unsigned char*) 0x00C; + MTIF.offset = 1; + MTIF.size = 1; + + MTPR.address = (unsigned char*) 0x092; + MTPR.offset = 0; + MTPR.size = 8; + + MTPrSc.address = (unsigned char*) 0x012; + MTPrSc.offset = 0; + MTPrSc.size = 2; + + MTPoSc.address = (unsigned char*) 0x012; + MTPoSc.offset = 3; + MTPoSc.size = 4; + + TTimer.address = (unsigned char*) 0x00E; + TTimer.offset = 0; + TTimer.size = 8; + + TTOn.address = (unsigned char*) 0x010; + TTOn.offset = 0; + TTOn.size = 1; + + TTIF.address = (unsigned char*) 0x00C; + TTIF.offset = 0; + TTIF.size = 1; + + TTPrSc.address = (unsigned char*) 0x010; + TTPrSc.offset = 4; + TTPrSc.size = 2; + + IntPinTrisReg.address = (unsigned char*) 0x086; + IntPinTrisReg.offset = 0; + IntPinTrisReg.size = 1; + + IntPinAnselReg.address = (unsigned char*) 0x189; + IntPinAnselReg.offset = 4; + IntPinAnselReg.size = 1; + + IntPinIF.address = (unsigned char*) 0x00B; + IntPinIF.offset = 1; + IntPinIF.size = 1; + + IntEdgeReg.address = (unsigned char*) 0x081; + IntEdgeReg.offset = 6; + IntEdgeReg.size = 1; + + IntConGIE.address = (unsigned char*) 0x00B; + IntConGIE.offset = 7; + IntConGIE.size = 1; + + IntConINTE.address = (unsigned char*) 0x00B; + IntConINTE.offset = 4; + IntConINTE.size = 1; + + IntConPEIE.address = (unsigned char*) 0x00B; + IntConPEIE.offset = 6; + IntConPEIE.size = 1; + + PIEMTIE.address = (unsigned char*) 0x08C; + PIEMTIE.offset = 1; + PIEMTIE.size = 1; + + PIETTIE.address = (unsigned char*) 0x08C; + PIETTIE.offset = 0; + PIETTIE.size = 1; +} \ No newline at end of file diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRBind1829.c b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRBind1829.c new file mode 100644 index 0000000..821b913 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRBind1829.c @@ -0,0 +1,83 @@ +#include "./IRLib_v7.h" + +void IRBind1829(void) { + IRR.address = (unsigned char*) 0x00C; + IRR.offset = 2; + IRR.size = 1; + + MTimer.address = (unsigned char*) 0x01A; + MTimer.offset = 0; + MTimer.size = 8; + + MTOn.address = (unsigned char*) 0x01C; + MTOn.offset = 2; + MTOn.size = 1; + + MTIF.address = (unsigned char*) 0x011; + MTIF.offset = 1; + MTIF.size = 1; + + MTPR.address = (unsigned char*) 0x01B; + MTPR.offset = 0; + MTPR.size = 8; + + MTPrSc.address = (unsigned char*) 0x01C; + MTPrSc.offset = 0; + MTPrSc.size = 2; + + MTPoSc.address = (unsigned char*) 0x01C; + MTPoSc.offset = 3; + MTPoSc.size = 4; + + TTimer.address = (unsigned char*) 0x016; + TTimer.offset = 0; + TTimer.size = 8; + + TTOn.address = (unsigned char*) 0x018; + TTOn.offset = 0; + TTOn.size = 1; + + TTIF.address = (unsigned char*) 0x011; + TTIF.offset = 0; + TTIF.size = 1; + + TTPrSc.address = (unsigned char*) 0x018; + TTPrSc.offset = 4; + TTPrSc.size = 2; + + IntPinTrisReg.address = (unsigned char*) 0x08C; + IntPinTrisReg.offset = 2; + IntPinTrisReg.size = 1; + + IntPinAnselReg.address = (unsigned char*) 0x18C; + IntPinAnselReg.offset = 2; + IntPinAnselReg.size = 1; + + IntPinIF.address = (unsigned char*) 0x00B; + IntPinIF.offset = 1; + IntPinIF.size = 1; + + IntEdgeReg.address = (unsigned char*) 0x095; + IntEdgeReg.offset = 6; + IntEdgeReg.size = 1; + + IntConGIE.address = (unsigned char*) 0x00B; + IntConGIE.offset = 7; + IntConGIE.size = 1; + + IntConINTE.address = (unsigned char*) 0x00B; + IntConINTE.offset = 4; + IntConINTE.size = 1; + + IntConPEIE.address = (unsigned char*) 0x00B; + IntConPEIE.offset = 6; + IntConPEIE.size = 1; + + PIEMTIE.address = (unsigned char*) 0x091; + PIEMTIE.offset = 1; + PIEMTIE.size = 1; + + PIETTIE.address = (unsigned char*) 0x091; + PIETTIE.offset = 0; + PIETTIE.size = 1; +} \ No newline at end of file diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRBind887.c b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRBind887.c new file mode 100644 index 0000000..0867227 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRBind887.c @@ -0,0 +1,83 @@ +#include "./IRLib_v7.h" + +void IRBind887(void) { + IRR.address = (unsigned char*) 0x006; + IRR.offset = 0; + IRR.size = 1; + + MTimer.address = (unsigned char*) 0x011; + MTimer.offset = 0; + MTimer.size = 8; + + MTOn.address = (unsigned char*) 0x012; + MTOn.offset = 2; + MTOn.size = 1; + + MTIF.address = (unsigned char*) 0x00C; + MTIF.offset = 1; + MTIF.size = 1; + + MTPR.address = (unsigned char*) 0x092; + MTPR.offset = 0; + MTPR.size = 8; + + MTPrSc.address = (unsigned char*) 0x012; + MTPrSc.offset = 0; + MTPrSc.size = 2; + + MTPoSc.address = (unsigned char*) 0x012; + MTPoSc.offset = 3; + MTPoSc.size = 4; + + TTimer.address = (unsigned char*) 0x00E; + TTimer.offset = 0; + TTimer.size = 8; + + TTOn.address = (unsigned char*) 0x010; + TTOn.offset = 0; + TTOn.size = 1; + + TTIF.address = (unsigned char*) 0x00C; + TTIF.offset = 0; + TTIF.size = 1; + + TTPrSc.address = (unsigned char*) 0x010; + TTPrSc.offset = 4; + TTPrSc.size = 2; + + IntPinTrisReg.address = (unsigned char*) 0x086; + IntPinTrisReg.offset = 0; + IntPinTrisReg.size = 1; + + IntPinAnselReg.address = (unsigned char*) 0x189; + IntPinAnselReg.offset = 4; + IntPinAnselReg.size = 1; + + IntPinIF.address = (unsigned char*) 0x00B; + IntPinIF.offset = 1; + IntPinIF.size = 1; + + IntEdgeReg.address = (unsigned char*) 0x081; + IntEdgeReg.offset = 6; + IntEdgeReg.size = 1; + + IntConGIE.address = (unsigned char*) 0x00B; + IntConGIE.offset = 7; + IntConGIE.size = 1; + + IntConINTE.address = (unsigned char*) 0x00B; + IntConINTE.offset = 4; + IntConINTE.size = 1; + + IntConPEIE.address = (unsigned char*) 0x00B; + IntConPEIE.offset = 6; + IntConPEIE.size = 1; + + PIEMTIE.address = (unsigned char*) 0x08C; + PIEMTIE.offset = 1; + PIEMTIE.size = 1; + + PIETTIE.address = (unsigned char*) 0x08C; + PIETTIE.offset = 0; + PIETTIE.size = 1; +} \ No newline at end of file diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRLib_v7.c b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRLib_v7.c new file mode 100644 index 0000000..599f3a6 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRLib_v7.c @@ -0,0 +1,74 @@ +#include "./IRLib_v7.h" + +void IRInit(IntEdge IntEdge, unsigned char vMTPR, unsigned char vPTPrSc, unsigned char vMTPoSc, unsigned char vTTPrSc) { + //interrupts + IR_SetReg(&IntConGIE, 1); + IR_SetReg(&IntConINTE, 1); + IR_SetReg(&IntConPEIE, 1); + + //measure timer config + IR_SetReg(&MTPrSc, vPTPrSc); + IR_SetReg(&MTPR, vMTPR); + IR_SetReg(&MTPoSc, vMTPoSc); + IR_SetReg(&MTOn, 0); + IR_SetReg(&PIEMTIE, 1); + + //timeout timer + IR_SetReg(&TTPrSc, vTTPrSc); + IR_SetReg(&TTOn, 0); + IR_SetReg(&PIETTIE, 1); + + //int pin + IR_SetReg(&IntPinTrisReg, 1); + IR_SetReg(&IntPinAnselReg, 0); + IR_SetReg(&IntEdgeReg, IntEdge); +} + +void IntHandler() { + IR_SetReg(&MTimer, 0); + IR_SetReg(&MTOn, 1); + IR_SetReg(&TTimer, 0); + IR_SetReg(&TTOn, 1); + IR_SetReg(&IntPinIF, 0); +} + +void MTHandler() { + dataBuffer = dataBuffer << 1; + if (!ReadReg(&IRR)) { + dataBuffer |= 0b1; + } + count++; + IR_SetReg(&MTOn, 0); + if (count >= MessageSize) { + + data = dataBuffer; + dataBuffer = 0; + count = 0; + IRBF = 1; + } + IR_SetReg(&MTIF, 0); +} + +void TTHandler() { + count = 0; + dataBuffer = 0; + IR_SetReg(&TTOn, 0); + IR_SetReg(&TTimer, 0); + IR_SetReg(&TTIF, 0); +} + +void IR_SetReg(IR_Reg* R, unsigned char V) { + unsigned char bitMask; + V = (unsigned char) (V << R->offset); + bitMask = (unsigned char) (((1 << R->size) - 1) << R->offset); + *(R->address) &= ~bitMask; + *(R->address) |= V & bitMask; +} + +unsigned char ReadReg(IR_Reg* R) { + unsigned char V, bitMask; + bitMask = (unsigned char) (((1 << R->size) - 1) << R->offset); + V = *(R->address) & bitMask; + V = V >> R->offset; + return V; +} diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRLib_v7.h b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRLib_v7.h new file mode 100644 index 0000000..f8e7ecf --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/IRLib_v7.h @@ -0,0 +1,53 @@ +#ifndef _IRLib_V7_H_ +#define _IRLib_V7_H_ + +typedef struct _IR_Reg { + volatile unsigned char *address; + unsigned char size; + unsigned char offset; +} IR_Reg; + +typedef enum { + falling, + rising +} IntEdge; + +#define MessageSize 12 + +volatile int dataBuffer = 0; //data buffer +volatile char IRBF = 0; //infrared buffer full flag +volatile int data = 0; +volatile char count = 0; + +void IRInit(IntEdge, unsigned char, unsigned char, unsigned char, unsigned char); //edge, MTPR, MTPrSc, MTPoSc, TTPrSc +void IntHandler(void); +void MTHandler(void); +void TTHandler(void); +void IR_SetReg(IR_Reg*, unsigned char); +unsigned char ReadReg(IR_Reg*); + +IR_Reg IRR; // Infra red reciever / INT Pin +IR_Reg MTimer; // Measure Timer +IR_Reg MTOn; // MTimer on +IR_Reg MTIF; // MTimer interrupt Flag +IR_Reg MTPR; // MTimer Period Register +IR_Reg MTPrSc; // MTimer Pre-Scaler +IR_Reg MTPoSc; // MTimer Post-Scaler +IR_Reg TTimer; // Timeout Timer +IR_Reg TTOn; // TTimer on +IR_Reg TTIF; // TTimer Interrupt Flag +IR_Reg TTPrSc; // TTimer Pre-Scaler +IR_Reg IntPinTrisReg; // Interrupt Pin TriState Register +IR_Reg IntPinAnselReg; // Interrupt Pin Analog Select Register +IR_Reg IntPinIF; // Interrupt Pin Interrupt Flag +IR_Reg IntEdgeReg; // Interrupt pin Edge Select Register +IR_Reg IntConGIE; // Global Interrupt Enable +IR_Reg IntConINTE; // Interrupt Enable +IR_Reg IntConPEIE; // Peripheral Interrupt Enable +IR_Reg PIEMTIE; // Peripheral Interrupt Enable Measure Timer Interrupt Enable +IR_Reg PIETTIE; // Peripheral Interrupt Enable Timeout Timer Interrupt Enable + +void IRBind887(void); +void IRBind1829(void); + +#endif //_IRLIB_V7_H_ \ No newline at end of file diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/Makefile b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-default.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..4e0671c --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-default.mk @@ -0,0 +1,188 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=mkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=a +DEBUGGABLE_SUFFIX=a +FINAL_IMAGE=${DISTDIR}/IRLib_v7.X.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=a +DEBUGGABLE_SUFFIX=a +FINAL_IMAGE=${DISTDIR}/IRLib_v7.X.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=IRBind1829.c IRBind887.c IRLib_v7.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/IRBind1829.p1 ${OBJECTDIR}/IRBind887.p1 ${OBJECTDIR}/IRLib_v7.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/IRBind1829.p1.d ${OBJECTDIR}/IRBind887.p1.d ${OBJECTDIR}/IRLib_v7.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/IRBind1829.p1 ${OBJECTDIR}/IRBind887.p1 ${OBJECTDIR}/IRLib_v7.p1 + +# Source Files +SOURCEFILES=IRBind1829.c IRBind887.c IRLib_v7.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/IRLib_v7.X.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F887 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/IRBind1829.p1: IRBind1829.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/IRBind1829.p1.d + @${RM} ${OBJECTDIR}/IRBind1829.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/IRBind1829.p1 IRBind1829.c + @-${MV} ${OBJECTDIR}/IRBind1829.d ${OBJECTDIR}/IRBind1829.p1.d + @${FIXDEPS} ${OBJECTDIR}/IRBind1829.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +${OBJECTDIR}/IRBind887.p1: IRBind887.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/IRBind887.p1.d + @${RM} ${OBJECTDIR}/IRBind887.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/IRBind887.p1 IRBind887.c + @-${MV} ${OBJECTDIR}/IRBind887.d ${OBJECTDIR}/IRBind887.p1.d + @${FIXDEPS} ${OBJECTDIR}/IRBind887.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +${OBJECTDIR}/IRLib_v7.p1: IRLib_v7.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/IRLib_v7.p1.d + @${RM} ${OBJECTDIR}/IRLib_v7.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/IRLib_v7.p1 IRLib_v7.c + @-${MV} ${OBJECTDIR}/IRLib_v7.d ${OBJECTDIR}/IRLib_v7.p1.d + @${FIXDEPS} ${OBJECTDIR}/IRLib_v7.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/IRBind1829.p1: IRBind1829.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/IRBind1829.p1.d + @${RM} ${OBJECTDIR}/IRBind1829.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/IRBind1829.p1 IRBind1829.c + @-${MV} ${OBJECTDIR}/IRBind1829.d ${OBJECTDIR}/IRBind1829.p1.d + @${FIXDEPS} ${OBJECTDIR}/IRBind1829.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +${OBJECTDIR}/IRBind887.p1: IRBind887.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/IRBind887.p1.d + @${RM} ${OBJECTDIR}/IRBind887.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/IRBind887.p1 IRBind887.c + @-${MV} ${OBJECTDIR}/IRBind887.d ${OBJECTDIR}/IRBind887.p1.d + @${FIXDEPS} ${OBJECTDIR}/IRBind887.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +${OBJECTDIR}/IRLib_v7.p1: IRLib_v7.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/IRLib_v7.p1.d + @${RM} ${OBJECTDIR}/IRLib_v7.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/IRLib_v7.p1 IRLib_v7.c + @-${MV} ${OBJECTDIR}/IRLib_v7.d ${OBJECTDIR}/IRLib_v7.p1.d + @${FIXDEPS} ${OBJECTDIR}/IRLib_v7.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: archive +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/IRLib_v7.X.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} ${DISTDIR} + ${MP_AR} $(MP_EXTRA_AR_PRE) --target $(MP_PROCESSOR_OPTION) -r ${DISTDIR}/IRLib_v7.X.a ${OBJECTFILES_QUOTED_IF_SPACED} + @${RM} ${DISTDIR}/IRLib_v7.X.hex + +else +${DISTDIR}/IRLib_v7.X.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} ${DISTDIR} + ${MP_AR} $(MP_EXTRA_AR_PRE) --target $(MP_PROCESSOR_OPTION) -r ${DISTDIR}/IRLib_v7.X.a ${OBJECTFILES_QUOTED_IF_SPACED} + +endif + + +# Subprojects +.build-subprojects: + + +# Subprojects +.clean-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-genesis.properties b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..3466e5c --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Thu Mar 28 14:56:18 CET 2024 +default.languagetoolchain.version=2.46 +default.Pack.dfplocation=/home/burhan/.local/share/microchip/mplabx/v6.20/packs/Microchip/PIC16Fxxx_DFP/1.6.156 +conf.ids=default +default.languagetoolchain.dir=/home/burhan/.local/share/microchip/xc8/v2.46/bin +host.id=1odb-89vf-4o +default.platformTool.md5=null +configurations-xml=42cc9aad52ec80d5fdf7f7fbf1a8b028 +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=f612087c95360c842296d189edfe3321 +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=bf89cdcdd6c0a49174fe4b605ef2b42d +proj.dir=/home/burhan/Desktop/PROJ ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/IR_LIB/IRLib_v7.X +host.platform=linux diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-impl.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..e1b1d5e --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=IRLib_v7.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-local-default.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..d461158 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,36 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +PATH_TO_IDE_BIN=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="/home/burhan/.local/share/microchip/mplabx/v6.20/sys/java/zulu8.64.0.19-ca-fx-jre8.0.345-linux_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_LD="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_AR="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-ar" +DEP_GEN=${MP_JAVA_PATH}java -jar "/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_LD_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_AR_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +DFP_DIR=/home/burhan/.local/share/microchip/mplabx/v6.20/packs/Microchip/PIC16Fxxx_DFP/1.6.156 diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-variables.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..1b11a07 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=IRLib_v7.X.a +CND_ARTIFACT_PATH_default=dist/default/production/IRLib_v7.X.a diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/configurations.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/configurations.xml new file mode 100644 index 0000000..1ccfc8a --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/configurations.xml @@ -0,0 +1,176 @@ + + + + + IRLib_v7.h + + + Makefile + + + + + IRBind1829.c + IRBind887.c + IRLib_v7.c + + + + ../IRLib_v7 + + Makefile + + + + localhost + PIC16F887 + + + noID + XC8 + 2.46 + 3 + + + + + + + + + + + + + + + false + false + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/private/configurations.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..31e2018 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + noToolString + /home/burhan/.local/share/microchip/xc8/v2.46/bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/private/private.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/private/private.xml new file mode 100644 index 0000000..5a08809 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/private/private.xml @@ -0,0 +1,12 @@ + + + + + + file:/home/burhan/Desktop/PROJ%20ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/IR_LIB/IRLib_v7.X/IRLib_v7.h + file:/home/burhan/Desktop/PROJ%20ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/IR_LIB/IRLib_v7.X/IRBind1829.c + file:/home/burhan/Desktop/PROJ%20ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/IR_LIB/IRLib_v7.X/IRLib_v7.c + file:/home/burhan/Desktop/PROJ%20ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/IR_LIB/IRLib_v7.X/IRBind887.c + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/project.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/project.xml new file mode 100644 index 0000000..3bf3a13 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.X/nbproject/project.xml @@ -0,0 +1,25 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + IRLib_v7 + 8acf55df-a22f-4c7a-ad72-f153bd066815 + 0 + ISO-8859-1 + + + ../IRLib_v7 + + + + default + 3 + + + + false + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.c b/src/picamp.X/libs/IR_LIB/IRLib_v7.c new file mode 100644 index 0000000..74114b6 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.c @@ -0,0 +1,74 @@ +#include "./IRLib_v7.h" + +void IRInit(IntEdge IntEdge, unsigned char vMTPR, unsigned char vPTPrSc, unsigned char vMTPoSc, unsigned char vTTPrSc) { + //interrupts + SetReg(&IntConGIE, 1); + SetReg(&IntConINTE, 1); + SetReg(&IntConPEIE, 1); + + //measure timer config + SetReg(&MTPrSc, vPTPrSc); + SetReg(&MTPR, vMTPR); + SetReg(&MTPoSc, vMTPoSc); + SetReg(&MTOn, 0); + SetReg(&PIEMTIE, 1); + + //timeout timer + SetReg(&TTPrSc, vTTPrSc); + SetReg(&TTOn, 0); + SetReg(&PIETTIE, 1); + + //int pin + SetReg(&IntPinTrisReg, 1); + SetReg(&IntPinAnselReg, 0); + SetReg(&IntEdgeReg, IntEdge); +} + +void IntHandler() { + SetReg(&MTimer, 0); + SetReg(&MTOn, 1); + SetReg(&TTimer, 0); + SetReg(&TTOn, 1); + SetReg(&IntPinIF, 0); +} + +void MTHandler() { + dataBuffer = dataBuffer << 1; + if (!ReadReg(&IRR)) { + dataBuffer |= 0b1; + } + count++; + SetReg(&MTOn, 0); + if (count >= MessageSize) { + + data = dataBuffer; + dataBuffer = 0; + count = 0; + IRBF = 1; + } + SetReg(&MTIF, 0); +} + +void TTHandler() { + count = 0; + dataBuffer = 0; + SetReg(&TTOn, 0); + SetReg(&TTimer, 0); + SetReg(&TTIF, 0); +} + +void SetReg(Reg* R, unsigned char V) { + unsigned char bitMask; + V = (unsigned char) (V << R->offset); + bitMask = (unsigned char) (((1 << R->size) - 1) << R->offset); + *(R->address) &= ~bitMask; + *(R->address) |= V & bitMask; +} + +unsigned char ReadReg(Reg* R) { + unsigned char V, bitMask; + bitMask = (unsigned char) (((1 << R->size) - 1) << R->offset); + V = *(R->address) & bitMask; + V = V >> R->offset; + return V; +} diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7.h b/src/picamp.X/libs/IR_LIB/IRLib_v7.h new file mode 100644 index 0000000..4abf34b --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7.h @@ -0,0 +1,53 @@ +#ifndef _IRLib_V7_H_ +#define _IRLib_V7_H_ + +typedef struct _Reg { + volatile unsigned char *address; + unsigned char size; + unsigned char offset; +} Reg; + +typedef enum { + falling, + rising +} IntEdge; + +#define MessageSize 12 + +volatile int dataBuffer = 0; //data buffer +volatile char IRBF = 0; //infrared buffer full flag +volatile int data = 0; +volatile char count = 0; + +void IRInit(IntEdge, unsigned char, unsigned char, unsigned char, unsigned char); //edge, MTPR, MTPrSc, MTPoSc, TTPrSc +void IntHandler(void); +void MTHandler(void); +void TTHandler(void); +void SetReg(Reg*, unsigned char); +unsigned char ReadReg(Reg*); + +Reg IRR; // Infra red reciever / INT Pin +Reg MTimer; // Measure Timer +Reg MTOn; // MTimer on +Reg MTIF; // MTimer interrupt Flag +Reg MTPR; // MTimer Period Register +Reg MTPrSc; // MTimer Pre-Scaler +Reg MTPoSc; // MTimer Post-Scaler +Reg TTimer; // Timeout Timer +Reg TTOn; // TTimer on +Reg TTIF; // TTimer Interrupt Flag +Reg TTPrSc; // TTimer Pre-Scaler +Reg IntPinTrisReg; // Interrupt Pin TriState Register +Reg IntPinAnselReg; // Interrupt Pin Analog Select Register +Reg IntPinIF; // Interrupt Pin Interrupt Flag +Reg IntEdgeReg; // Interrupt pin Edge Select Register +Reg IntConGIE; // Global Interrupt Enable +Reg IntConINTE; // Interrupt Enable +Reg IntConPEIE; // Peripheral Interrupt Enable +Reg PIEMTIE; // Peripheral Interrupt Enable Measure Timer Interrupt Enable +Reg PIETTIE; // Peripheral Interrupt Enable Timeout Timer Interrupt Enable + +void IRBind887(void); +void IRBind1829(void); + +#endif //_IRLIB_V7_H_ \ No newline at end of file diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/Makefile b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/main.c b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/main.c new file mode 100644 index 0000000..9e6cb2b --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/main.c @@ -0,0 +1,124 @@ +/*********************************************************************** + * PIC : 16F1829 + * Date : Between now and then + **********************************************************************/ + +#include // PIC hardware mapping +#include +#include + +#pragma config FOSC = 0x4 // xor INTOSC (name from IDE database) +#pragma config WDTE = 0x0 // OFF +#pragma config PWRTE = 0x1 // OFF +#pragma config MCLRE = OFF // etc. +#pragma config CP = OFF // text is the most readable option +#pragma config CPD = OFF +#pragma config BOREN = ON +#pragma config CLKOUTEN = OFF +#pragma config IESO = OFF +#pragma config FCMEN = OFF + +// CONFIG WORD 2 @ flash program memory location 0x8008 +#pragma config WRT = OFF +#pragma config PLLEN = OFF +#pragma config STVREN = OFF +#pragma config BORV = LO +//#pragma config DEBUG = OFF // Pre-processor short-circuits ! +#pragma config LVP = OFF + +/* Hardware / state naming scheme ------------------------------------*/ +#define LED1 LATCbits.LATC0 +#define LED2 LATCbits.LATC1 +#define LED3 LATCbits.LATC2 +#define LED4 LATCbits.LATC3 + +//constants +#define _XTAL_FREQ 16000000 // Used by the XC8 delay_ms(x) macro +#define _MTPR 211 +#define _MTPrSc 0b01 +#define _MTPoSc 0b0011 +#define _TTPrSc 0b11 + +void pic_init(void); +void init_osc(void); +void init_gpio(void); + +void main(void) { + pic_init(); + while (1) { + if (IRBF) { + if (data == 0b010010010000) { //input 1 + LED1 = 0; + __delay_ms(250); + LED1 = 1; + } + if (data == 0b010100001000) { //input 2 + LED2 = 0; + __delay_ms(250); + LED2 = 1; + } + if (data == 0b010010100000) { //input 3 + LED3 = 0; + __delay_ms(250); + LED3 = 1; + } + if (data == 0b010010001000) { //input 4 + LED4 = 0; + __delay_ms(250); + LED4 = 1; + } + if (data == 0b010100100000) { //volume up + LED1 = 0; + LED2 = 0; + __delay_ms(250); + LED1 = 1; + LED2 = 1; + } + if (data == 0b010100010000) { //volume down + LED3 = 0; + LED4 = 0; + __delay_ms(250); + LED3 = 1; + LED4 = 1; + } + IRBF = 0; + } + }//while +}//main + +void pic_init(void) { + init_osc(); + init_gpio(); + IRBind1829(); + IRInit(falling, _MTPR, _MTPrSc, _MTPoSc, _TTPrSc); +} + +void init_osc(void) { + // System Clock Select (SCS) + OSCCONbits.SCS = 0b00; // Clk determined by FOSC in Conf-1 + // Internal Resistor-Capacitor Frequency select (IRCF) + OSCCONbits.IRCF = 0b1111; // 16 MHz clock speed + // Software Phase-Locked Loop ENable (SPLLEN) + OSCCONbits.SPLLEN = 0b0; // 4 x Phase-Locked Loop disabled +} + +void init_gpio(void) { + TRISC = 0; + LATC = 15; +} + +//interrupt service routine + +void __interrupt() isr() { + if (INTF) { + IntHandler(); //Interrupt Handling + }//INTF + + if (TMR2IF) { + MTHandler(); //Measure Timer Handling + }//TMR2IF + + if (TMR1IF) { //timeout / reset + TTHandler(); //Timeout Timer Handling + } //TMR1IF +}//interrupt \ No newline at end of file diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-default.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..4bf1a92 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-default.mk @@ -0,0 +1,156 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=gnumkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=elf +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=hex +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=main.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/main.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/main.p1 + +# Source Files +SOURCEFILES=main.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F1829 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=pickit5 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: link +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../IRLib_v7.X/dist/default/production/IRLib_v7.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.map -D__DEBUG=1 -mdebugger=pickit5 -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ..\IRLib_v7.X\dist\default\production\IRLib_v7.X.a + @${RM} ${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.hex + +else +${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../IRLib_v7.X/dist/default/production/IRLib_v7.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.map -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/IRLib_v7_1829.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ..\IRLib_v7.X\dist\default\production\IRLib_v7.X.a + +endif + + +# Subprojects +.build-subprojects: + + +# Subprojects +.clean-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-genesis.properties b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..2aab6f6 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Wed Feb 14 20:09:57 CET 2024 +default.languagetoolchain.version=2.45 +default.Pack.dfplocation=C\:\\Users\\robin\\.mchp_packs\\Microchip\\PIC12-16F1xxx_DFP\\1.7.242 +default.com-microchip-mplab-mdbcore-PK5Tool-PK5ToolImpl.md5=723771b957e0f1e0ec1761a42d8bb5e8 +conf.ids=default +default.languagetoolchain.dir=C\:\\Program Files\\Microchip\\xc8\\v2.45\\bin +host.id=j20m-9n47-m +configurations-xml=9ddbae7c06d1696da919750bf149a3b3 +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=e62346c0c0ecee2637e613b49cb7b7fa +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=486b02ed36e5bdffb1f797e38fa058e5 +proj.dir=C\:\\Users\\robin\\MPLABXProjects\\IRLib_v7_1829.X +host.platform=windows diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-impl.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..caf1bba --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=IRLib_v7_1829.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-local-default.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..5067fc9 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,37 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +SHELL=cmd.exe +PATH_TO_IDE_BIN=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="C:\Program Files\Microchip\MPLABX\v6.15\sys\java\zulu8.64.0.19-ca-fx-jre8.0.345-win_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +MP_LD="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +MP_AR="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-ar.exe" +DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +MP_LD_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +MP_AR_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +DFP_DIR=C:/Users/robin/.mchp_packs/Microchip/PIC12-16F1xxx_DFP/1.7.242 diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-variables.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..14e9f76 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=IRLib_v7_1829.X.production.hex +CND_ARTIFACT_PATH_default=dist/default/production/IRLib_v7_1829.X.production.hex diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/configurations.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/configurations.xml new file mode 100644 index 0000000..d349c35 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/configurations.xml @@ -0,0 +1,299 @@ + + + + + ../IRLib_v7/IRLib_v7.h + + + + + main.c + + + Makefile + + + + ../IRLib_v7 + + Makefile + + + + localhost + PIC16F1829 + + + PK5Tool + XC8 + 2.45 + 3 + + + + + + + + + + ../IRLib_v7.X/dist/default/production/IRLib_v7.X.a + + + + + + false + false + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/private/configurations.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..dfa87f4 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + :=MPLABComm-USB-Microchip:=<vid>04D8:=<pid>9036:=<rev>0100:=<man>Microchip Technology Incorporated:=<prod>MPLAB PICkit 5:=<sn>020026702RYN006133:=<drv>x:=<xpt>b:=end + C:\Program Files\Microchip\xc8\v2.45\bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/private/private.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/private/private.xml new file mode 100644 index 0000000..6807a2b --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/private/private.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/project.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/project.xml new file mode 100644 index 0000000..732a922 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_1829.X/nbproject/project.xml @@ -0,0 +1,25 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + IRLib_v7_1829 + 7d6d8449-dade-4f96-a689-d79c3428c8da + 0 + ISO-8859-1 + + + ../IRLib_v7 + + + + default + 2 + + + + false + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/Makefile b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/main.c b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/main.c new file mode 100644 index 0000000..3d4c36f --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/main.c @@ -0,0 +1,118 @@ +/*********************************************************************** + * PIC : 16F887 + * Date : Between now and then + **********************************************************************/ + +#include +#include +#include + +#pragma config LVP = OFF // low voltage programming off +#pragma config FCMEN = OFF // fail-safe clock monitor off +#pragma config IESO = OFF // internal/external switchover off +#pragma config BOREN = ON // brown out reset on +#pragma config CPD = OFF //data code protection off +#pragma config CP = OFF // code protection off +#pragma config MCLRE = OFF // RE3/~MCLR is i/o pin +#pragma config PWRTE = ON // power up timer on +#pragma config WDTE = OFF //watchdog timer off +#pragma config FOSC = INTRC_NOCLKOUT //internal clock with io on RA6 and RA7 + +#pragma config WRT = OFF // write protection off +#pragma config BOR4V = BOR40V // brown out reset 4v + +/* Hardware / state naming scheme ------------------------------------*/ +#define LED1 PORTAbits.RA0 +#define LED2 PORTAbits.RA1 +#define LED3 PORTAbits.RA2 +#define LED4 PORTAbits.RA3 + +//constants +#define _XTAL_FREQ 8000000 // Used by the XC8 delay_ms(x) macro +#define _MTPR 211 +#define _MTPrSc 0b01 +#define _MTPoSc 0b0001 +#define _TTPrSc 0b11 + +void pic_init(void); +void init_osc(void); +void init_gpio(void); + +void main(void) { + pic_init(); + while (1) { + if (IRBF) { + if (data == 0b010010010000) { //input 1 + LED1 = 0; + __delay_ms(250); + LED1 = 1; + } + if (data == 0b010100001000) { //input 2 + LED2 = 0; + __delay_ms(250); + LED2 = 1; + } + if (data == 0b010010100000) { //input 3 + LED3 = 0; + __delay_ms(250); + LED3 = 1; + } + if (data == 0b010010001000) { //input 4 + LED4 = 0; + __delay_ms(250); + LED4 = 1; + } + if (data == 0b010100100000) { //volume up + LED1 = 0; + LED2 = 0; + __delay_ms(250); + LED1 = 1; + LED2 = 1; + } + if (data == 0b010100010000) { //volume down + LED3 = 0; + LED4 = 0; + __delay_ms(250); + LED3 = 1; + LED4 = 1; + } + IRBF = 0; + } + }//while +}//main + +void pic_init(void) { + init_osc(); + init_gpio(); + IRBind887(); + IRInit(falling, _MTPR, _MTPrSc, _MTPoSc, _TTPrSc); +} + +void init_osc(void) { + OSCCONbits.IRCF = 0b111; //111 8MHz + OSCCONbits.OSTS = 0; // running from internal oscillator + OSCCONbits.SCS = 0; //system clock selected by config + while (OSCCONbits.HTS == 0); +} + +void init_gpio(void) { + TRISA = 0; + ANSEL = 0; + PORTA = 15; +} + +//interrupt service routine + +void __interrupt() isr() { + if (INTF) { + IntHandler(); //Interrupt Handling + }//INTF + + if (TMR2IF) { + MTHandler(); //Measure Timer Handling + }//TMR2IF + + if (TMR1IF) { //timeout / reset + TTHandler(); //Timeout Timer Handling + } //TMR1IF +}//interrupt \ No newline at end of file diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-default.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..5d43c0e --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-default.mk @@ -0,0 +1,156 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=gnumkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=elf +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=hex +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=main.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/main.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/main.p1 + +# Source Files +SOURCEFILES=main.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F887 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=pickit5 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: link +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../IRLib_v7.X/dist/default/production/IRLib_v7.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.map -D__DEBUG=1 -mdebugger=pickit5 -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -mrom=default,-1f00-1ffe -mram=default,-0-0,-70-70,-80-80,-f0-f0,-100-100,-170-170,-180-180,-1e5-1f0 $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ..\IRLib_v7.X\dist\default\production\IRLib_v7.X.a + @${RM} ${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.hex + +else +${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../IRLib_v7.X/dist/default/production/IRLib_v7.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.map -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../IRLib_v7" -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/IRLib_v7_887.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ..\IRLib_v7.X\dist\default\production\IRLib_v7.X.a + +endif + + +# Subprojects +.build-subprojects: + + +# Subprojects +.clean-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-genesis.properties b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..88c5564 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Wed Feb 14 20:09:58 CET 2024 +default.languagetoolchain.version=2.45 +default.Pack.dfplocation=C\:\\Users\\robin\\.mchp_packs\\Microchip\\PIC16Fxxx_DFP\\1.6.156 +default.com-microchip-mplab-mdbcore-PK5Tool-PK5ToolImpl.md5=723771b957e0f1e0ec1761a42d8bb5e8 +conf.ids=default +default.languagetoolchain.dir=C\:\\Program Files\\Microchip\\xc8\\v2.45\\bin +host.id=j20m-9n47-m +configurations-xml=03e60a6bc9ef5b3ef61e167737edf851 +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=e62346c0c0ecee2637e613b49cb7b7fa +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=486b02ed36e5bdffb1f797e38fa058e5 +proj.dir=C\:\\Users\\robin\\MPLABXProjects\\IRLib_v7_887.X +host.platform=windows diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-impl.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..42cf1b7 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=IRLib_v7_887.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-local-default.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..d7a9b5e --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,37 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +SHELL=cmd.exe +PATH_TO_IDE_BIN=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="C:\Program Files\Microchip\MPLABX\v6.15\sys\java\zulu8.64.0.19-ca-fx-jre8.0.345-win_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +MP_LD="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-cc.exe" +MP_AR="C:\Program Files\Microchip\xc8\v2.45\bin\xc8-ar.exe" +DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +MP_LD_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +MP_AR_DIR="C:\Program Files\Microchip\xc8\v2.45\bin" +DFP_DIR=C:/Users/robin/.mchp_packs/Microchip/PIC16Fxxx_DFP/1.6.156 diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-variables.mk b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..9279b16 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=IRLib_v7_887.X.production.hex +CND_ARTIFACT_PATH_default=dist/default/production/IRLib_v7_887.X.production.hex diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/configurations.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/configurations.xml new file mode 100644 index 0000000..46f43d0 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/configurations.xml @@ -0,0 +1,299 @@ + + + + + ../IRLib_v7/IRLib_v7.h + + + + + main.c + + + Makefile + + + + ../IRLib_v7 + + Makefile + + + + localhost + PIC16F887 + + + PK5Tool + XC8 + 2.45 + 3 + + + + + + + + + + ../IRLib_v7.X/dist/default/production/IRLib_v7.X.a + + + + + + false + false + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/private/configurations.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..dfa87f4 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + :=MPLABComm-USB-Microchip:=<vid>04D8:=<pid>9036:=<rev>0100:=<man>Microchip Technology Incorporated:=<prod>MPLAB PICkit 5:=<sn>020026702RYN006133:=<drv>x:=<xpt>b:=end + C:\Program Files\Microchip\xc8\v2.45\bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/private/private.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/private/private.xml new file mode 100644 index 0000000..6807a2b --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/private/private.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/project.xml b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/project.xml new file mode 100644 index 0000000..f212936 --- /dev/null +++ b/src/picamp.X/libs/IR_LIB/IRLib_v7_887.X/nbproject/project.xml @@ -0,0 +1,25 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + IRLib_v7_887 + f4694a20-1171-4b8c-977b-b4fc63b8b361 + 0 + ISO-8859-1 + + + ../IRLib_v7 + + + + default + 2 + + + + false + + + + diff --git a/src/picamp.X/libs/global/new-potlib.h b/src/picamp.X/libs/global/new-potlib.h new file mode 100644 index 0000000..a1dd2b6 --- /dev/null +++ b/src/picamp.X/libs/global/new-potlib.h @@ -0,0 +1,57 @@ +#ifndef POTENTIOMETER_H +#define POTENTIOMETER_H + +#include "registers.h" +// #[declarations:adc] +typedef enum _ADCChannelSelect { + // PIC16F887 + P887A_AN00 = 0b0000, + P887A_AN01 = 0b0001, + P887A_AN02 = 0b0010, + P887A_AN03 = 0b0011, + P887A_AN04 = 0b0100, + P887A_AN05 = 0b0101, + P887A_AN06 = 0b0110, + P887A_AN07 = 0b0111, + P887A_AN08 = 0b1000, + P887A_AN09 = 0b1001, + P887A_AN10 = 0b1010, + P887A_AN11 = 0b1011, + P887A_AN12 = 0b1100, + P887A_AN13 = 0b1101, + P887A_CVREF = 0b1110, // CVREF + P887A_FXREF = 0b1111, // Fixed Ref (0.6V fixed voltage reference) + // PIC16F1829 + P1829_AN00 = 0b00000, + P1829_AN01 = 0b00001, + P1829_AN02 = 0b00010, + P1829_AN03 = 0b00011, + P1829_AN04 = 0b00100, + P1829_AN05 = 0b00101, + P1829_AN06 = 0b00110, + P1829_AN07 = 0b00111, + P1829_AN08 = 0b01000, + P1829_AN09 = 0b01001, + P1829_AN10 = 0b01010, + P1829_AN11 = 0b01011, + P1829_TEMP = 0b11101, + P1829_DACO = 0b11110, + P1829_FVRB = 0b11111, +} ADCChannelSelect; + +typedef struct _ADCPins { + Reg GOnDONE; + Reg ADRESH; + Reg ADRESL; +} ADCPins; + +ADCPins ADC; + +void init_pot(picId id, ADCChannelSelect channel); +void _pot_init_887(ADCChannelSelect channel); +void _pot_init_1829(ADCChannelSelect channel); +int read_potentiometer(void); +void populate_step_array(int *array, int size, int potLimit); +int adc_to_step(int *stepArray, int size, int deadzone); + +#endif \ No newline at end of file diff --git a/src/picamp.X/libs/global/new-rotlib.h b/src/picamp.X/libs/global/new-rotlib.h new file mode 100644 index 0000000..75d889d --- /dev/null +++ b/src/picamp.X/libs/global/new-rotlib.h @@ -0,0 +1,44 @@ +#ifndef ROTARY_H +#define ROTARY_H + +#include "registers.h" + +// intcon = 0x0B +// OPTION_REG = 0x81 +// IOCB = 0x96 +// pin 17 = int pin? + +typedef enum { ROTATE_LEFT = 1, ROTATE_RIGHT = 2 } RotaryEncoderStates; +typedef enum { + IOCRB0 = 0, + IOCRB1 = 1, + IOCRB2 = 2, + IOCRB3 = 3, + IOCRB4 = 4, + IOCRB5 = 5, + IOCRB6 = 6, + IOCRB7 = 7 +} IOCPin; + +typedef struct _Encoder { + int LastState; + int Steps; + int Input; + int min; + int max; + int stepReq; + Reg pinA; + Reg pinB; + Reg encoderRail; + picId host; +} Encoder; + +Encoder encoder = {0, 0, 0}; + +void _rot_init_887(IOCPin pinA, IOCPin pinB); +void _rot_init_1829(); +void init_rot(picId id); +//void read_rotary(char pA, char pB, char *counter, char max, char min); +int read_rotary(void); + +#endif \ No newline at end of file diff --git a/src/picamp.X/libs/global/registers.c b/src/picamp.X/libs/global/registers.c new file mode 100644 index 0000000..98da1f5 --- /dev/null +++ b/src/picamp.X/libs/global/registers.c @@ -0,0 +1,25 @@ +#include "registers.h" + +void SetReg(Reg* R, unsigned char V) { + unsigned char bitMask; + V = (unsigned char) (V << R->offset); + bitMask = (unsigned char) (((1 << R->size) - 1) << R->offset); + *(R->address) &= ~bitMask; + *(R->address) |= V & bitMask; +} + +unsigned char GetReg(Reg* R) { + unsigned char V, bitMask; + bitMask = (unsigned char) (((1 << R->size) - 1) << R->offset); + V = *(R->address) & bitMask; + V = V >> R->offset; + return V; +} + +void SetRawReg(unsigned char* address, unsigned char size, unsigned char offset, unsigned char V) { + unsigned char bitMask; + V = (unsigned char) (V << offset); + bitMask = (unsigned char) (((1 << size) - 1) << offset); + *(address) &= ~bitMask; + *(address) |= V & bitMask; +} \ No newline at end of file diff --git a/src/picamp.X/libs/global/registers.h b/src/picamp.X/libs/global/registers.h new file mode 100644 index 0000000..e364dd4 --- /dev/null +++ b/src/picamp.X/libs/global/registers.h @@ -0,0 +1,19 @@ +#ifndef REGISTERS_H +#define REGISTERS_H + +typedef enum _picId { + PIC16F1829, + PIC16F887A +} picId; + +typedef struct _Reg { + unsigned char* address; + unsigned char size; + unsigned char offset; +} Reg; + +void SetReg(Reg* R, unsigned char V); +void SetRawReg(unsigned char* address, unsigned char size, unsigned char offset, unsigned char V); +unsigned char GetReg(Reg* R); + +#endif \ No newline at end of file diff --git a/src/picamp.X/libs/new-potlib.X/Makefile b/src/picamp.X/libs/new-potlib.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-default.mk b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..299d92b --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-default.mk @@ -0,0 +1,172 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=mkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=a +DEBUGGABLE_SUFFIX=a +FINAL_IMAGE=${DISTDIR}/new-potlib.X.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=a +DEBUGGABLE_SUFFIX=a +FINAL_IMAGE=${DISTDIR}/new-potlib.X.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=picamp-potentiometer.c ../global/registers.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/new-potlib.p1 ${OBJECTDIR}/_ext/1158682926/registers.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/new-potlib.p1.d ${OBJECTDIR}/_ext/1158682926/registers.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/new-potlib.p1 ${OBJECTDIR}/_ext/1158682926/registers.p1 + +# Source Files +SOURCEFILES=picamp-potentiometer.c ../global/registers.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/new-potlib.X.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F887 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/new-potlib.p1: picamp-potentiometer.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/new-potlib.p1.d + @${RM} ${OBJECTDIR}/new-potlib.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/new-potlib.p1 picamp-potentiometer.c + @-${MV} ${OBJECTDIR}/new-potlib.d ${OBJECTDIR}/new-potlib.p1.d + @${FIXDEPS} ${OBJECTDIR}/new-potlib.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +${OBJECTDIR}/_ext/1158682926/registers.p1: ../global/registers.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}/_ext/1158682926" + @${RM} ${OBJECTDIR}/_ext/1158682926/registers.p1.d + @${RM} ${OBJECTDIR}/_ext/1158682926/registers.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/_ext/1158682926/registers.p1 ../global/registers.c + @-${MV} ${OBJECTDIR}/_ext/1158682926/registers.d ${OBJECTDIR}/_ext/1158682926/registers.p1.d + @${FIXDEPS} ${OBJECTDIR}/_ext/1158682926/registers.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/new-potlib.p1: picamp-potentiometer.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/new-potlib.p1.d + @${RM} ${OBJECTDIR}/new-potlib.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/new-potlib.p1 picamp-potentiometer.c + @-${MV} ${OBJECTDIR}/new-potlib.d ${OBJECTDIR}/new-potlib.p1.d + @${FIXDEPS} ${OBJECTDIR}/new-potlib.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +${OBJECTDIR}/_ext/1158682926/registers.p1: ../global/registers.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}/_ext/1158682926" + @${RM} ${OBJECTDIR}/_ext/1158682926/registers.p1.d + @${RM} ${OBJECTDIR}/_ext/1158682926/registers.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/_ext/1158682926/registers.p1 ../global/registers.c + @-${MV} ${OBJECTDIR}/_ext/1158682926/registers.d ${OBJECTDIR}/_ext/1158682926/registers.p1.d + @${FIXDEPS} ${OBJECTDIR}/_ext/1158682926/registers.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: archive +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/new-potlib.X.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} ${DISTDIR} + ${MP_AR} $(MP_EXTRA_AR_PRE) --target $(MP_PROCESSOR_OPTION) -r ${DISTDIR}/new-potlib.X.a ${OBJECTFILES_QUOTED_IF_SPACED} + @${RM} ${DISTDIR}/new-potlib.X.hex + +else +${DISTDIR}/new-potlib.X.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} ${DISTDIR} + ${MP_AR} $(MP_EXTRA_AR_PRE) --target $(MP_PROCESSOR_OPTION) -r ${DISTDIR}/new-potlib.X.a ${OBJECTFILES_QUOTED_IF_SPACED} + +endif + + +# Subprojects +.build-subprojects: + + +# Subprojects +.clean-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-genesis.properties b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..34b2be0 --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Thu Mar 28 15:07:13 CET 2024 +default.languagetoolchain.version=2.46 +default.Pack.dfplocation=/home/burhan/.mchp_packs/Microchip/PIC16Fxxx_DFP/1.4.149 +conf.ids=default +default.languagetoolchain.dir=/home/burhan/.local/share/microchip/xc8/v2.46/bin +host.id=1odb-89vf-4o +default.platformTool.md5=null +configurations-xml=11f96e3311c83060094ca9fe1c77f327 +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=f612087c95360c842296d189edfe3321 +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=bf89cdcdd6c0a49174fe4b605ef2b42d +proj.dir=/home/burhan/Desktop/PROJ ES/(WIP)Definitive/PIC16F887_AMPINTERFACE.X/libs/new-potlib.X +host.platform=linux diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-impl.mk b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..0a25700 --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=new-potlib.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-local-default.mk b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..33e01a1 --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,36 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +PATH_TO_IDE_BIN=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="/home/burhan/.local/share/microchip/mplabx/v6.20/sys/java/zulu8.64.0.19-ca-fx-jre8.0.345-linux_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_LD="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_AR="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-ar" +DEP_GEN=${MP_JAVA_PATH}java -jar "/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_LD_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_AR_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +DFP_DIR=/home/burhan/.mchp_packs/Microchip/PIC16Fxxx_DFP/1.4.149 diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-variables.mk b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..23e915f --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=new-potlib.X.a +CND_ARTIFACT_PATH_default=dist/default/production/new-potlib.X.a diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/configurations.xml b/src/picamp.X/libs/new-potlib.X/nbproject/configurations.xml new file mode 100644 index 0000000..c153bf7 --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/configurations.xml @@ -0,0 +1,177 @@ + + + + + ../global/picamp-potentiometer.h + ../global/registers.h + + + Makefile + + + + + picamp-potentiometer.c + ../global/registers.c + + + + . + ../global + + Makefile + + + + localhost + PIC16F887 + + + noID + XC8 + 2.46 + 3 + + + + + + + + + + + + + + + false + false + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/private/configurations.xml b/src/picamp.X/libs/new-potlib.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..31e2018 --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + noToolString + /home/burhan/.local/share/microchip/xc8/v2.46/bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/private/private.xml b/src/picamp.X/libs/new-potlib.X/nbproject/private/private.xml new file mode 100644 index 0000000..6807a2b --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/private/private.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/picamp.X/libs/new-potlib.X/nbproject/project.xml b/src/picamp.X/libs/new-potlib.X/nbproject/project.xml new file mode 100644 index 0000000..bec5f33 --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/nbproject/project.xml @@ -0,0 +1,26 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + new-potlib + 7684f515-7080-469a-ba06-59021d799fff + 0 + ISO-8859-1 + + + . + ../global + + + + default + 3 + + + + false + + + + diff --git a/src/picamp.X/libs/new-potlib.X/new-potlib.c b/src/picamp.X/libs/new-potlib.X/new-potlib.c new file mode 100644 index 0000000..bca6eb2 --- /dev/null +++ b/src/picamp.X/libs/new-potlib.X/new-potlib.c @@ -0,0 +1,113 @@ +#include "../global/picamp-potentiometer.h" +#include "../global/registers.h" +// #include + +void _pot_delay() { + unsigned char counter = 1; // Delay Cycle to achieve 500Us delay (165) + while (--counter != 0) // Delay Timing is approximately 3 (3*2*2*2=24) usec per loop + continue; // Note this routine is for 4MHz (500khz) crystal frequency +} + +void init_pot(picId id, ADCChannelSelect channel) { + switch (id) { + case PIC16F1829: _pot_init_1829(channel); break; + case PIC16F887A: _pot_init_887(channel); break; + } +} + +//todo: add tris and ansel bit fields +void _pot_init_887(ADCChannelSelect channel) { + + SetRawReg((unsigned char *)0x01F, 1, 0, 1); // ADON + SetRawReg((unsigned char *)0x01F, 4, 2, channel); // CHS + SetRawReg((unsigned char *)0x01F, 2, 6, 0b00); // ADCS + SetRawReg((unsigned char *)0x09F, 2, 4, 0b00); // VCFG + SetRawReg((unsigned char *)0x09F, 1, 7, 1); // ADFM + + ADC = (ADCPins) { + .GOnDONE = { (unsigned char*) 0x01F, 1, 1 }, + .ADRESH = { (unsigned char*) 0x01E, 8, 0 }, + .ADRESL = { (unsigned char*) 0x09E, 8, 0 }, + }; + + // Memory space is limited on the pic, so we group the registers with the same value. + // .VCFG0 = { (unsigned char*) 0x01F, 1, 4 }, + // .VCFG1 = { (unsigned char*) 0x01F, 1, 5 }, + // .ADCS = { (unsigned char*) 0x01F, 1, 6 }, + // SetReg(&ADC.ADCS, 0); + // SetReg(&ADC.VCFG0, 0); + // SetReg(&ADC.VCFG1, 0); +// .ADON = { (unsigned char*) 0x01F, 1, 0 }, +// .CHS = { (unsigned char*) 0x01F, 4, 2 }, +// .ADCS = { (unsigned char*) 0x01F, 2, 6 }, +// .VCFG = { (unsigned char*) 0x09F, 2, 4 }, +// .ADFM = { (unsigned char*) 0x09F, 1, 7 }, + + // SetRawReg((unsigned char*) 0x01F, 1, 0, 1); + +// SetReg(&ADC.ADON, 1); + SetReg(&ADC.GOnDONE, 1); +// SetReg(&ADC.CHS, channel); +// SetReg(&ADC.VCFGADCS, 0b000); +// SetReg(&ADC.ADFM, 1); +} + +void _pot_init_1829(ADCChannelSelect channel) { + + SetRawReg((unsigned char *)0x09D, 1, 0, 1); // ADON + SetRawReg((unsigned char *)0x09D, 5, 2, channel); // CHS + SetRawReg((unsigned char *)0x09E, 5, 0, 0b00000); // VCFGADCS + SetRawReg((unsigned char *)0x09E, 1, 7, 1); // ADFM + + ADC = (ADCPins) { + .GOnDONE = { (unsigned char*) 0x09D, 1, 1 }, + .ADRESH = { (unsigned char*) 0x09C, 8, 0 }, + .ADRESL = { (unsigned char*) 0x09B, 8, 0 }, + }; + + // Just like the 887, memory space is limited. Structs take up a lot of space, + // so we group the registers with the same value. + // .ADON = { (unsigned char*) 0x09D, 1, 0 }, + // .CHS = { (unsigned char*) 0x09D, 5, 2 }, + // .VCFGADCS = { (unsigned char*) 0x09E, 5, 0 }, + // .ADFM = { (unsigned char*) 0x09E, 1, 7 }, + // .VCFG0 = { (unsigned char*) 0x09E, 2, 0 }, + // .VCFG1 = { (unsigned char*) 0x09E, 1, 2 }, + // .ADCS = { (unsigned char*) 0x09E, 3, 4 }, + // SetReg(&ADC.VCFG0, 0); + // SetReg(&ADC.VCFG1, 0); + // SetReg(&ADC.ADCS, 0); + // structs are only needed for re-used values outside of this function + +// SetReg(&ADC.ADON, 1); + SetReg(&ADC.GOnDONE, 1); +// SetReg(&ADC.CHS, channel); +// SetReg(&ADC.VCFGADCS, 0b00000); +// SetReg(&ADC.ADFM, 1); +} + +void populate_step_array(int *array, int size, int potLimit) { + array[0] = potLimit / (size + 1); + for (int i = 0; i < size; i++) { + array[i] = array[0] * (i + 1); + } +} + +int read_potentiometer() { + // Wait for regulating capacitor to charge + _pot_delay(); + + // Bit 2 of `ADCON0` is set to `1`, meaning `GO` will wait until + // ADC got a signal, converted analog to digital, etc. + SetReg(&ADC.GOnDONE, 1); + while (GetReg(&ADC.GOnDONE)) continue; + + // Read the data from the potmeter pin (`E2`) registers, and combine + // them into a single integer + return (GetReg(&ADC.ADRESH) << 8 | GetReg(&ADC.ADRESL)); +} + +//todo: fix! +int adc_to_step(int *stepArray, int size, int deadzone) { + return 0; +} \ No newline at end of file diff --git a/src/picamp.X/libs/new-rotlib.X/Makefile b/src/picamp.X/libs/new-rotlib.X/Makefile new file mode 100644 index 0000000..fca8e2c --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/Makefile @@ -0,0 +1,113 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin +RANLIB=ranlib + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... +# WARNING: the IDE does not call this target since it takes a long time to +# simply run make. Instead, the IDE removes the configuration directories +# under build and dist directly without calling make. +# This target is left here so people can do a clean when running a clean +# outside the IDE. + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-default.mk b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..09ddf89 --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-default.mk @@ -0,0 +1,172 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=mkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=a +DEBUGGABLE_SUFFIX=a +FINAL_IMAGE=${DISTDIR}/new-rotlib.X.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=a +DEBUGGABLE_SUFFIX=a +FINAL_IMAGE=${DISTDIR}/new-rotlib.X.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=../global/registers.c picamp-rotary.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/_ext/1158682926/registers.p1 ${OBJECTDIR}/new-rotlib.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/_ext/1158682926/registers.p1.d ${OBJECTDIR}/new-rotlib.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/_ext/1158682926/registers.p1 ${OBJECTDIR}/new-rotlib.p1 + +# Source Files +SOURCEFILES=../global/registers.c picamp-rotary.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/new-rotlib.X.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F887 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/_ext/1158682926/registers.p1: ../global/registers.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}/_ext/1158682926" + @${RM} ${OBJECTDIR}/_ext/1158682926/registers.p1.d + @${RM} ${OBJECTDIR}/_ext/1158682926/registers.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/_ext/1158682926/registers.p1 ../global/registers.c + @-${MV} ${OBJECTDIR}/_ext/1158682926/registers.d ${OBJECTDIR}/_ext/1158682926/registers.p1.d + @${FIXDEPS} ${OBJECTDIR}/_ext/1158682926/registers.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +${OBJECTDIR}/new-rotlib.p1: picamp-rotary.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/new-rotlib.p1.d + @${RM} ${OBJECTDIR}/new-rotlib.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/new-rotlib.p1 picamp-rotary.c + @-${MV} ${OBJECTDIR}/new-rotlib.d ${OBJECTDIR}/new-rotlib.p1.d + @${FIXDEPS} ${OBJECTDIR}/new-rotlib.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/_ext/1158682926/registers.p1: ../global/registers.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}/_ext/1158682926" + @${RM} ${OBJECTDIR}/_ext/1158682926/registers.p1.d + @${RM} ${OBJECTDIR}/_ext/1158682926/registers.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/_ext/1158682926/registers.p1 ../global/registers.c + @-${MV} ${OBJECTDIR}/_ext/1158682926/registers.d ${OBJECTDIR}/_ext/1158682926/registers.p1.d + @${FIXDEPS} ${OBJECTDIR}/_ext/1158682926/registers.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +${OBJECTDIR}/new-rotlib.p1: picamp-rotary.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/new-rotlib.p1.d + @${RM} ${OBJECTDIR}/new-rotlib.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -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-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/new-rotlib.p1 picamp-rotary.c + @-${MV} ${OBJECTDIR}/new-rotlib.d ${OBJECTDIR}/new-rotlib.p1.d + @${FIXDEPS} ${OBJECTDIR}/new-rotlib.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: archive +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/new-rotlib.X.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} ${DISTDIR} + ${MP_AR} $(MP_EXTRA_AR_PRE) --target $(MP_PROCESSOR_OPTION) -r ${DISTDIR}/new-rotlib.X.a ${OBJECTFILES_QUOTED_IF_SPACED} + @${RM} ${DISTDIR}/new-rotlib.X.hex + +else +${DISTDIR}/new-rotlib.X.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} ${DISTDIR} + ${MP_AR} $(MP_EXTRA_AR_PRE) --target $(MP_PROCESSOR_OPTION) -r ${DISTDIR}/new-rotlib.X.a ${OBJECTFILES_QUOTED_IF_SPACED} + +endif + + +# Subprojects +.build-subprojects: + + +# Subprojects +.clean-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-genesis.properties b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-genesis.properties new file mode 100644 index 0000000..554fc38 --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-genesis.properties @@ -0,0 +1,13 @@ +# +#Thu Mar 28 18:32:00 CET 2024 +default.languagetoolchain.version=2.46 +default.Pack.dfplocation=/home/burhan/.mchp_packs/Microchip/PIC16Fxxx_DFP/1.4.149 +conf.ids=default +default.languagetoolchain.dir=/home/burhan/.local/share/microchip/xc8/v2.46/bin +host.id=1odb-89vf-4o +default.platformTool.md5=null +configurations-xml=68f28e99f20170dde9c2f40acc46f0f7 +com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=f612087c95360c842296d189edfe3321 +default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=bf89cdcdd6c0a49174fe4b605ef2b42d +proj.dir=/home/burhan/Desktop/PROJ ES/Definitive/PIC16F887_AMPINTERFACE.X/libs/new-rotlib.X +host.platform=linux diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-impl.mk b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..0753481 --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=new-rotlib.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-local-default.mk b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..33e01a1 --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,36 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +PATH_TO_IDE_BIN=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="/home/burhan/.local/share/microchip/mplabx/v6.20/sys/java/zulu8.64.0.19-ca-fx-jre8.0.345-linux_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_LD="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_AR="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-ar" +DEP_GEN=${MP_JAVA_PATH}java -jar "/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_LD_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_AR_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +DFP_DIR=/home/burhan/.mchp_packs/Microchip/PIC16Fxxx_DFP/1.4.149 diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-variables.mk b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..02bbe0f --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=new-rotlib.X.a +CND_ARTIFACT_PATH_default=dist/default/production/new-rotlib.X.a diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/configurations.xml b/src/picamp.X/libs/new-rotlib.X/nbproject/configurations.xml new file mode 100644 index 0000000..cec2d72 --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/configurations.xml @@ -0,0 +1,177 @@ + + + + + ../global/picamp-rotary.h + ../global/registers.h + + + Makefile + + + + + ../global/registers.c + picamp-rotary.c + + + + ../global + . + + Makefile + + + + localhost + PIC16F887 + + + noID + XC8 + 2.46 + 3 + + + + + + + + + + + + + + + false + false + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/private/configurations.xml b/src/picamp.X/libs/new-rotlib.X/nbproject/private/configurations.xml new file mode 100644 index 0000000..31e2018 --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/private/configurations.xml @@ -0,0 +1,25 @@ + + + Makefile + 0 + + + noToolString + /home/burhan/.local/share/microchip/xc8/v2.46/bin + + place holder 1 + place holder 2 + + + + + true + 0 + 0 + 0 + + + + + + diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/private/private.xml b/src/picamp.X/libs/new-rotlib.X/nbproject/private/private.xml new file mode 100644 index 0000000..6807a2b --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/private/private.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/picamp.X/libs/new-rotlib.X/nbproject/project.xml b/src/picamp.X/libs/new-rotlib.X/nbproject/project.xml new file mode 100644 index 0000000..60c5f7c --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/nbproject/project.xml @@ -0,0 +1,26 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + new-rotlib + 4d6ef265-dd49-40a7-8e3c-3a59dd4a8351 + 0 + ISO-8859-1 + + + ../global + . + + + + default + 3 + + + + false + + + + diff --git a/src/picamp.X/libs/new-rotlib.X/new-rotlib.c b/src/picamp.X/libs/new-rotlib.X/new-rotlib.c new file mode 100644 index 0000000..477c9b8 --- /dev/null +++ b/src/picamp.X/libs/new-rotlib.X/new-rotlib.c @@ -0,0 +1,116 @@ +#include "../global/picamp-rotary.h" +#include "../global/registers.h" + +void init_rot(picId id) { + switch (id) { + case PIC16F1829: _rot_init_1829(); break; + case PIC16F887A: _rot_init_887(IOCRB4, IOCRB5); break; + } + + encoder.LastState = 1; + encoder.Input = 1; + encoder.min = 1; + encoder.max = 4; + encoder.stepReq = 1; +} + + +void _rot_init_887(IOCPin pinA, IOCPin pinB) { + encoder.host = PIC16F887A; + //todo: Add anselb, trisb + SetRawReg((unsigned char*) 0x189, 1, 5, 0); // ANSEL.13 + SetRawReg((unsigned char*) 0x189, 1, 3, 0); // ANSEL.11 + SetRawReg((unsigned char*) 0x086, 1, 4, 1); // TRISB.4 + SetRawReg((unsigned char*) 0x086, 1, 5, 1); // TRISB.5 + + encoder.encoderRail = (Reg) { (unsigned char*) 0x006, 8, 0 }; + + SetRawReg((unsigned char*) 0x00B, 2, 3, 0b11); // RBIE, INTE + SetRawReg((unsigned char*) 0x00B, 2, 6, 0b11); // GIE, PEIE + SetRawReg((unsigned char*) 0x096, 1, pinA, 1); // IOC Pin A + SetRawReg((unsigned char*) 0x096, 1, pinB, 1); // IOC Pin B + SetRawReg((unsigned char*) 0x081, 1, 6, 0); // INTEDG + + encoder.pinA = (Reg) { (unsigned char*) 0x006, 1, 4 }; + encoder.pinB = (Reg) { (unsigned char*) 0x006, 1, 5 }; + // ROT = (ROTPins) { + // .RBIEINTE = { (unsigned char*) 0x00B, 2, 3 }, + // .RBIE = { (unsigned char*) 0x00B, 1, 3 }, + // .INTE = { (unsigned char*) 0x00B, 1, 4 }, + // .GIEPEIE = { (unsigned char*) 0x00B, 2, 6 }, + // .PEIE = { (unsigned char*) 0x00B, 1, 6 }, + // .GIE = { (unsigned char*) 0x00B, 1, 7 }, + // .IOCBA = { (unsigned char*) 0x096, 1, pinA }, // 0x0D + // .IOCBB = { (unsigned char*) 0x096, 1, pinB }, + // .INTEDG = { (unsigned char*) 0x081, 1, 6 }, + // .PORTB = { (unsigned char*) 0x106, 8, 0 }, + // .INTF = { (unsigned char*) 0x00B, 1, 1 }, + // .RBIF = { (unsigned char*) 0x00B, 1, 0 } + // }; + + // SetReg(&ROT.INTF, 0); + // SetReg(&ROT.RBIF, 0); + + // SetReg(&ROT.GIEPEIE, 0b11); + // SetReg(&ROT.RBIEINTE, 0b11); + // SetReg(&ROT.GIE, 1); + // SetReg(&ROT.INTE, 1); + // SetReg(&ROT.PEIE, 1); + // SetReg(&ROT.RBIE, 1); + // SetReg(&ROT.IOCBA, 1); + // SetReg(&ROT.IOCBB, 1); + // SetReg(&ROT.INTEDG, 0); + +} + +void _rot_init_1829() { + SetRawReg((unsigned char *)0x18C, 1, 0, 0); // ANSELA.0 + SetRawReg((unsigned char *)0x18C, 1, 1, 0); // ANSELA.1 + + SetRawReg((unsigned char *)0x08C, 1, 0, 1); // TRISA.0 + SetRawReg((unsigned char *)0x08C, 1, 1, 1); // TRISA.1 + + SetRawReg((unsigned char *)0x391, 1, 0, 1); // IOCAP.0 + SetRawReg((unsigned char *)0x391, 1, 1, 1); // IOCAP.1 + + SetRawReg((unsigned char *)0x00B, 1, 3, 1); // IOCIE + SetRawReg((unsigned char *)0x00B, 1, 4, 1); // INTE + SetRawReg((unsigned char *)0x00B, 1, 6, 1); // PEIE + SetRawReg((unsigned char *)0x00B, 1, 7, 1); // GIE + + encoder.pinA = (Reg) { (unsigned char*) 0x00C, 1, 0 }; + encoder.pinB = (Reg) { (unsigned char*) 0x00C, 1, 1 }; +} + +int read_rotary(void) { + // Only check for a change in the CLK pin to identify "full click" + int a = GetReg(&encoder.pinA); + + // If state changed, a movement is registered + if (a != encoder.LastState) { + int b = GetReg(&encoder.pinB); + + if (b != a) encoder.Steps++; // Clockwise + else encoder.Steps--; // Anti-clockwise + + // Only change counter if correct amount of clicks have been registered + if (encoder.Steps > (encoder.stepReq * 2)) { + encoder.Input++; + encoder.Steps = 0; + } else if (encoder.Steps < (-(encoder.stepReq * 2))) { + encoder.Input--; + encoder.Steps = 0; + } + + // Adjust counter for boundaries + if (encoder.Input < encoder.min) encoder.Input = encoder.max; + else if (encoder.Input > encoder.max) encoder.Input = encoder.min; + + encoder.LastState = a; + } + + if (encoder.host == PIC16F887A) SetReg(&encoder.encoderRail, GetReg(&encoder.encoderRail)); + + return encoder.Input; + // PORTC = (unsigned char)(~(1 << (encoder.Input - 1))); +} \ No newline at end of file diff --git a/src/picamp.X/main.c b/src/picamp.X/main.c new file mode 100644 index 0000000..74dfe65 --- /dev/null +++ b/src/picamp.X/main.c @@ -0,0 +1,212 @@ +#include "./config.h" + +// Function declarations +void pic_loop(void); +void pic_init(void); +void init_osc(void); +void init_gpio(void); +void init_HCMS(void); +void init_IR(void); + +// Rotary encoder position +int selectcount = 0; +unsigned char brightnessSetting = 20; + +void main(void) { + // Do all initialisation here + pic_init(); + // Start indefinite program loop + pic_loop(); +} + +void pic_loop(void) { + // Initialize potentiometer step array + int stepArray[LED_AMOUNT] = {0}; + populate_step_array(stepArray, LED_AMOUNT, POT_LIMIT); + short calcVolume; + + while (1) { + HCMS_load_word(volLoadString, &screenSettings_1); + HCMS_load_word(selLoadString, &screenSettings_2); + // Parse result from potentiometer + int result = read_potentiometer(); + // Read the data from the potmeter pin (`E2`) registers, and combine + // them into a single integer + // Loop through all `stepArray`, check if the output of the potmeter + // (on `ADRES`) falls inbetween the steps - `DEADZONE`, if so execute + // An OR/AND bitshift operation in order to turn on the corresponding + // LED on `PORTA`. + + // Do not display the potmeter LEDs if input selector is > minimum + if (selectcount == 1) { + for (int i = 0; i < LED_AMOUNT; i++) { + if (result > (stepArray[i] - DEADZONE)) { + PORTA = (unsigned char) (PORTA & ~(1 << i)); + } else if (result <= (stepArray[i] - DEADZONE)) { + PORTA = (unsigned char) (PORTA | (1 << i)); + } + } + }; + // int step = adc_to_step(*stepArray, LED_AMOUNT, DEADZONE); + // PORTA = (unsigned char)(PORTA | (1 << step)); + + calcVolume = result / 10; + + if (IRBF) { + PORTA = 0x00; + if (data == 0b010010010000) { //input 1 + selectcount = 1; + LED1 = 0; + } + if (data == 0b010100001000) { //input 2 + selectcount = 2; + LED2 = 0; + } + if (data == 0b010010100000) { //input 3 + selectcount = 3; + LED3 = 0; + } + if (data == 0b010010001000) { //input 4 + selectcount = 4; + LED4 = 0; + } + if (data == 0b010100100000) { //volume up + calcVolume++; + brightnessSetting += 5; + MOTOR_P = 1; + MOTOR_M = 0; + __delay_ms(500); + MOTOR_M = 0; + MOTOR_P = 0; + selectcount = 2; + LED1 = 0; + LED2 = 0; + } + if (data == 0b010100010000) { //volume down + calcVolume--; + if (brightnessSetting > 4) { + brightnessSetting -= 5; + } + + MOTOR_P = 0; + MOTOR_M = 1; + __delay_ms(500); + MOTOR_M = 0; + MOTOR_P = 0; + selectcount = 3; + LED3 = 0; + LED4 = 0; + } + + if (brightnessSetting > 59) { + brightnessSetting = 59; + } + HCMS_change_brightness(brightnessSetting, &screenSettings_1); //change volume screen brightness + __delay_ms(250); + IRBF = 0; + } + + if (calcVolume > 100) { + calcVolume = 100; + } + if (calcVolume < 0) { + calcVolume = 0; + } + + selLoadString[6] = '0' + (char) (selectcount / 10); + selLoadString[7] = '0' + (char) (selectcount % 10); + + volLoadString[5] = '0' + (char) (calcVolume / 100); + volLoadString[6] = '0' + (char) (calcVolume / 10 > 9 ? 0 : calcVolume / 10); + volLoadString[7] = '0' + (char) (calcVolume % 10); + } +} + +void pic_init(void) { + init_osc(); + init_gpio(); + init_HCMS(); + init_IR(); + init_pot(PIC16F887A, P887A_AN07); + init_rot(PIC16F887A); +} + +// #[initialisation:gpio] + +void init_gpio(void) { + //Ready Ports C and D + TRISC = 0; + TRISD = 0; + PORTC = 0; + PORTD = 0; + //Analog selection + ANSEL = 0; + ANSELH = 0; + ANSELbits.ANS7 = 1; + + // LED => output, digital (transistors) + TRISA = 0x00; + PORTA = 0xFF; + + //Read motor + MOTOR_Mtris = 0; + MOTOR_Ptris = 0; + MOTOR_M = 0; + MOTOR_P = 0; +} + +// #[initialisation:HCMS] + +void init_HCMS() { + HCMS_spi_init(MST_OSC_DIV_04, SMP1_SDI_END, CKP0_CPOL0_IDLE_LOW, CKE1_CPHA0_TRSMIT_ACT2IDL, &screenSettings_1); + HCMS_init(&screenSettings_1); + HCMS_init(&screenSettings_2); + HCMS_change_brightness(brightnessSetting, &screenSettings_1); //set volume to brightsetting for demo +} + +// #[initialisation:IR] + +void init_IR() { + IRBind887(); + IRInit(falling, _MTPR, _MTPrSc, _MTPoSc, _TTPrSc); +} + +// #[initialisation:osc] + +void init_osc(void) { + // System Clock Select (SCS) + OSCCONbits.SCS = 0b1; // Internal Clock selected + // Internal Resistor-Capacitor Frequency select (IRCF) + OSCCONbits.IRCF = 0b111; // 8 MHz clock speed + OSCCONbits.OSTS = 0b1; // OSC startup time + + // Halt boot until clock is stable + while (OSCCONbits.HTS != 0b1); +} + +// #[routine:interrupt_service] + +void __interrupt() isr(void) { + if (INTF) { + IntHandler(); //Interrupt Handling + }//INTF + + if (TMR2IF) { + MTHandler(); //Measure Timer Handling + }//TMR2IF + + if (TMR1IF) { //timeout / reset + TTHandler(); //Timeout Timer Handling + } //TMR1IF + + if (count > 0) return; //if "count" from the IR Library is not 0, that means it is busy reading, so return. + + if (INTCONbits.RBIF == 1) { + // Parse rotary changes into `count`, shift it into `PORTA` + selectcount = read_rotary(); + PORTA = (unsigned char) (~(1 << selectcount)); + + // Clear the Port B change interrupt flag + INTCONbits.RBIF = 0; + } +} diff --git a/src/picamp.X/nbproject/Makefile-default.mk b/src/picamp.X/nbproject/Makefile-default.mk new file mode 100644 index 0000000..b876470 --- /dev/null +++ b/src/picamp.X/nbproject/Makefile-default.mk @@ -0,0 +1,158 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Include project Makefile +ifeq "${IGNORE_LOCAL}" "TRUE" +# do not include local makefile. User is passing all local related variables already +else +include Makefile +# Include makefile containing local settings +ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk" +include nbproject/Makefile-local-default.mk +endif +endif + +# Environment +MKDIR=mkdir -p +RM=rm -f +MV=mv +CP=cp + +# Macros +CND_CONF=default +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +IMAGE_TYPE=debug +OUTPUT_SUFFIX=elf +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +else +IMAGE_TYPE=production +OUTPUT_SUFFIX=hex +DEBUGGABLE_SUFFIX=elf +FINAL_IMAGE=${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} +endif + +ifeq ($(COMPARE_BUILD), true) +COMPARISON_BUILD=-mafrlcsj +else +COMPARISON_BUILD= +endif + +# Object Directory +OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} + +# Distribution Directory +DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} + +# Source Files Quoted if spaced +SOURCEFILES_QUOTED_IF_SPACED=main.c + +# Object Files Quoted if spaced +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.p1 +POSSIBLE_DEPFILES=${OBJECTDIR}/main.p1.d + +# Object Files +OBJECTFILES=${OBJECTDIR}/main.p1 + +# Source Files +SOURCEFILES=main.c + + + +CFLAGS= +ASFLAGS= +LDLIBSOPTIONS= + +############# Tool locations ########################################## +# If you copy a project from one host to another, the path where the # +# compiler is installed may be different. # +# If you open this project with MPLAB X in the new host, this # +# makefile will be regenerated and the paths will be corrected. # +####################################################################### +# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build +FIXDEPS=fixDeps + +.build-conf: ${BUILD_SUBPROJECTS} +ifneq ($(INFORMATION_MESSAGE), ) + @echo $(INFORMATION_MESSAGE) +endif + ${MAKE} -f nbproject/Makefile-default.mk ${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} + +MP_PROCESSOR_OPTION=16F887 +# ------------------------------------------------------------------------------------ +# Rules for buildStep: compile +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -D__DEBUG=1 -mdebugger=none -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../../../../.local/share/microchip/xc8/v2.46/pic/include/legacy" -I"../../../../.local/share/microchip/xc8/v2.46/pic/include/proc" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +else +${OBJECTDIR}/main.p1: main.c nbproject/Makefile-${CND_CONF}.mk + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/main.p1.d + @${RM} ${OBJECTDIR}/main.p1 + ${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../../../../.local/share/microchip/xc8/v2.46/pic/include/legacy" -I"../../../../.local/share/microchip/xc8/v2.46/pic/include/proc" -mwarn=-3 -Wa,-a -DXPRJ_default=$(CND_CONF) -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits $(COMPARISON_BUILD) -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -o ${OBJECTDIR}/main.p1 main.c + @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d + @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../ + +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assemble +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: assembleWithPreprocess +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +else +endif + +# ------------------------------------------------------------------------------------ +# Rules for buildStep: link +ifeq ($(TYPE_IMAGE), DEBUG_RUN) +${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk libs/new-potlib.X/dist/default/production/new-potlib.X.a libs/new-rotlib.X/dist/default/production/new-rotlib.X.a libs/IR_LIB/IRLib_v7.X/dist/default/production/IRLib_v7.X.a libs/HCMS2913.X/dist/default/production/HCMS2913.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.map -D__DEBUG=1 -mdebugger=none -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../../../../.local/share/microchip/xc8/v2.46/pic/include/legacy" -I"../../../../.local/share/microchip/xc8/v2.46/pic/include/proc" -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto -mrom=default,-1f00-1ffe -mram=default,-0-0,-70-70,-80-80,-f0-f0,-100-100,-170-170,-180-180,-1e5-1f0 $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} libs/new-potlib.X/dist/default/production/new-potlib.X.a libs/new-rotlib.X/dist/default/production/new-rotlib.X.a libs/IR_LIB/IRLib_v7.X/dist/default/production/IRLib_v7.X.a libs/HCMS2913.X/dist/default/production/HCMS2913.X.a + @${RM} ${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.hex + + +else +${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk libs/new-potlib.X/dist/default/production/new-potlib.X.a libs/new-rotlib.X/dist/default/production/new-rotlib.X.a libs/IR_LIB/IRLib_v7.X/dist/default/production/IRLib_v7.X.a libs/HCMS2913.X/dist/default/production/HCMS2913.X.a + @${MKDIR} ${DISTDIR} + ${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.map -DXPRJ_default=$(CND_CONF) -Wl,--defsym=__MPLAB_BUILD=1 -mdfp="${DFP_DIR}/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -I"../../../../.local/share/microchip/xc8/v2.46/pic/include/legacy" -I"../../../../.local/share/microchip/xc8/v2.46/pic/include/proc" -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file -ginhx32 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall -mno-default-config-bits -std=c99 -gdwarf-3 -mstack=compiled:auto:auto $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/PIC16F887_AMPINTERFACE.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} libs/new-potlib.X/dist/default/production/new-potlib.X.a libs/new-rotlib.X/dist/default/production/new-rotlib.X.a libs/IR_LIB/IRLib_v7.X/dist/default/production/IRLib_v7.X.a libs/HCMS2913.X/dist/default/production/HCMS2913.X.a + + +endif + + +# Subprojects +.build-subprojects: + + +# Subprojects +.clean-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${OBJECTDIR} + ${RM} -r ${DISTDIR} + +# Enable dependency checking +.dep.inc: .depcheck-impl + +DEPFILES=$(wildcard ${POSSIBLE_DEPFILES}) +ifneq (${DEPFILES},) +include ${DEPFILES} +endif diff --git a/picamp.X/nbproject/Makefile-genesis.properties b/src/picamp.X/nbproject/Makefile-genesis.properties similarity index 64% rename from picamp.X/nbproject/Makefile-genesis.properties rename to src/picamp.X/nbproject/Makefile-genesis.properties index 70b1f7a..a0ce25e 100644 --- a/picamp.X/nbproject/Makefile-genesis.properties +++ b/src/picamp.X/nbproject/Makefile-genesis.properties @@ -1,13 +1,13 @@ # -#Wed Mar 06 16:07:14 CET 2024 +#Thu Mar 28 18:08:34 CET 2024 default.languagetoolchain.version=2.46 -default.Pack.dfplocation= +default.Pack.dfplocation=/home/burhan/.local/share/microchip/mplabx/v6.20/packs/Microchip/PIC16Fxxx_DFP/1.6.156 conf.ids=default default.languagetoolchain.dir=/home/burhan/.local/share/microchip/xc8/v2.46/bin host.id=1odb-89vf-4o -configurations-xml=135dbe756f138e4ec6c0a089be24747b +configurations-xml=366b57c158f22632d6dd8bb4322eccc7 com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=f612087c95360c842296d189edfe3321 default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=bf89cdcdd6c0a49174fe4b605ef2b42d -proj.dir=/home/burhan/Desktop/PICAMP-main/picamp.X +proj.dir=/home/burhan/Desktop/PROJ ES/Definitive/PIC16F887_AMPINTERFACE.X default.com-microchip-mplab-mdbcore-pk4hybrid-Pk4HybridTooImpl.md5=916239579355067caf3c3a7796c790dc host.platform=linux diff --git a/src/picamp.X/nbproject/Makefile-impl.mk b/src/picamp.X/nbproject/Makefile-impl.mk new file mode 100644 index 0000000..41b9406 --- /dev/null +++ b/src/picamp.X/nbproject/Makefile-impl.mk @@ -0,0 +1,69 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=PIC16F887_AMPINTERFACE.X + +# Active Configuration +DEFAULTCONF=default +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=default + + +# build +.build-impl: .build-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre + ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean + + + +# all +.all-impl: .all-pre .depcheck-impl + ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build + + + +# dependency checking support +.depcheck-impl: +# @echo "# This code depends on make tool being used" >.dep.inc +# @if [ -n "${MAKE_VERSION}" ]; then \ +# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ +# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ +# echo "include \$${DEPFILES}" >>.dep.inc; \ +# echo "endif" >>.dep.inc; \ +# else \ +# echo ".KEEP_STATE:" >>.dep.inc; \ +# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ +# fi diff --git a/src/picamp.X/nbproject/Makefile-local-default.mk b/src/picamp.X/nbproject/Makefile-local-default.mk new file mode 100644 index 0000000..d461158 --- /dev/null +++ b/src/picamp.X/nbproject/Makefile-local-default.mk @@ -0,0 +1,36 @@ +# +# Generated Makefile - do not edit! +# +# +# This file contains information about the location of compilers and other tools. +# If you commmit this file into your revision control server, you will be able to +# to checkout the project and build it from the command line with make. However, +# if more than one person works on the same project, then this file might show +# conflicts since different users are bound to have compilers in different places. +# In that case you might choose to not commit this file and let MPLAB X recreate this file +# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at +# least once so the file gets created and the project can be built. Finally, you can also +# avoid using this file at all if you are only building from the command line with make. +# You can invoke make with the values of the macros: +# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ... +# +PATH_TO_IDE_BIN=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/ +# Adding MPLAB X bin directory to path. +PATH:=/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH) +# Path to java used to run MPLAB X when this makefile was created +MP_JAVA_PATH="/home/burhan/.local/share/microchip/mplabx/v6.20/sys/java/zulu8.64.0.19-ca-fx-jre8.0.345-linux_x64/bin/" +OS_CURRENT="$(shell uname -s)" +MP_CC="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +# MP_CPPC is not defined +# MP_BC is not defined +MP_AS="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_LD="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-cc" +MP_AR="/home/burhan/.local/share/microchip/xc8/v2.46/bin/xc8-ar" +DEP_GEN=${MP_JAVA_PATH}java -jar "/home/burhan/.local/share/microchip/mplabx/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar" +MP_CC_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +# MP_CPPC_DIR is not defined +# MP_BC_DIR is not defined +MP_AS_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_LD_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +MP_AR_DIR="/home/burhan/.local/share/microchip/xc8/v2.46/bin" +DFP_DIR=/home/burhan/.local/share/microchip/mplabx/v6.20/packs/Microchip/PIC16Fxxx_DFP/1.6.156 diff --git a/src/picamp.X/nbproject/Makefile-variables.mk b/src/picamp.X/nbproject/Makefile-variables.mk new file mode 100644 index 0000000..7651e07 --- /dev/null +++ b/src/picamp.X/nbproject/Makefile-variables.mk @@ -0,0 +1,10 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +# default configuration +CND_ARTIFACT_DIR_default=dist/default/production +CND_ARTIFACT_NAME_default=PIC16F887_AMPINTERFACE.X.production.hex +CND_ARTIFACT_PATH_default=dist/default/production/PIC16F887_AMPINTERFACE.X.production.hex diff --git a/src/picamp.X/nbproject/configurations.xml b/src/picamp.X/nbproject/configurations.xml new file mode 100644 index 0000000..853fc64 --- /dev/null +++ b/src/picamp.X/nbproject/configurations.xml @@ -0,0 +1,1260 @@ + + + + + config.h + libs/HCMS2913.X/h/HCMS2913.h + libs/global/picamp-potentiometer.h + libs/global/picamp-rotary.h + libs/IR_LIB/IRLib_v7.X/IRLib_v7.h + + + Makefile + + + + + main.c + + + + libs/HCMS2913.X/h + libs/global + libs/IR_LIB/IRLib_v7.X + + Makefile + + + + localhost + PIC16F887 + + + pk4hybrid + XC8 + 2.46 + 2 + + + + + + + + + + libs/new-potlib.X/dist/default/production/new-potlib.X.a + libs/new-rotlib.X/dist/default/production/new-rotlib.X.a + libs/IR_LIB/IRLib_v7.X/dist/default/production/IRLib_v7.X.a + libs/HCMS2913.X/dist/default/production/HCMS2913.X.a + + + + + + false + true + + + + + + + false + false + + false + + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/picamp.X/nbproject/private/configurations.xml b/src/picamp.X/nbproject/private/configurations.xml similarity index 100% rename from picamp.X/nbproject/private/configurations.xml rename to src/picamp.X/nbproject/private/configurations.xml diff --git a/src/picamp.X/nbproject/private/private.xml b/src/picamp.X/nbproject/private/private.xml new file mode 100644 index 0000000..c8f5ebf --- /dev/null +++ b/src/picamp.X/nbproject/private/private.xml @@ -0,0 +1,10 @@ + + + + + + file:/home/burhan/Desktop/PROJ%20ES/Definitive/PIC16F887_AMPINTERFACE.X/main.c + file:/home/burhan/Desktop/PROJ%20ES/Definitive/PIC16F887_AMPINTERFACE.X/config.h + + + diff --git a/src/picamp.X/nbproject/project.xml b/src/picamp.X/nbproject/project.xml new file mode 100644 index 0000000..6cf4322 --- /dev/null +++ b/src/picamp.X/nbproject/project.xml @@ -0,0 +1,27 @@ + + + com.microchip.mplab.nbide.embedded.makeproject + + + PIC16F887_AMPINTERFACE + 150773f7-8c94-42eb-8051-9806322880cd + 0 + ISO-8859-1 + + + libs/HCMS2913.X/h + libs/global + libs/IR_LIB/IRLib_v7.X + + + + default + 2 + + + + false + + + +