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

QQ登錄

只需一步,快速開始

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

1602液晶顯示始終(沒(méi)用時(shí)鐘芯片)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:63839 發(fā)表于 2014-8-28 13:25 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include<stc12.h>    //共需要三個(gè)按鍵 一個(gè)是功能選擇鍵(時(shí),分。秒的選擇) 一個(gè)加 一個(gè)減
#define uint unsigned int  //我并沒(méi)用時(shí)鐘芯片 只使用的定時(shí)器中斷
#define uchar unsigned char
uchar code table[]={"0123456789:"};
uchar shi,fen,miao;    // 全局變量
sbit beep1=P3^1;    // 蜂鳴器 按鍵是響
sbit key1=P3^4;     // 功能選擇按鍵
sbit key2=P3^3;     // 時(shí)間加按鍵
sbit key3=P3^2;     //  時(shí)間減按鍵
sbit lcden=P1^2;     // 使能信號(hào)
sbit RW=P1^1;     // 讀/寫選擇端
sbit lcdrs=P1^0;     //  數(shù)據(jù)或者命令選擇端
void delay(uint);    // 延時(shí)函數(shù)
void key();      // 按鍵掃描
void beep();     // 蜂鳴器
void show();     // 顯示函數(shù)
void init_T1();     // 定時(shí)器初始函數(shù)
void init_1602();    // 1602初始函數(shù)
void write_com(uchar com);  //  命令選擇端
void write_data(uchar date); //  數(shù)據(jù)選擇端
void main()      //  主函數(shù)
{
init_1602();
init_T1();
while(1)
{
  key();
  show();
}
}
//##############定時(shí)器1的使用############
void init_T1()
{
TMOD=0x10;
TH1=(65536-45872)/256;
TL1=(65536-45872)%256;
EA=1;
ET1=1;
TR1=1;
}
void ser_50() interrupt 3
{
uchar a;
TH1=(65536-45872)/256;
TL1=(65536-45872)%256;
a++;
if(a>=20)      //用>=比用==好
{miao++;a=0;}
if(miao>=60)
{fen++;miao=0;}
if(fen>=60)
{fen=0;shi++;}
if(shi>=24)
shi=0;
}
//###############顯示時(shí)間##########
void show()
{ uchar shi1,ge1,shi2,ge2,shi3,ge3;
shi1=shi/10;
ge1=shi%10;
shi2=fen/10;
ge2=fen%10;
shi3=miao/10;
ge3=miao%10;
write_com(0x80);
write_data(table[shi1]);
write_data(table[ge1]);
write_data(table[10]);
write_data(table[shi2]);
write_data(table[ge2]);
write_data(table[10]);
write_data(table[shi3]);
write_data(table[ge3]);
}
//###############按鍵掃描###################
void key()
{
uchar num;
if(key1==0)
{
  delay(20);
  if(key1==0)
  {
   num++;
   while(!key1);
   beep();
   if(num==1)
   {
    TR1=0;     //關(guān)定時(shí)器 否則會(huì)無(wú)法調(diào)節(jié)
    write_com(0x80+7);
    write_com(0x0f);
   }
   if(num==2)
   write_com(0x80+4);
   if(num==3)
   write_com(0x80+1);
   if(num==4)
   {
    num=0;
    write_com(0x0c);   //關(guān)光標(biāo)
    TR1=1;
   }
  }
}
if(num!=0)    //只有功能按鍵按下去的時(shí)候才可以調(diào)節(jié)
{
  if(key2==0)      //加時(shí)間
  {
   delay(5);
   if(key2==0)
   {
    while(!key2);
    beep();
    if(num==1)
    {
     miao++;
     if(miao==60)
     miao=0;
     show();
     write_com(0x80+7);
    }
    if(num==2)
    {
     fen++;
     if(fen==60)
     fen=0;
     show();
     write_com(0x80+4);
    }
    if(num==3)
    {
     shi++;
     if(shi==24)
     shi=0;
     show();
     write_com(0x80+1);
    }
   }
  }
  if(key3==0)      //減時(shí)間
  {
   delay(5);
   if(key3==0)
   {
    while(!key3);
    beep();
    if(num==1)
    {
     miao--;
     if(miao==-1)
     miao=59;
     show();
     write_com(0x80+7);
    }
    if(num==2)
    {
     fen--;
     if(fen==-1)
     fen=59;
     show();
     write_com(0x80+4);
    }
    if(num==3)
    {
     shi--;
     if(shi==-1)
     shi=23;
     show();
     write_com(0x80+1);
    }
   }
  }
}
}
//###########################1602部分###############
void write_com(uchar com)//寫命令的狀態(tài)
{
lcdrs=0;//選擇寫命令模式
P0=com; // 將要寫入的命令送到數(shù)據(jù)總線上
delay(5);// 稍作延時(shí)以待數(shù)據(jù)穩(wěn)定
lcden=1; //
delay(5);//
lcden=0; //
}
void write_data(uchar date)//寫數(shù)據(jù)的狀態(tài)
{
lcdrs=1;        // 寫數(shù)據(jù)
P0=date;        // p0使顯示數(shù)據(jù)總線
delay(5);   
lcden=1;     
delay(5);   
lcden=0;      
}
void init_1602()  // 初始化的狀態(tài)
{  RW=0;
   lcden=0;//
   write_com(0x38);  // 設(shè)置16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù)接口
   write_com(0x0c);  // 設(shè)置開顯示,不顯示光標(biāo)
   write_com(0x06);  // 寫一個(gè)字符后地址自動(dòng)加1
   write_com(0x01);  // 清除所有
   write_com(0x80);
}
//蜂鳴器
void beep()
{
beep1=0;
delay(100);
beep1=1;
}
//延時(shí)函數(shù)
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
  for(y=110;y>0;y--);
}

