You are on page 1of 2

#include<avr/io.

h>
#include<util/delay.h>
#define rs 0
#define rw 1
#define en 2
void main()
{
DDRD=0xFF;
lcd_init();
while(1)
{
for(int i=0;i<=23;i++)
{
lcd_cmd(0x80);
loop(i);
for(int j=0;j<=59;j++)
{
lcd_cmd(0x83);
loop(j);
for(int k=0;k<=59;k++)
{
lcd_cmd(0x86);
loop(k);
_delay_ms(15000);
}
}
}
}

}
void lcd_init()
{
lcd_cmd(0x02);
lcd_cmd(0x28);
lcd_cmd(0x06);
lcd_cmd(0x0c);
}
void lcd_cmd(unsigned char abc)
{
char div1;
div1=abc&0xF0;
PORTD=div1;
PORTD&=~(1<<rs);
PORTD &=~(1<<rw);

PORTD |=(1<<en);
_delay_ms(1);
PORTD &=~(1<<en);
div1=((abc<<4)&0xF0);
PORTD=div1;
PORTD &=~(1<<rs);
PORTD &=~(1<<rw);
PORTD |=(1<<en);
_delay_ms(1);
PORTD &=~(1<<en);
_delay_ms(1);
}
void lcd_data(unsigned char xyz)
{
char div;
div=xyz&0xF0;
PORTD=div;
PORTD |=(1<<rs);
PORTD &=~(1<<rw);
PORTD |=(1<<en);
_delay_ms(1);
PORTD &=~(1<<en);
div=((xyz<<4)&0xF0);
PORTD=div;
PORTD |=(1<<rs);
PORTD &=~(1<<rw);
PORTD |=(1<<en);
_delay_ms(1);
PORTD &=~(1<<en);
_delay_ms(1);
}
void loop(char x)
{
int h1=0;
int h2=0;
h1=x/10;
h2=x%10;
lcd_data(h1+48);
lcd_data(h2+48);
lcd_data(':');
}

You might also like