2. 8051 C Program to send hex values for ASCII characters
of 0,1,2,3,4,5,A,B,C,D to port P0.
● #include<reg51.h>
void main ()
{
unsigned char num [ ] ="012345ABCD";
unsigned char z;
for (z=0; z<=10; z++)
P0=num[z];
}
3. 8051 C program for of square wave generation
● #include<reg51.h>
unsigned int i, j;
main ()
{
while (1)
{
P0=0xff;
for (i=0; i<10000; i++)
for (j=0; j<1000; j++);
P0=0x00;
for (i=0; i<10000; i++)
for (j=0; j<1000; j++);
}
}
4. 8051 C program to generate step waveform
● #include<reg51.h>
unsigned int i, j;
void main ()
{
while (1)
{
P0=0x10;
for (i=0; i<10000; i++)
for (j=0;j<100;j++);
P0=0x20;
for (i=0; i<10000; i++)
for (j=0; j<200; j++);
P0=0x30;
for (i=0; i<10000; i++)
5. for (j=0; j<300; j++);
P0=0x40;
for (i=0; i<10000; i++)
for (j=0; j<400; j++);P0=0x30;
for (i=0; i<10000; i++)
for (j=0; j<300; j++);
P0=0x20;
for (i=0; i<10000; i++)
for (j=0; j<200; j++);
P0=0x10;
for (i=0; i<10000; i++)
for (j=0; j<100; j++);
}
}
6. 8051 C program to generate 100ms time delay using timer
0, mode 0
● #include<reg51.h>
void delay ();
void main ()
{
while (1)
{
P0=0xff;
delay ();
P0=0x00;
delay ();
}
}
void delay ()
{
8. 8051 C program in timer 0 and mode 1 to make led on and
off continuously connected to P0.1
● #include<reg51.h>
#include<stdio.h>
sbit led =P0^1;
void delay ()
void main ()
{
While (1)
{
led=1;
delay ();
}
else
{
led=0;
delay ();
}
10. 8051 C Program Design and implement down counter using 7
segment display when counter reaches to lowest counter value
then rotate dcmotor in anticlockwise direction
● #include<at89c51xd2.h>
#include<stdio.h>
void delay ();
void dc ();
void main ()
{
while (1)
{
P3=0x00;
P0=0x71;
delay ();
P0=0x79;
delay ();
P0=0x3f;
13. unsigned int i;
TMOD=0x00;
for (i=0; i<15; i++)
{
TL0=0xfc;
TH0=0x0e;
TR0=1;
while (TF0==0);
TF0=0;
}
TR0=0;
}
void dc ()
{
P1=0x01;
delay ();
P1=0xff;
delay ();
}
14. 8051 C Program Design and implement stepper motor for 1
complete cycle either clockwise or anticlockwise when 1 cycle
completed turn on LED
● #include<at89c51xd2.h>
#include<stdio.h>
void delay ();
sbit led=P0^0;
void main ()
{
while (1)
{
P1=0x0c;
delay ();
P1=0x06;
delay ();
P1=0x03;
delay ();
P1=0x09;
17. 8051 C program to design a 8bit up down counter
● #include <reg51.h>
● void main ()
● {
● unsigned int i, j, k, l;
● for (i=255; i>0; i--)
● {
● P0=i;
● for (j=0; j<50000; j++);
● }
● for (k=255; k>=0; k--)
● {
● P0=i;
● for (l=0; l<50000; l++);
● }
● }
18. 8051 C program to send temperature of -4 to +4 to
port P1
● #include<reg51.h>
main ()
{
char num [ ]={-4,-3,-2,-1,0,1,2,3,4};
unsigned char i;
for (i=0; i<9; i++)
P1=num[i];
}
19. 8051 C Program to generate triangular wave
● #include<reg51.h>
unsigned int i,j;
void main ()
{
while(1)
{
for(i=0;i<255;i++)
{
P0=i;
for (j=0;j<10000;j++);
}
for(i=255;i>0;i--);
}
}
20. 8051 C Program to Design 7 segment display to
count from 0 to F
● #include<at89c51xd2.h>
void delay();
void main()
{
Char
num[ ]={0x03f,0x06,0x5b,0x4f,0x66,0x6d,0x07,0x7f,0x6f,0x77,0x7c,0x3a,0x5e,0x79,0x71,0x7
9};
unsigned char z;
for(z=0;z<=16;z++)
{
P0=0x00;
P1=num[z];
delay();
}