評(píng)分

參與人數(shù) 2威望 +35 黑幣 +30 收起 理由
a110 + 5 + 5 絕世好帖!
admin + 30 + 25 共享資料的積分獎(jiǎng)勵(lì),希望大家多多發(fā)布各種.

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:63839 發(fā)表于 2014-8-28 13:44 | 只看該作者
大家還有什么想要的?看看我有沒(méi)  有的話就放出來(lái)大家交流交流  大家有什么好玩的作品嗎?暑假無(wú)聊想做些東西 LED旋轉(zhuǎn)顯示 貪吃蛇 搖搖棒 光立方小車循跡 之類的就不要了 這些都做過(guò)le
回復(fù)

使用道具 舉報(bào)

板凳
ID:44262 發(fā)表于 2014-8-28 15:38 | 只看該作者

回帖獎(jiǎng)勵(lì) +1

樓主果然是 大牛   用定時(shí)器模擬的時(shí)鐘  樓主有做過(guò)藍(lán)牙小車嗎?
回復(fù)

使用道具 舉報(bào)

地板
ID:44262 發(fā)表于 2014-8-28 15:38 | 只看該作者
很好 回帖還有獎(jiǎng)勵(lì)
回復(fù)

使用道具 舉報(bào)

5#
ID:63839 發(fā)表于 2014-8-28 15:45 | 只看該作者
a110 發(fā)表于 2014-8-28 15:38
樓主果然是 大牛   用定時(shí)器模擬的時(shí)鐘  樓主有做過(guò)藍(lán)牙小車嗎?

還沒(méi)有準(zhǔn)備做呢
回復(fù)

使用道具 舉報(bào)

6#
ID:63839 發(fā)表于 2014-8-28 15:46 | 只看該作者
a110 發(fā)表于 2014-8-28 15:38
很好 回帖還有獎(jiǎng)勵(lì)

給評(píng)點(diǎn)分唄
回復(fù)

使用道具 舉報(bào)

7#
ID:44262 發(fā)表于 2014-8-28 15:58 | 只看該作者
NB沒(méi)B 發(fā)表于 2014-8-28 15:46
給評(píng)點(diǎn)分唄

必須的,我現(xiàn)在準(zhǔn)備做藍(lán)牙小車  還沒(méi)有頭緒啊  

評(píng)分

參與人數(shù) 1黑幣 +5 收起 理由
大胸男 + 5 很給力!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

8#
ID:64270 發(fā)表于 2014-8-28 16:30 | 只看該作者
NB沒(méi)B 發(fā)表于 2014-8-28 13:44
大家還有什么想要的?看看我有沒(méi)  有的話就放出來(lái)大家交流交流  大家有什么好玩的作品嗎?暑假無(wú)聊想做些東 ...

電子密碼鎖,要不要?
回復(fù)

使用道具 舉報(bào)

9#
ID:63839 發(fā)表于 2014-8-28 16:32 | 只看該作者
liuxin198405 發(fā)表于 2014-8-28 16:30
電子密碼鎖,要不要?

這個(gè)可以 我做做看 謝啦
回復(fù)

使用道具 舉報(bào)

