久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2746|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)+ds12887+lcd1602代碼與Proteus仿真圖

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)

獨(dú)立按鍵調(diào)節(jié)時(shí)間,年,月,日,星期

單片機(jī)源程序如下:
#include<reg52.h>
#define ds12887 P0
#define lcd P1
sbit dsas=P2^4;
sbit dsrw=P2^5;
sbit dsds=P2^6;
sbit dscs=P2^7;
sbit lcdrs=P2^0;
sbit lcde=P2^2;
sbit k1=P3^5;
sbit k2=P3^6;
sbit k3=P3^7;
#define uchar unsigned char
#define uint unsigned int
uchar houir,min,sad,qi,year, month,day,kai,kai1,kai2,ting;
void delay(uint x)
{
uchar y,z;
for(y=x;y>0;y--)
  for(z=110;z>0;z--);
}
uchar ds_read(uchar x)
{
uchar y;
dscs=0;
dsrw=1;
dsas=1;
dsds=1;
ds12887=x;
dsas=0;
dsds=0;
ds12887=0xff;
y=ds12887;
dsds=1;
dsas=1;
dscs=1;
return y;
}
void ds_write(uchar x,y)
{
dscs=0;
dsrw=1;
dsas=1;
dsds=1;
ds12887=x;
dsas=0;
dsrw=0;
ds12887=y;
dsrw=1;
dsas=1;
dscs=1;
}
void lcd_mingling(uchar x)
{
lcdrs=0;
lcde=0;
lcd=x;
delay(5);
lcde=1;
delay(5);
lcde=0;
}
void lcd_shuju(uchar x)
{
lcdrs=1;
lcde=0;
lcd=x;
delay(5);
lcde=1;
delay(5);
lcde=0;
}
void lcdlnit()
{
lcd_mingling(0x38);
lcd_mingling(0x0c);
lcd_mingling(0x06);
lcd_mingling(0x01);
lcd_mingling(0x80);
}
void dslnit()
{
ds_write(0x0a,0x20);
ds_write(0x0b,0x06);
ds_write(4,18);
ds_write(2,41);
ds_write(0,33);

ds_write(7,19);
ds_write(8,3);
ds_write(9,21);
ds_write(6,5);
}
void sfm()
{

houir=ds_read(4);
lcd_mingling(0x80);
lcd_shuju(houir/10+0x30);
lcd_shuju(houir%10+0x30);
lcd_shuju(':');
min=ds_read(2);
lcd_shuju(min/10+0x30);
lcd_shuju(min%10+0x30);
lcd_shuju(':');
sad=ds_read(0);
lcd_shuju(sad/10+0x30);
lcd_shuju(sad%10+0x30);
}
void nyr()
{
lcd_mingling(0x80+0x40);
lcd_shuju('2');
lcd_shuju('0');        
year=ds_read(9);
lcd_shuju(year/10+0x30);
lcd_shuju(year%10+0x30);
lcd_shuju('-');
month=ds_read(8);
lcd_shuju(month/10+0x30);
lcd_shuju(month%10+0x30);
lcd_shuju('-');
day=ds_read(7);
lcd_shuju(day/10+0x30);
lcd_shuju(day%10+0x30);
lcd_shuju('-');
lcd_shuju('-');
qi=ds_read(6);
lcd_shuju(qi+0x30);
}
void key()
{
if(k1==0)
{
  delay(20);
  if(k1==0)
  {
   while(!k1);
  
    kai++;
    if(kai==1)
    {
     ting++;
     lcd_mingling(0x80+6);
         lcd_mingling(0x0f);
    }
    if(kai==2)
    {
     lcd_mingling(0x80+3);
         lcd_mingling(0x0f);
    }
    if(kai==3)
    {
     lcd_mingling(0x80);
         lcd_mingling(0x0f);
    }
    if(kai==4)
    {
     lcd_mingling(0x80+0x40+8);
         lcd_mingling(0x0f);
    }
    if(kai==5)
    {
     lcd_mingling(0x80+0x40+5);
         lcd_mingling(0x0f);
    }
    if(kai==6)
    {
     lcd_mingling(0x80+0x40+2);
         lcd_mingling(0x0f);
    }
    if(kai==7)
    {
     lcd_mingling(0x80+0x40+12);
         lcd_mingling(0x0f);
    }
    if(kai==8)
    {
     lcd_mingling(0x80+1);
         lcd_mingling(0x0c);
     kai=0;
     ting=0;
     ds_write(0,sad);
     ds_write(2,min);
     ds_write(4,houir);
     ds_write(6,qi);
     ds_write(7,day);
     ds_write(8,month);
     ds_write(9,year);
    }
  }
}
if(kai==1)
{
  if(k2==0)
  {
   delay(20);
   if(k2==0)
   {
    while(!k2);
    sad++;
    if(sad==60)
     sad=0;
    lcd_shuju(sad/10+0x30);
    lcd_shuju(sad%10+0x30);
    lcd_mingling(0x80+6);
   
   }
  }
  if(k3==0)
  {
   delay(20);
   if(k3==0)
   {
    while(!k3);
    if(sad==0)
     sad=60;
    sad--;
     lcd_shuju(sad/10+0x30);
    lcd_shuju(sad%10+0x30);
    lcd_mingling(0x80+6);
   }
  }
}
if(kai==2)
{
    if(k2==0)
  {
   delay(20);
   if(k2==0)
   {
    while(!k2);
    min++;
    if(min==60)
     min=0;
    lcd_shuju(min/10+0x30);
    lcd_shuju(min%10+0x30);
    lcd_mingling(0x80+3);
   }
  }
  if(k3==0)
  {
   delay(20);
   if(k3==0)
   {
    while(!k3);
    if(min==0)
     min=60;
    min--;
    lcd_shuju(min/10+0x30);
    lcd_shuju(min%10+0x30);
    lcd_mingling(0x80+3);
   }
  }
}
if(kai==3)
{
  if(k2==0)
  {
   delay(20);
   if(k2==0)
   {
    while(!k2);
    houir++;
    if(houir==24)
     houir=0;
    lcd_shuju(houir/10+0x30);
    lcd_shuju(houir%10+0x30);
    lcd_mingling(0x80);
   }
  }
  if(k3==0)
  {
   delay(20);
   if(k3==0)
   {
    while(!k3);
    if(houir==0)
    houir=24;
   houir--;
   lcd_shuju(houir/10+0x30);
   lcd_shuju(houir%10+0x30);
   lcd_mingling(0x80);
      
   }
  }
}
if(kai==4)
{
    if(k2==0)
  {
   delay(20);
   if(k2==0)
   {
    while(!k2);
    day++;
    if(day==31)
     day=0;
    lcd_shuju(day/10+0x30);
    lcd_shuju(day%10+0x30);
    lcd_mingling(0x80+0x40+8);
   }
  }
  if(k3==0)
  {
   delay(20);
   if(k3==0)
   {
    while(!k3);
    if(day==0)
     day=31;
    min--;
    lcd_shuju(day/10+0x30);
    lcd_shuju(day%10+0x30);
    lcd_mingling(0x80+0x40+8);
   }
  }
}
if(kai==5)
{
    if(k2==0)
  {
   delay(20);
   if(k2==0)
   {
    while(!k2);
    month++;
    if(month==12)
    month=0;
    lcd_shuju(month/10+0x30);
    lcd_shuju(month%10+0x30);
    lcd_mingling(0x80+0x40+5);
   }
  }
  if(k3==0)
  {
   delay(20);
   if(k3==0)
   {
    while(!k3);
    if(month==0)
     month=12;
   month--;
    lcd_shuju(month/10+0x30);
    lcd_shuju(month%10+0x30);
    lcd_mingling(0x80+0x40+5);
   }
  }
}
if(kai==6)
{
    if(k2==0)
  {
   delay(20);
   if(k2==0)
   {
    while(!k2);
    year++;
    if(year==100)
     year=0;
    lcd_shuju(year/10+0x30);
    lcd_shuju(year%10+0x30);
    lcd_mingling(0x80+0x40+2);
   }
  }
  if(k3==0)
  {
   delay(20);
   if(k3==0)
   {
    while(!k3);
    if(year==0)
     min=100;
    year--;
    lcd_shuju(year/10+0x30);
    lcd_shuju(year%10+0x30);
    lcd_mingling(0x80+0x40+2);
   }
  }
}
if(kai==7)
{
    if(k2==0)
  {
   delay(20);
   if(k2==0)
   {
    while(!k2);
    qi++;
    if(qi==8)
    qi=1;
    lcd_shuju(qi+0x30);   
    lcd_mingling(0x80+0x40+12);
   }
  }
  if(k3==0)
  {
   delay(20);
   if(k3==0)
   {
    while(!k3);
    if(qi==1)
     qi=8;
   qi--;
    lcd_shuju(qi+0x30);
    lcd_mingling(0x80+0x40+12);
   }
  }
}  
}
void main()
{
dslnit();
  lcdlnit();
  ds_write(0x0a,0x00);
  
  while(1)
  {  
   key();
   if(ting==0)
   {
    sfm();
    nyr();
    delay(200);
   }
  }
}  

