/* * File: BlinkLED_1.c * Author: otnie * * Created on 30 September 2026, 10:58 */ // ================= main.c ================= #include "xc.h" // Step 1: Configuration bits (fuses) - burned into Flash at program time #pragma config FNOSC = FRCPLL // Start with Internal FRC + PLL #pragma config FCKSM = CSDCMD // Clock switching disabled #pragma config FWDTEN = OFF // Watchdog Timer Enabled bits (WDT disabled) //#define _XTAL_FREQ 40000000UL // Instruction clock = FOSC/2 = 40 MHz #define FCY 40000000UL #include // Brings in __delay_ms() int main(void) { // CRITICAL: Switch AN2/RB0 pin from Analog to Digital mode AD1PCFGLbits.PCFG2 = 1; TRISBbits.TRISB0 = 0; // RB0 = output LATBbits.LATB0 = 0; // start LOW while (1) { LATBbits.LATB0 = 1; // Turn LED ON (HIGH = 3.3V) __delay_ms(800); LATBbits.LATB0 = 0; // Turn LED OFF (LOW = 0V) __delay_ms(200); } return 0; }