找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2997|回復: 2
打印 上一主題 下一主題
收起左側

DS1302模塊(51開發(fā)板上面自帶的時鐘模塊)

[復制鏈接]
跳轉到指定樓層
樓主
ID:272246 發(fā)表于 2018-4-6 12:21 | 只看該作者 |只看大圖 回帖獎勵 |正序瀏覽 |閱讀模式


我想請教一個問題:怎么讓這個實驗程序實現(xiàn),當按鍵K1按下時,把當前時間保存到一個自定義的data1數(shù)組里面????? 而且時間繼續(xù)走。

這是一個完整的實驗用 程序,有想要學習的同學下載去看看。

部分程序如下(有連線圖片):

#include "reg52.h"                         //此文件中定義了單片機的一些特殊功能寄存器
#include "ds1302.h"       

typedef unsigned int u16;          //對數(shù)據(jù)類型進行聲明定義
typedef unsigned char u8;

sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;


char num=0;
u8 DisplayData[8];
u8 code smgduan[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

/*******************************************************************************
* 函 數(shù) 名         : delay
* 函數(shù)功能                   : 延時函數(shù),i=1時,大約延時10us
*******************************************************************************/
void delay(u16 i)
{
        while(i--);       
}


/*******************************************************************************
* 函 數(shù) 名         : datapros()
* 函數(shù)功能                   : 時間讀取處理轉換函數(shù)
* 輸    入         : 無
* 輸    出         : 無
*******************************************************************************/

void datapros()          
{
           Ds1302ReadTime();
        DisplayData[0] = smgduan[TIME[2]/16];                                //時
        DisplayData[1] = smgduan[TIME[2]&0x0f];                                 
        DisplayData[2] = 0x40;
        DisplayData[3] = smgduan[TIME[1]/16];                                //分
        DisplayData[4] = smgduan[TIME[1]&0x0f];       
        DisplayData[5] = 0x40;
        DisplayData[6] = smgduan[TIME[0]/16];                                //秒
        DisplayData[7] = smgduan[TIME[0]&0x0f];
}


/*******************************************************************************
* 函數(shù)名         :DigDisplay()
* 函數(shù)功能                 :數(shù)碼管顯示函數(shù)
* 輸入           : 無
* 輸出                  : 無
*******************************************************************************/
void DigDisplay()
{
        u8 i;
        for(i=0;i<8;i++)
        {
                switch(i)         //位選,選擇點亮的數(shù)碼管,
                {
                        case(0):
                                LSA=0;LSB=0;LSC=0; break;//顯示第0位
                        case(1):
                                LSA=1;LSB=0;LSC=0; break;//顯示第1位
                        case(2):
                                LSA=0;LSB=1;LSC=0; break;//顯示第2位
                        case(3):
                                LSA=1;LSB=1;LSC=0; break;//顯示第3位
                        case(4):
                                LSA=0;LSB=0;LSC=1; break;//顯示第4位
                        case(5):
                                LSA=1;LSB=0;LSC=1; break;//顯示第5位
                        case(6):
                                LSA=0;LSB=1;LSC=1; break;//顯示第6位
                        case(7):
                                LSA=1;LSB=1;LSC=1; break;//顯示第7位       
                }
                P0=DisplayData[i];//發(fā)送數(shù)據(jù)
                delay(100); //間隔一段時間掃描       
                P0=0x00;//消隱
        }               
}

/*******************************************************************************
* 函 數(shù) 名       : main
* 函數(shù)功能                 : 主函數(shù)
* 輸    入       : 無
* 輸    出             : 無
*******************************************************************************/
void main()
{       
        Ds1302Init();
        while(1)
        {
                datapros();         //數(shù)據(jù)處理函數(shù)
                DigDisplay();//數(shù)碼管顯示函數(shù)               
        }               
}


wx_camera_1520845545050.jpg (98.35 KB, 下載次數(shù): 46)

這個就是程序運行顯示

這個就是程序運行顯示

新建文件夾.zip

861.22 KB, 下載次數(shù): 14

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

使用道具 舉報

板凳
ID:111517 發(fā)表于 2018-4-7 20:28 | 只看該作者
那就增加一個按鍵函數(shù)然后在其中加上你當前保存時間的操作不就可以了嗎?你的TIM里面不是當前的時間信息嗎?
回復

使用道具 舉報

沙發(fā)
ID:272246 發(fā)表于 2018-4-7 13:34 | 只看該作者
有沒有大神幫幫我啊。。
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

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