picchick
A utility to aid in programming PIC microcontrollers
#include <xc.h>
/* PIC18F25Q10
#define _XTAL_FREQ 1000000
#pragma config FEXTOSC = OFF, RSTOSC = HFINTOSC_1MHZ, FCMEN = OFF
#pragma config PWRTE = ON, LPBOREN = OFF, BOREN = OFF, ZCD = OFF, PPS1WAY = OFF, STVREN = OFF, XINST = OFF
#pragma config WDTE = OFF, WDTCWS = WDTCWS_7, WDTCCS = SC
#pragma config CLKOUTEN = ON
#define LED_PIN 0b11111111
#define LED_TRIS TRISB
#define LED_ANSEL ANSELB
#define LED_PORT PORTB
*/
/* PIC16F1454
#define _XTAL_FREQ 500000
#pragma config FOSC = INTOSC, WDTE = OFF, PWRTE = ON, MCLRE = ON, CP = OFF, BOREN = OFF, CLKOUTEN = ON, IESO = OFF, FCMEN = OFF
#pragma config WRT = OFF, CPUDIV = NOCLKDIV, USBLSCLK = 24MHz, PLLMULT = 4x, PLLEN = DISABLED, STVREN = OFF, BORV = HI, LPBOR = OFF, LVP = ON
#define LED_PIN 0b00100000
#define LED_TRIS TRISA
#define LED_ANSEL ANSELA
#define LED_PORT PORTA
*/
/* PIC16(L)F19197
#define _XTAL_FREQ 1000000
#pragma config FCMEN = OFF, CSWEN = OFF, LCDPEN = OFF, VBATEN = OFF, CLKOUTEN = ON, RSTOSC = HFINT1, FEXTOSC = OFF
#pragma config DEBUG = OFF, STVREN = OFF, PPS1WAY = OFF, ZCD = OFF, BORV = HI, BOREN = OFF, LPBOREN = OFF, PWRTS = PWRT_64, MCLRE = ON
#pragma config WDTCPS = WDTCPS_0, WDTE = OFF, WDTCWS = WDTCWS_0, WDTCCS = SC
#pragma config BBSIZE = 512, BBEN = OFF, SAFEN = OFF, WRTAPP = OFF, WRTB = OFF, WRTC = OFF, WRTD = OFF, WRTSAF = OFF, LVP = ON
#pragma config CP = OFF
#define LED_PIN 0b10000000
#define LED_TRIS TRISG
#define LED_ANSEL ANSELG
#define LED_PORT PORTG
*/
void
main (void)
{
// Set LED pin to digital output
LED_ANSEL &= ~(LED_PIN);
LED_TRIS &= ~(LED_PIN);
while (1)
{
// Turn LED on
LED_PORT |= LED_PIN;
// Wait for a bit
__delay_ms(500);
// Turn LED off
LED_PORT &= ~(LED_PIN);
// Wait for a bit
__delay_ms(500);
}
}