全部資料51hei下載地址:
復(fù)習(xí)液晶時(shí)鐘.zip (92.28 KB, 下載次數(shù): 39)

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久久入口 | h视频免费看 | 久久国产精品视频 | 看av片网站 | 国产一区二区麻豆 | 日本一区二区三区在线观看 | 欧美日韩国产在线观看 | 日日骚视频 | 国产一区二区精品在线观看 | 污免费网站 | 久久只有精品 | 成人三级在线播放 | 国户精品久久久久久久久久久不卡 | 亚洲精品视频在线看 | 国产乱码久久久 | 亚洲国产一区二区三区四区 | 欧美精品在线一区 | 日韩精品在线观看免费 | 国产一区在线免费观看视频 | 伊人99| 国产精品视频在线观看 | 国产精品成人在线 | 日韩成人在线网站 | 国产三级在线观看播放 | 一道本不卡 | 国产精品欧美一区二区三区不卡 | 日韩精彩视频 | 欧美日韩在线视频观看 | 99精品国产一区二区三区 | 美女视频三区 | 91社区在线观看高清 | 黑人精品欧美一区二区蜜桃 | 亚洲精品一 | 先锋av资源网 | 欧美黑人又粗大 | 一区二区在线免费观看 | 久久久久久久夜 | 久久久久久久电影 | 操操操操操 | 紧缚调教一区二区三区视频 | 欧美日韩视频在线播放 |