<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > LCD1602液晶顯示DS1302實(shí)時(shí)時(shí)鐘Proteus仿真

LCD1602液晶顯示DS1302實(shí)時(shí)時(shí)鐘Proteus仿真

作者: 時(shí)間:2016-11-13 來(lái)源:網(wǎng)絡(luò ) 收藏
Proteus仿真圖:

本文引用地址:http://dyxdggzs.com/article/201611/316089.htm

仿真程序:

#include

#include

#include

#defineuintunsignedint

#defineucharunsignedchar

//*******LCD*******

sbitLCDRS=P2^0; //LCD數據/命令選擇端

sbitLCDRW=P2^1;

sbitLCDEN=P2^2; //LCD使能新號端

//******DS1302******

sbitIO=P1^0; //1302數據線(xiàn)

sbitSCLK=P1^1; //1302時(shí)鐘線(xiàn)

sbitRST=P1^2; //復位

uintnum=0;

//uchar week[]={"SUN","***","MON","TUS","WEN","THU","FRI","SAT"};

ucharDate[]={"Date:2000-00-00"};

ucharTime[]={"Time:*00:00-00*"};

uchardate_time[7]; //從ds1302讀取的當前日期時(shí)間

//=======延時(shí)=======

voiddelay(uintz)

{

uintx,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

//********向1302寫(xiě)數據*********

voidwrite_ds1302(uchardat)

{

uchari;

for(i=0;i<8;i++)

{

IO=dat&0x01; //保持最后一位為1,讀狀態(tài)

SCLK=1;

delay(1);

SCLK=0;

dat>>=1;

}

}

//*********從1302讀數據*********

ucharread_ds1302()

{

uchari,b=0x00;

for(i=0;i<8;i++)

{

b|=_crol_((uchar)IO,i);

SCLK=1;

delay(1);

SCLK=0;

}

returnb/16*10+b%16; //與BCD碼轉換

}

//*********從指定位置讀數據********

ucharread_data(ucharaddr)

{

uchardat;

RST=0;

SCLK=0;

RST=1;

write_ds1302(addr);

dat=read_ds1302();

SCLK=1;

RST=0;

returndat;

}

//*********讀取當前日期時(shí)間*********

voidread_date_time()

{

uchari,addr=0x81;

for(i=0;i<7;i++)

{

date_time[i]=read_data(addr);

addr+=2;

}

}

//----------LCD寫(xiě)指令----------

voidlcd_write_com(ucharcom)

{

LCDRS=0; //RS為0時(shí),寫(xiě)指令,RS為1時(shí),寫(xiě)數據

P0=com;

delay(5);

LCDEN=1;

delay(5);

LCDEN=0;

}

//----------LCD寫(xiě)數據----------

voidlcd_write_data(uchardat)

{

LCDRS=1;

P0=dat;

delay(5);

LCDEN=1;

delay(5);

LCDEN=0;

}

//-------LCD初始化-------

voidlcd_init()

{

LCDEN=0;

lcd_write_com(0x38); //LCD顯示模式設置

lcd_write_com(0x0c); //LCD顯示開(kāi)/關(guān)及光標設置

lcd_write_com(0x06); //當寫(xiě)一個(gè)字符后地址指針加1,且光標加1

lcd_write_com(0x01); //顯示清屏

}

//---------設置液晶顯示位置-----------

voidset_lcd_pos(ucharp)

{

lcd_write_com(p|0x80);

}

//---------液晶顯示程序----------

voidlcd_print(ucharp,uchar*s)

{

set_lcd_pos(p);

for(num=0;num<16;num++)

{

lcd_write_data(s[num]);

delay(10);

}

}

//----------日期時(shí)間轉換-----------

voidformat_datetime(uchard,uchar*p)

{

p[0]=d/10+0;

p[1]=d%10+0;

}

//---------主程序----------

voidmain()

{

LCDRW=0;

lcd_init();

while(1)

{

read_date_time();

format_datetime(date_time[6],Date+8); //年月日

format_datetime(date_time[4],Date+11);

format_datetime(date_time[3],Date+14);

// strcpy(Date+13,week[date_time[5]]);

format_datetime(date_time[2],Time+7); //時(shí)間轉換

format_datetime(date_time[1],Time+10);

format_datetime(date_time[0],Time+13);

lcd_print(0x00,Date);

lcd_print(0x40,Time);

}

}



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>