0% found this document useful (0 votes)
17 views

Code:: #Pragma Config OSC HS #Pragma Config WDT OFF

coding,practical work

Uploaded by

Prince Sam
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Code:: #Pragma Config OSC HS #Pragma Config WDT OFF

coding,practical work

Uploaded by

Prince Sam
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

CODE:

#include<p18f452.h>

#pragma config OSC = HS

#pragma config WDT = OFF

void delay1(void);

void delay2(void);

void delay8(void);

void chk_isr(void);
void INT0_ISR(void);

#pragma codeMy_HiPrio_Int=0X0008
void My_HiPrio_Int(void)
{

_asm

GOTO chk_isr

_endasm

#pragma code

#pragma interrupt
chk_isr void
chk_isr (void)
{

if(INTCONbits.INT0IF==1)
INT0_ISR();
}
void main(void)

TRISC=0x0;

TRISD=0x0;
TRISB=255;
INTCONbits.INT0IF=0;
INTCONbits.INT0IE=1;
INTCONbits.GIE=1;

while(1){

PORTCbits.RC0 =1;
PORTDbits.RD2 =1;
delay8();
PORTCbits.RC1=1;
delay2();

PORTCbits.RC0 =0;

PORTDbits.RD2 =0;

PORTCbits.RC1 =0;

PORTCbits.RC2 = 1;
PORTDbits.RD0=1;
delay8();
PORTDbits.RD1=1;
delay2();
PORTCbits.RC2 =0;

PORTDbits.RD0 =0;

PORTDbits.RD1 =0;
}

void INT0_ISR(void)

PORTCbits.RC0 =0;

PORTDbits.RD2 =0;

PORTCbits.RC1 =0;

PORTCbits.RC2 =0;

PORTDbits.RD0 =0;

PORTDbits.RD1 =0;

while(PORTBbits.RB0!=0)
{ PORTCbits.RC1=1;
PORTDbits.RD1=1;
delay1();
PORTCbits.RC1=0;
PORTDbits.RD1=0;
delay1();

INTCONbits.INT0IF=0;

_asm
GOTO main

_endasm

void delay1(void){
unsigned char i;
for(i=0;i<16;i++){
T0CON =
0x08;
TMR0L
= 0x00;
TMR0H
= 0x00;
T0CONbits.TMR0ON = 1;
while(INTCONbits.TMR0IF == 0);

T0CONbits.TMR0ON =0;

INTCONbits.TMR0IF =0;

void delay2(void){

unsigned char i;

for(i=0;i<31;i++){
T0CON = 0x08;
TMR0L = 0x00;
TMR0H = 0x00;
T0CONbits.TMR0ON = 1;

while(INTCONbits.TMR0IF == 0);

T0CONbits.TMR0ON =0;

INTCONbits.TMR0IF =0;

void delay8(void){
int i;
for (i=0;i<=123;i++){
T0CON = 0x08;
TMR0L = 0x00;

TMR0H = 0x00;

T0CONbits.TMR0ON = 1;
while(INTCONbits.TMR0IF == 0);

T0CONbits.TMR0ON =0;

INTCONbits.TMR0IF =0;

You might also like