日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]//////////////////時(shí)鐘/////////////////////#include #include typedef unsigned char uchar;typedef unsigned int uint;sbit rs=P2^0;sbit rw=P2^1;sbit e=P2^2;#define lcd_port P0#define begin_pos 2uchar ss,

//////////////////時(shí)鐘/////////////////////
#include
#include
typedef unsigned char uchar;
typedef unsigned int uint;
sbit rs=P2^0;
sbit rw=P2^1;
sbit e=P2^2;
#define lcd_port P0
#define begin_pos 2
uchar ss,mm,hh,n;
void delayms(uchar ms)
{// 延時(shí)子程序
uchar i,j;
for(;ms>0;ms--)
for(i=6;i>0;i--)
for(j=82;j>0;j--);
}
bit lcd_bz()
{// 測試LCD忙碌狀態(tài)
bit result;
rs=0;
rw=1;
e=1;
_nop_();
_nop_();
_nop_();
_nop_();
result=(bit)(P0&0x80);
e=0;
return result;
}

void lcd_w_cmd(uchar cmd)
{// 寫入指令數(shù)據(jù)到LCD
while(lcd_bz());
rs=0;
rw=0;
e=0;
_nop_();
_nop_();
lcd_port=cmd;
_nop_();
_nop_();
_nop_();
_nop_();
e=1;
_nop_();
_nop_();
_nop_();
_nop_();
e=0;
}

void lcd_pos(uchar pos)
{//設(shè)定顯示位置
lcd_w_cmd(pos|0x80);
}

void lcd_w_dat(uchar dat)
{//寫入字符顯示數(shù)據(jù)到LCD
while(lcd_bz());
rs=1;
rw=0;
e=0;
lcd_port=dat;
_nop_();
_nop_();
_nop_();
_nop_();
e=1;
_nop_();
_nop_();
_nop_();
_nop_();
e=0;
}
void lcd_init()//LCD初始化設(shè)定
{
lcd_w_cmd(0x01);//清屏并光標(biāo)復(fù)位
delayms(1);
lcd_w_cmd(0x38);//設(shè)置式:8位2行5x7點(diǎn)陣顯示模
delayms(1);
lcd_w_cmd(0x0c);//顯示器開、光標(biāo)關(guān)且光標(biāo)不允許閃爍
delayms(1);
lcd_w_cmd(0x06);//文字不動,光標(biāo)自動右移
delayms(1);
}
void lcd_w_str(uchar *str)
{
while(*str>0)
{
lcd_w_dat(*str);
str++;
}
}
void display()
{
lcd_pos(4+begin_pos);//顯示小時(shí)
delayms(1);
lcd_w_dat(hh/10+0x30);
delayms(1);
lcd_w_dat(hh%10+0x30);
delayms(1);
lcd_pos(7+begin_pos);//顯示分鐘
delayms(1);
lcd_w_dat(mm/10+0x30);
delayms(1);
lcd_w_dat(mm%10+0x30);
delayms(1);
lcd_pos(0x0a+begin_pos);//顯示秒鐘
delayms(1);
lcd_w_dat(ss/10+0x30);
delayms(1);
lcd_w_dat(ss%10+0x30);
}
void main()
{
TMOD=0X01;
IE=0X82;
TL0=-50000%256;
TH0=-50000/256;
TR0=1;
lcd_init();
delayms(10);
lcd_pos(6+begin_pos);//顯示:
delayms(1);
lcd_w_str(":");
delayms(1);
lcd_pos(9+begin_pos);//顯示:
delayms(1);
lcd_w_str(":");
display();
delayms(10);
lcd_pos(begin_pos-1); //
lcd_w_str("TIME");
while(1)
{
display();
delayms(20);
}
}
void t0() interrupt 1
{
TL0=-50000%256;
TH0=-50000/256;
n++;
if(!(n%10))
{
lcd_pos(6+begin_pos);//讓 :不顯示
delayms(1);
lcd_w_dat(0X20);
delayms(1);
lcd_pos(9+begin_pos);//讓 :不顯示
delayms(1);
lcd_w_dat(0X20);
}
if(!(n%20))
{
ss++;
if(ss==60)ss=0,mm++;
if(mm==60)mm=0,hh++;
if(hh==24)hh=0;
lcd_pos(6+begin_pos);//讓 :顯示
delayms(1);
lcd_w_str(":");
delayms(1);
lcd_pos(9+begin_pos);//讓 :顯示
delayms(2);
lcd_w_str(":");
}
}


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