10#
ID:64270 發(fā)表于 2014-8-28 16:48 | 只看該作者
不錯(cuò)的程序,易懂
回復(fù)

使用道具 舉報(bào)

11#
ID:64270 發(fā)表于 2014-8-28 17:08 | 只看該作者
NB沒(méi)B 發(fā)表于 2014-8-28 16:32
這個(gè)可以 我做做看 謝啦

要原理圖還是程序?
回復(fù)

使用道具 舉報(bào)

12#
ID:63839 發(fā)表于 2014-8-28 17:09 | 只看該作者
liuxin198405 發(fā)表于 2014-8-28 17:08
要原理圖還是程序?

你有嗎?
回復(fù)

使用道具 舉報(bào)

13#
ID:64270 發(fā)表于 2014-8-28 17:10 | 只看該作者
想要嗎?
回復(fù)

使用道具 舉報(bào)

14#
ID:63839 發(fā)表于 2014-8-28 17:15 | 只看該作者

我也有資料  但是資料多多益善
回復(fù)

使用道具 舉報(bào)

15#
ID:66338 發(fā)表于 2014-9-21 10:00 | 只看該作者
學(xué)習(xí)學(xué)習(xí),謝謝分享。。。
回復(fù)

使用道具 舉報(bào)

16#
ID:65286 發(fā)表于 2014-10-4 20:31 | 只看該作者
謝謝分享
回復(fù)

使用道具 舉報(bào)

17#
ID:57570 發(fā)表于 2014-10-18 21:51 來(lái)自手機(jī) | 只看該作者
給我一個(gè)1602菜單!
回復(fù)

使用道具 舉報(bào)

18#
ID:60989 發(fā)表于 2014-10-19 15:23 | 只看該作者
下下來(lái)看看
回復(fù)

使用道具 舉報(bào)

19#
ID:66787 發(fā)表于 2014-10-24 21:49 | 只看該作者
高手呀高手,我還沒(méi)有資格交流
回復(fù)

使用道具 舉報(bào)

20#
ID:86421 發(fā)表于 2015-11-16 16:27 | 只看該作者
很有創(chuàng)意,學(xué)習(xí)了
回復(fù)

使用道具 舉報(bào)

21#
ID:98898 發(fā)表于 2015-12-9 20:19 | 只看該作者
有電路原理圖嗎  ?
回復(fù)

使用道具 舉報(bào)

22#
ID:99083 發(fā)表于 2015-12-10 07:30 | 只看該作者
樓主也是夠牛啊
回復(fù)

使用道具 舉報(bào)

23#
ID:113764 發(fā)表于 2016-4-16 16:07 | 只看該作者
樓主想要仿真文件
回復(fù)

使用道具 舉報(bào)

24#
ID:113764 發(fā)表于 2016-4-16 16:17 | 只看該作者
簡(jiǎn)介好程序,推薦
回復(fù)

使用道具 舉報(bào)

25#
ID:111350 發(fā)表于 2016-8-8 16:08 | 只看該作者
移植成功,學(xué)習(xí)了,謝謝!
回復(fù)

使用道具 舉報(bào)

26#
ID:136054 發(fā)表于 2016-8-22 14:22 | 只看該作者
鍵盤掃描程序IF語(yǔ)句用的太多,看起來(lái)有點(diǎn)累,有用SWITH做的鍵盤掃描嗎?
回復(fù)

使用道具 舉報(bào)

27#
ID:137385 發(fā)表于 2016-8-23 13:11 | 只看該作者
好東西,能把原理圖一并發(fā)出來(lái),更適合初學(xué)者了
回復(fù)

使用道具 舉報(bào)

28#
ID:138194 發(fā)表于 2016-9-29 16:40 | 只看該作者
1602不用判忙嗎
回復(fù)

使用道具 舉報(bào)

29#
ID:148321 發(fā)表于 2017-2-28 19:57 | 只看該作者

謝謝分享
回復(fù)

使用道具 舉報(bào)

30#
ID:211766 發(fā)表于 2017-6-17 07:55 來(lái)自手機(jī) | 只看該作者
這個(gè)不錯(cuò),謝謝
回復(fù)

使用道具 舉報(bào)

31#
ID:211766 發(fā)表于 2017-6-17 15:39 來(lái)自手機(jī) | 只看該作者
這個(gè)不錯(cuò),謝謝
回復(fù)

使用道具 舉報(bào)

32#
ID:212157 發(fā)表于 2017-6-17 23:33 | 只看該作者
學(xué)習(xí)學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表