找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 5348|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

DS1302數(shù)碼管電子鐘 含年月日星期溫度 匯編程序

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
單片機(jī)用的是AT89S51 所有IO口全用上了   P1.2作為按鍵減  程序不管怎么修改都不能正常按順序減  我也不改了就這么用了  我做的實(shí)物上把它作為星期顯示用了  然后溫度能顯示四位數(shù)(含零下) 上傳的程序里星期用的是P1.4  
溫度用的是P1.5 P1.6 P1.7 只顯示三位  想要四位就在程序里改吧

設(shè)置順序是 年 月 日 星期 時 分 秒  
設(shè)置時數(shù)碼管的小數(shù)點(diǎn)(兩位數(shù)時只個位數(shù)小數(shù)點(diǎn)亮)點(diǎn)亮以確認(rèn)設(shè)置哪一位  連續(xù)按P1.0退出設(shè)置狀態(tài)并保存數(shù)據(jù)  
在設(shè)置狀態(tài)時按P1.3退出設(shè)置狀態(tài)不保存設(shè)置數(shù)據(jù)   正常走時狀態(tài)按P1.3切換12小時制24小時制  通電默認(rèn)12小時制

初次使用時可以按住P1.0在通電 把預(yù)置好的年月日星期時間寫入到1302內(nèi)   

我用的晶振每小時快1秒左右 24小時快23秒左右  程序里就加入了誤差修正  每小時減一秒 半夜12點(diǎn)不減秒  
上傳的程序里每小時都減一秒 屏蔽了半夜12點(diǎn)不減秒  

源程序網(wǎng)上找的  把LCD1602顯示變成了數(shù)碼管顯示 并加入了四位溫度顯示 經(jīng)過修改后變成現(xiàn)在的樣子   
制作出來的實(shí)物圖如下:


部分單片機(jī)程序
                                                                               RST     BIT      P3.5; 5腳   ;1302串行口數(shù)據(jù)端                                                                                                                                                    SU      BIT      P3.6; 6腳                                                                          
                                                                                CLK     BIT      P3.7; 7腳  
                                                                                MOSHI   BIT      P1.0;    ;模式     退出并保存  
                                                                                JIA     BIT      P1.1;    ;加   
                                                                                JIAN    BIT      P1.2;    ;減       不能正常按順序減                                                                                 
                                                                                ALARM   BIT      P1.3;    鬧鐘設(shè)置  改成退出不保存                                                                                       
                                                                                DQ      BIT      P3.0;   18b20                                                                                 
                                                                        
                                                                            TEMPL       DATA  26H                    
                                                                                TEMPH       DATA  27H        
                                                                                                                                                                                       
                                                                                TEMPHC      DATA  2AH
                                        TEMPLC      DATA  2BH
                                                                                TEMP_ZH     DATA  2CH
;==========================================================================================                                                                                                                                                                                               
                                                                            NIAN    EQU      7FH ; 年                                                                                          
                                                                                YUE     EQU      7DH ; 月                                                                                          
                                                                                DAY     EQU      7CH ; 日  
                                                                                WEEK    EQU      29H ; 周                                                                                    
                                                                                HHH     EQU      7EH ;                                                                                                                                                                  
                                                                                SHI     EQU      7BH ; 時                                                                                          
                                                                                FEN     EQU      7AH ; 分                                                                                          
                                                                                MIAO    EQU      79H ; 秒
                                                                                SHIHC   EQU      74H;                                                                                 
;==========================================================================================                                                                                                                                                                           
;==========================================================================================        
                                                                        AMPMBZ   EQU      2DH;
                                                                                WCS     EQU      2EH;
                                                                                WCF     EQU      2FH;
                                                                                WCM     EQU      30H;

                                                                                SHIA EQU 3AH;
                                                                                SHIB EQU 3BH;
                                                                                FENA EQU 3CH;
                                                                                FENB EQU 3DH;
                                                                                MIAOA EQU 3EH;
                                                                                MIAOB EQU 3FH;
                                                                                GEW     EQU      75H

                                                                                SHIBZ EQU   20H.0
                                                                                FENBZ EQU   20H.1
                                                                                MIAOBZ EQU   20H.2
                                                                                NIANBZ EQU   20H.3;
                                                                                YUEBZ  EQU   20H.4;
                                                                                RIBZ   EQU   20H.5;
                                                                                ZHOUBZ   EQU   20H.6;

                                                                                FLAG    EQU      6EH                          ;溫度標(biāo)志位
                                                                                SETB SHIBZ
                                                                                SETB FENBZ
                                                                                SETB MIAOBZ
                                                                                SETB NIANBZ
                                                                                SETB YUEBZ
                                                                                SETB RIBZ
                                                                                SETB ZHOUBZ
                                                                                SETB AMPMBZ;
                                                                        
