You are on page 1of 5

#include <xc.

h>
#include "pic16f877a.h"
#include "stdint.h"
// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.

// CONFIG
#pragma config FOSC = HS // Oscillator Selection bits (XT
oscillator)
#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT
disabled)
#pragma config PWRTE = ON // Power-up Timer Enable bit (PWRT
enabled)
#pragma config BOREN = ON // Brown-out Reset Enable bit (BOR
enabled)
#pragma config LVP = OFF // Low-Voltage (Single-Supply) In-
Circuit Serial Programming Enable bit (RB3 is digital I/O, HV on MCLR
must be used for programming)
#pragma config CPD = OFF // Data EEPROM Memory Code Protection
bit (Data EEPROM code protection off)
#pragma config WRT = OFF // Flash Program Memory Write Enable
bits (Write protection off; all program memory may be written to by
EECON control)
#pragma config CP = OFF // Flash Program Memory Code Protection
bit (Code protection off)

#define BUTTON1 !PORTBbits.RB4


#define BUTTON2 !PORTBbits.RB5
#define BUTTON3 !PORTBbits.RB6
#define BUTTON4 !PORTBbits.RB7

void delay(unsigned long);

int main(void)
{

TRISD= 0;
TRISB= 255;//LED1
PORTD=0;
while(1){

if(BUTTON1)PORTD=192;
if(BUTTON2)PORTD=48;
if(BUTTON3)PORTD=12;
if(BUTTON4)PORTD=3;
}

return 0;
}
void delay(unsigned long count)
{

while(count--){}

}
#include <xc.h>
#include "pic16f877a.h"
#include "stdint.h"
// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.

// CONFIG
#pragma config FOSC = HS // Oscillator Selection bits (XT
oscillator)
#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT
disabled)
#pragma config PWRTE = ON // Power-up Timer Enable bit (PWRT
enabled)
#pragma config BOREN = ON // Brown-out Reset Enable bit (BOR
enabled)
#pragma config LVP = OFF // Low-Voltage (Single-Supply) In-
Circuit Serial Programming Enable bit (RB3 is digital I/O, HV on MCLR
must be used for programming)
#pragma config CPD = OFF // Data EEPROM Memory Code Protection
bit (Data EEPROM code protection off)
#pragma config WRT = OFF // Flash Program Memory Write Enable
bits (Write protection off; all program memory may be written to by
EECON control)
#pragma config CP = OFF // Flash Program Memory Code Protection
bit (Code protection off)

#define BUTTON1 !PORTBbits.RB4


#define BUTTON2 !PORTBbits.RB5
#define BUTTON3 !PORTBbits.RB6
#define BUTTON4 !PORTBbits.RB7

void delay(unsigned long);

int main(void)
{

TRISD= 0;
TRISB= 255;//LED1
PORTD=9;
while(1){

if(BUTTON1)if(PORTD!=0) PORTD=PORTD-1; else PORTD=9;


delay(60000);
}

return 0;
}
void delay(unsigned long count)
{

while(count--){}

You might also like