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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7315|回復: 19
收起左側

為什么LCD1602的數字時鐘顯示不出來 大神們

  [復制鏈接]
ID:80172 發表于 2015-5-21 20:21 | 顯示全部樓層 |閱讀模式
這是程序#include<reg51.h>#define LCD_data P0
sbit RS=P2^0;
sbit RW=P2^1;
sbit LCDE=P2^2;
unsigned char m,miao,fen=12,shi=10;
unsigned char line1[16]={"  BEIJING TIME  "};
unsigned char line2[16]={"15-5-22  :  :  "};
unsigned char line3[16]={"Study LCD1602-)"};
unsigned char line4[16]={"Design by DWJ"};
unsigned char tab[]={'0','1','2','3','4','5','6','7','8','9'};
void delay(unsigned int t)
{
  unsigned int i,j;
  for(i=t;i>0;i--)
   for(j=200;j>0;j--);
   }
void wr_com(unsigned char comm)
{
   LCDE=0;
   RS=0;
   RW=0;
   LCDE=1;
   LCD_data=comm;
   LCDE=0;
   }
void wr_data(unsigned char dat)
{
    LCDE=0;
        RW=0;
        RS=1;
        LCDE=1;
        LCD_data=dat;
        LCDE=0;
        }
unsigned char rd_bf(void)
{
unsigned char bflag;
LCDE=0;
RS=0;
RW=1;
LCDE=1;
bflag=LCD_data&0x80;
LCDE=0;
return(bflag);}
void Init_1602(void)
{
  wr_com(0x38);
  delay(10);
  wr_com(0x01);
  delay(10);
  wr_com(0x06);
  delay(10);
  wr_com(0x38);
  delay(10);
  wr_com(0x0c);
}
void display_1602(void)
{
  unsigned char i;
  wr_com(0x80);
  delay(1);
  for(i=0;i<16;i++)
  {wr_data(line1[i]);
  delay(1);
  while(rd_bf());}
  wr_com(0xc0);
  for(i=0;i<16;i++)
  {wr_data(line2[i]);
  delay(1);
  while(rd_bf());}
  }
  void main()
  {   TMOD=0x01;
      TH0=0x3c;
          TL0=0x0B0;
          EA=1;ET0=1;TR0=0;
        Init_1602();
        while(1)
{ line2[15]=tab[miao%10];line2[14]=tab[miao/10];
   line2[12]=tab[fen%10];line2[11]=tab[fen/10];
   line2[9]=tab[shi%10];line2[8]=tab[shi/10];
   delay(5);
   display_1602();}}
   void t0(void) interrupt 1
   {
        TH0=0x3c;
        TL0=0x0B0;
        m++;
        if(m==20)
        { m=0;
          miao=miao+1;
          if(miao==60){miao=0;fen=fen+1;}
          if(fen==60){fen=0;shi=shi+1;}
          if(shi==24){shi=0;}
          }
          }

QQ截圖20150521201751.png
QQ截圖20150521201758.png
回復

使用道具 舉報

ID:80407 發表于 2015-5-21 22:35 | 顯示全部樓層
同問!
回復

使用道具 舉報

ID:69240 發表于 2015-5-22 10:50 | 顯示全部樓層
我自己是焊了個LCD1602的時鐘,就是不想看代碼,代碼風格不一樣,很腦大的。我把我的LCD1602.c貼出來,宋老師的風格,功能模塊化,好查錯,你對比分析一下吧,這個.c是一定沒問題的。

#include<reg52.h>
#define lcdDB P0
sbit lcdRS = P1^0;
sbit lcdRW = P1^1;
sbit lcdE = P1^5;

void lcdready()     //探忙
{
  unsigned char sta;
        lcdDB = 0xFF;
        lcdRS = 0;
        lcdRW = 1;
        do{
                lcdE = 1;
                sta = lcdDB;
                lcdE = 0;
        }while(sta & 0x80);
}

void lcdwritecmd(unsigned char cmd)      //寫入命令
{
  lcdready();
        lcdRS = 0;
        lcdRW = 0;
        lcdDB = cmd;
        lcdE = 1;
        lcdE = 0;
}

void lcdwritedat(unsigned char dat)      //寫入數據
{
  lcdready();
        lcdRS = 1;
        lcdRW = 0;
        lcdDB = dat;
        lcdE = 1;
        lcdE = 0;
}

void lcdsetaddr(unsigned char x, unsigned char y)      //設置顯示位置
{
  unsigned char addr;
        if(y == 0)
                addr = 0x00 + x;
        else
                addr = 0x40 + x;
        lcdwritecmd(addr | 0x80);
}

void lcdshowstr(unsigned char x, unsigned char y, unsigned char *str)     //顯示內容
{
  lcdsetaddr(x, y);
  while(*str != '\0')
        {
          lcdwritedat(*str++);
        }               
}

/***********************************************************
void lcdareaclear(unsigned char x, unsigned char y, unsigned char len)    //局部清除
{
  lcdsetaddr(x, y);
        while(len--)
        {
          lcdwritedat(' ');
        }
}

void lcdfullclear()     //整屏清除
{
  lcdwritecmd(0x01);
}
**********************************************************************/

