找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10508|回復: 22
打印 上一主題 下一主題
收起左側(cè)

電子時鐘

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:15310 發(fā)表于 2009-7-15 00:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

//////////////////////////////////
//工程名稱;外部秒基準,電子鐘表//
//單片機型號:AT98S51           //
//時鐘頻率?12M?                 //
//制作時間;2009-7-13            //
//制作者;呂貝貝                 //
//////////////////////////////////////////////////////////////////////////////////////
#include <reg51.h>
char TAB[10]={0X11,0Xbd,0X23,0X25,0X8d,0x45,0x41,0x3d,0x01,0x05};//數(shù)碼管0-9編碼
char disp[4]={0,0,0,0};//四位數(shù)碼管初始化都為零
unsigned char scan;//位數(shù)掃描寄存器
unsigned char s=0;//秒寄存器
unsigned char f=0;//分寄存器
unsigned char h=0;//時寄存器
unsigned char f1=0;//分個位寄存器
unsigned char f2=0;//分十位寄存器
unsigned char h1=0;//時個位寄存器
unsigned char h2=0;//時十位寄存器
sbit fj=P3^7;//分位加1引腳
sbit hj=P3^6;//時位加1引腳
sbit zd=P3^3;//中斷1引腳
void disp1m(int);//定義延時函數(shù)
void ff(unsigned char);//定義分位分裂函數(shù)
void fh(unsigned char);//定義時位分裂函數(shù)
////////////////////////////////////////////////////////////////////////////////////////
main()
{
  IE=0X85;//準許INT0中斷,準許int1中斷
  IP=0x04;//設(shè)定INT1具有最高優(yōu)先級
  TCON=0X05;//INT0設(shè)置負邊緣觸發(fā),int1設(shè)置負邊緣觸發(fā)。
  while(1)
       { 
      char i,j;
      scan=1;
   for(i=3;i>=0;i--)
      {
     j=disp;
      P1=TAB[j];
      P2=scan;
      disp1m(4);
      scan<<=1;
   }
  disp[0]=h2;//顯示時十位
  disp[1]=h1;//顯示時個位
  disp[2]=f2;//顯示分十位
  disp[3]=f1;//顯示分個位
    }
}
//////////////////////////////////////////////////////////////////////////////////////////
void my_int0(void)interrupt 0//外部中斷0,P3.2,秒脈沖輸入短,下降邊緣觸發(fā)
{
 s++;//秒寄存器加1
 if(s==60)//秒數(shù)是否到六十
   {
     s=0;//秒數(shù)清零
  f++;//分數(shù)寄存器加1
  if(f==60)//分是否到60
    {
      f=0;//分數(shù)清零
   h++;//時寄存器加1
   if(h==24)//時是否到24
      {
    h=0;
   }
    }
  
   }
   ff(f);//調(diào)用分位分裂函數(shù)
   fh(h);//調(diào)用時位分裂函數(shù)
   P3=255;
}
///////////////////////////////////////////////////////////////////////////////////////////
void my_int1(void)interrupt 2//外部中斷1,P3.3。時間調(diào)整輸入端下降邊緣觸發(fā)
{
  disp1m(10);//延時消除抖動
  if(zd==0)//再次判斷中斷腳位是否在低電平
    {
      if(hj==0)//判斷是時要修改
   {
        if(h==24){h=0;}else{h++;};//時加1
   }
   else if(fj==0)//判斷是分要修改
   {
        if(f==60){f=0;}else{f++;}//分加1
   }
   else {}//都不是,退出中斷,
   
    }
 P3=255;//P3腳位全部拉高,以便等待下一個中斷

}
//////////////////////////////////////////////////////////////////////////////////////////////
void ff(unsigned char y)//分位分裂函數(shù)
{
 f1=y%10;
 f2=y/10;
}
//--------------------------------------
void fh(unsigned char y)//時位分裂函數(shù)
{
 h1=y%10;
 h2=y/10;
}
////////////////////////////////////////////////////////////////////////////////////////////////
void disp1m(x)//延時函數(shù)
{
   int i,j;
   for(i=0;i<x;i++)
      for (j=1;j<=150;j++);
}

 

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

使用道具 舉報

沙發(fā)
ID:15310 發(fā)表于 2009-7-15 00:59 | 只看該作者
大家看看,小弟的作品還算完美吧?
回復

使用道具 舉報

板凳
ID:3271 發(fā)表于 2009-7-15 10:28 | 只看該作者
你的作品沒看見,只看見一堆英文
回復

使用道具 舉報

地板
ID:15350 發(fā)表于 2009-7-16 09:02 | 只看該作者
等等等等等等等等等等等等等等等等等等等等等等等等等等等等等等的
回復

使用道具 舉報

5#
ID:15310 發(fā)表于 2009-7-17 22:58 | 只看該作者
這位兄臺是沒有看懂吧?這是用C寫的一款電子時鐘程序啊,,,,
回復

使用道具 舉報

6#
ID:15530 發(fā)表于 2009-7-22 11:00 | 只看該作者
等等等等等等等等等等等等等等等等等等等等等等等等等等等等等等的
回復

使用道具 舉報

7#
ID:16225 發(fā)表于 2009-8-13 19:27 | 只看該作者
這么賺金幣?
回復

使用道具 舉報

8#
ID:16230 發(fā)表于 2009-8-13 21:10 | 只看該作者

看一下,缺錢下不來

回復

使用道具 舉報

9#
ID:15906 發(fā)表于 2009-8-21 20:29 | 只看該作者
 什么東西啊
回復

使用道具 舉報

10#
ID:16463 發(fā)表于 2009-8-22 11:22 | 只看該作者
金幣不夠啊
回復

使用道具 舉報

11#
ID:21591 發(fā)表于 2010-2-18 22:13 | 只看該作者

想錢都想瘋了。

回復

使用道具 舉報

12#
ID:17249 發(fā)表于 2010-2-27 21:21 | 只看該作者
怎樣寫入芯片呢?
回復

使用道具 舉報

13#
ID:21402 發(fā)表于 2010-3-27 20:14 | 只看該作者

學習,學習!

回復

使用道具 舉報

14#
ID:23267 發(fā)表于 2010-4-22 09:31 | 只看該作者
zenme 要錢
回復

使用道具 舉報

15#
ID:25075 發(fā)表于 2010-7-15 22:30 | 只看該作者

不行啊  這么貴

回復

使用道具 舉報

16#
ID:26610 發(fā)表于 2012-5-6 21:08 | 只看該作者

看一下,缺錢下不來


回復

使用道具 舉報

17#
ID:39830 發(fā)表于 2012-5-7 12:40 | 只看該作者

我只是來打醬油的

回復

使用道具 舉報

18#
ID:31850 發(fā)表于 2012-5-9 14:26 | 只看該作者
先看看在講
回復

使用道具 舉報

19#
ID:79866 發(fā)表于 2015-6-2 20:56 | 只看該作者
一排8是怎么回事??????
回復

使用道具 舉報

20#
ID:68416 發(fā)表于 2015-10-7 22:24 | 只看該作者
程序?qū)懙牟诲e,學習了
回復

使用道具 舉報

21#
ID:91914 發(fā)表于 2015-10-8 20:36 | 只看該作者
求分享
回復

使用道具 舉報

22#
ID:94340 發(fā)表于 2015-11-1 19:47 | 只看該作者
要是有圖就好了
回復

使用道具 舉報

23#
ID:198642 發(fā)表于 2017-5-9 15:55 | 只看該作者
配上線路圖不更完美
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表