From 2f206b012ed3ed5f54cb2d7778f45234ee22da34 Mon Sep 17 00:00:00 2001 From: Matt Strapp Date: Thu, 6 Feb 2020 11:32:25 -0600 Subject: Add discussion Stuff --- Disc02.X/disc02C.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 Disc02.X/disc02C.c diff --git a/Disc02.X/disc02C.c b/Disc02.X/disc02C.c new file mode 100644 index 0000000..442852f --- /dev/null +++ b/Disc02.X/disc02C.c @@ -0,0 +1,56 @@ +#include +#include + +// PIC24FJ64GA002 Configuration Bit Settings +// CW1: FLASH CONFIGURATION WORD 1 (see PIC24 Family Reference Manual 24.1) +#pragma config ICS = PGx1 // Comm Channel Select (Emulator EMUC1/EMUD1 pins are shared with PGC1/PGD1) +#pragma config FWDTEN = OFF // Watchdog Timer Enable (Watchdog Timer is disabled) +#pragma config GWRP = OFF // General Code Segment Write Protect (Writes to program memory are allowed) +#pragma config GCP = OFF // General Code Segment Code Protect (Code protection is disabled) +#pragma config JTAGEN = OFF // JTAG Port Enable (JTAG port is disabled) + + +// CW2: FLASH CONFIGURATION WORD 2 (see PIC24 Family Reference Manual 24.1) +#pragma config POSCMOD = NONE // Primary Oscillator Select (Primary oscillator disabled. + // Primary Oscillator refers to an external osc connected to the OSC1 and OSC2 pins) +#pragma config I2C1SEL = PRI // I2C1 Pin Location Select (Use default SCL1/SDA1 pins) +#pragma config IOL1WAY = OFF // IOLOCK Protection (IOLOCK may be changed via unlocking seq) +#pragma config OSCIOFNC = ON // OSC2/CLKO/RC15 functions as port I/O (RC15) +#pragma config FCKSM = CSECME // Clock Switching and Monitor (Clock switching is enabled, + // Fail-Safe Clock Monitor is enabled) +#pragma config FNOSC = FRCPLL // Oscillator Select (Fast RC Oscillator with PLL module (FRCPLL)) + +void myAsmFunc(int iterations); + +int myGlobalVar; +extern int counter; + +void setup(void) { + CLKDIVbits.RCDIV = 0; + + AD1PCFG = 0x9fff; // all digital + TRISB = 3; + LATB = 0; +} + +int main(void) { + int aS=-1, bS=-2; + unsigned int aU = 65535, bU=65534; + int dummy = 1; + + setup(); + + myGlobalVar = 4; + counter = 5; + + myAsmFunc(3); + + if (aS < bS) + ++dummy; + + if (aU < bU) + ++dummy; + + while (1) { + } +} -- cgit v1.2.3