void lcdgbss(unsigned char x, unsigned char y, bit gb)     //光標閃爍:1開0關
{
        if(gb == 1)
                lcdwritecmd(0x0F);
        else
                lcdwritecmd(0x0C);
        lcdsetaddr(x, y);
}

void initlcd()        //初始化
{
  lcdwritecmd(0x38);
        lcdwritecmd(0x0C);
        lcdwritecmd(0x06);
        lcdwritecmd(0x01);       
}




評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的積分獎勵!

查看全部評分

回復

使用道具 舉報

ID:76853 發表于 2015-5-24 10:42 | 顯示全部樓層
TR0=0,未進入中斷函數

評分

參與人數 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

ID:80172 發表于 2015-5-24 21:09 | 顯示全部樓層
wanglu071912 發表于 2015-5-24 10:42
TR0=0,未進入中斷函數

對哦 謝謝哈
回復

使用道具 舉報

ID:78515 發表于 2015-5-25 09:38 | 顯示全部樓層
寫數據之前要查看LCD1602忙嗎,你程序沒有的

評分

參與人數 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

ID:138194 發表于 2016-9-29 15:51 | 顯示全部樓層
為什么要探忙,能解釋下嗎
回復

使用道具 舉報

ID:140642 發表于 2016-9-29 16:56 | 顯示全部樓層
對于任何外設訪問都要探忙,但是好像跟你這個顯示的沒關系,你不能把程序模塊化了嗎,寫的很亂,到最后自己都不好改。
回復

使用道具 舉報

ID:19568 發表于 2017-5-6 23:16 | 顯示全部樓層
初始化很重要
回復

使用道具 舉報

ID:197554 發表于 2017-5-6 23:42 來自觸屏版 | 顯示全部樓層
你的延時太多了  不用探忙的
回復

使用道具 舉報

ID:197560 發表于 2017-5-6 23:49 | 顯示全部樓層

TR0=0,未進入中斷函數
回復

使用道具 舉報

ID:196174 發表于 2017-5-7 00:16 | 顯示全部樓層
我寫的程序也是顯示亂碼。。。。。
回復

使用道具 舉報

ID:129350 發表于 2017-5-7 08:28 | 顯示全部樓層
TR0=0,未進入中斷函數
回復

使用道具 舉報

ID:197635 發表于 2017-5-7 11:06 | 顯示全部樓層
你看看你的接口順序對嗎
回復

使用道具 舉報

ID:197635 發表于 2017-5-7 11:06 | 顯示全部樓層
同問求大佬茲磁
回復

使用道具 舉報

ID:111634 發表于 2017-5-7 11:34 | 顯示全部樓層
本帖最后由 zl2168 于 2017-5-7 14:43 編輯

實例91  具有校正功能的時鐘1302(LCD1602顯示)
先Proteus仿真,確認有效。
實例91 帶校正時鐘1302(LCD1602顯示).rar (52.68 KB, 下載次數: 19)
具有校正功能的時鐘1302.jpg
以上摘自張志良編著《80C51單片機仿真設計實例教程——基于Keil C和Proteus》清華大學出版社ISBN 978-7-302-41682-1,書中電路和程序設計有詳細說明,程序語句條條有注解。
仿真電路和Hex文件能在清華出版社網站免費下載,程序源代碼只能到書上看了。到圖書館借,或到新華書店翻閱,或到網上書店打折購買。


回復

使用道具 舉報

ID:197655 發表于 2017-5-7 11:44 | 顯示全部樓層
跪求,感覺好難!
回復

使用道具 舉報

ID:116078 發表于 2017-5-7 12:27 | 顯示全部樓層
其實不用查忙的,延時就行,忙這個條件有點苛刻
回復

使用道具 舉報

ID:116078 發表于 2017-5-7 12:28 | 顯示全部樓層
仿真是不用查忙的,實物中需要。因為仿真中單片機速度沒有1602反應快
回復

使用道具 舉報

ID:116078 發表于 2017-5-7 12:29 | 顯示全部樓層
仿真不用查忙
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产欧美一区二区三区在线播放 | 国产精品永久免费视频 | 亚洲精品视频在线看 | 91精品国产91久久久久久 | 天天综合久久 | 美日韩一区二区 | 免费视频一区二区 | 搞av.com | 国产精品黄视频 | 九九热在线视频观看这里只有精品 | 久久精品无码一区二区三区 | 日韩欧美精品在线 | 国产 日韩 欧美 中文 在线播放 | 天堂va在线观看 | 成年免费在线观看 | 国产精品高清一区二区三区 | 天天看天天爽 | 亚洲精品黄色 | 国产精品久久久久久久久久 | 久久香蕉精品视频 | 精品久久久久久亚洲综合网 | 亚洲电影一区二区三区 | 欧美白人做受xxxx视频 | 91电影| 成人欧美一区二区三区在线播放 | 婷婷免费视频 | 成人水多啪啪片 | 91成人在线视频 | 日韩毛片网 | 99成人免费视频 | 国内自拍第一页 | 国产福利在线 | 亚洲精品一区二 | 国产aⅴ精品| 久久久久国产精品一区二区 | 九九九久久国产免费 | 成人午夜视频在线观看 | 国产成人免费视频网站高清观看视频 | 国产区久久 | 久久久久国产精品免费免费搜索 | 国产一区欧美 |