;==========================================================================================                                                                                                                                                               
                                                                                DS1302_ADDR   EQU   6DH                                                                                          
                                                                                DS1302_DATA   EQU   6CH                                                                                          
;==================================================================================                                                                                                                                                               
                                    ;    ORG      0000H                                                                                                  
                                                                        ;        LJMP     START                                                                                                   
                                                                        ;        ORG      0030H                                                                                                   
;***************************************************************                                                
;  初始化開機(jī)時間    &&&&&&&     初始化鬧鈴時間                                                                                         
;***************************************************************  
                                START:                                         
                                                                                MOV     HHH,#00H

                                                                                MOV     WCS,#00H;
                                                                                MOV     WCF,#00H;
                                                                                MOV     WCM,#01H;   每小時誤差幾秒改成幾        誤差判斷時到整點(diǎn)秒歸零

                                                        JNB MOSHI,YZ;初次使用時按住MOSHI 把預(yù)置的時間寫入DS1302;
                                                                                LJMP LCDCSH;  
;===============================================================                                                                                                                                                                                                                                                                                       
                   YZ:                              
                                                                                MOV     NIAN,#20H                                                                                                
                                                                                MOV     YUE,#06H                                                                                                
                                                                                MOV     DAY,#01H
                                                        MOV     WEEK,#1H;                                                                     
                                                                                MOV     SHI,#07H
                                                                                MOV     FEN,#59H  
                                                                                MOV     MIAO,#55H   
                                                                                LCALL   WR_DS1302 ;寫1302子程序
                                                                                                                                                                                                                                                                                                                                                                                                                     
;***************************************************************                                                
;  初始化LCD1602    &&&&&&&          初始化DS1302                                                                                         
;***************************************************************                                                                                                                                                                                       
                    LCDCSH:                        
                                                                                lcall   RD_DS1302 ; 讀時間日期
                                                                                LCALL WCCS;     時間誤差初始化                                                                                                                                                                                                                              
;***************************************************************                                                
;                   主函數(shù)(這個大家都懂的)                                                                                         
;***************************************************************     

                                        MAIN:                                                                                                   
                                        lcall   RD_DS1302 ; 讀時間日期   
                                                                                LCALL   WCXZ;     誤差修正                                                                                                     
                                                                                LCALL   SJ_DIP_2;顯示時間動態(tài)數(shù)據(jù); 顯示時間日期                                                                                             
                                                                                lcall   key       ; 時間設(shè)定
                                                                                JNB     ALARM,AMPM; 12小時24小時切換                                                                        
                                                                                LCALL   RE_TEMP   ; 讀溫度                                                                                             
                                                                                LCALL   CONVER    ; 處理溫度  
                                                                                LCALL   DISPBCD    ; BCD 碼溫度值                                                                                          
                                                                                LCALL   DISPLAY_INT ; 顯示溫度                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                        LJMP MAIN      


全部資料51hei下載地址:
DS1302數(shù)碼管電子鐘.rar (68.47 KB, 下載次數(shù): 76)

評分

參與人數(shù) 1黑幣 +80 收起 理由
admin + 80 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:639106 發(fā)表于 2020-6-12 16:46 | 只看該作者
這個怎么沒人頂?我來頂一下,樓主肯分享自己的成果,必須頂一下。
回復(fù)

使用道具 舉報

板凳
ID:102963 發(fā)表于 2020-6-15 08:32 | 只看該作者
看樣子不錯,就是沒電路圖,只有程序,可用性就大打折扣!新手都不知道怎么接電路,程序就沒用了!
回復(fù)

使用道具 舉報

地板
ID:302325 發(fā)表于 2020-6-17 09:01 | 只看該作者
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報

5#
ID:99987 發(fā)表于 2022-5-31 13:00 | 只看該作者
songxia8013 發(fā)表于 2020-6-15 08:32
看樣子不錯,就是沒電路圖,只有程序,可用性就大打折扣!新手都不知道怎么接電路,程序就沒用了!

程序都有了,就能畫出電路圖。
回復(fù)

使用道具 舉報

6#
ID:76044 發(fā)表于 2022-6-2 16:20 | 只看該作者
很遺憾不是用 Keil 寫的,下了沒什么用
回復(fù)

使用道具 舉報

7#
ID:88256 發(fā)表于 2022-6-2 21:49 | 只看該作者
好奇下載看看附件里有什么
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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