#Microcontrollers LED interfacing with 8051

// In Embedded C:

#include <reg51.h>

void delay(unsigned int time)
{
unsigned int i,j;
for(i=0;i<time;i++)
for(j=0;j<0xFF;j++);
}

int main()
{
P1 = 0x00;
while(1)
{
P1 = ~P1;
delay(100);
}
}


// ----------------------------------------------------------------------------

// In Assembly



org 00h
ljmp start ;jump to start on reset


delay: ;delay routine approx. 1.5 seconds
    mov r3,#0x02
mov r4,#0x0
mov r5,#0x0
loop:
djnz r5, loop
djnz r4, loop
djnz r3, loop
RET

start:
mov P2, #00h
acall delay
mov P2, #0FFh
acall delay
sjmp start

 END


Comments