張洪怡 王雪飛
【摘要】結合目前我國測控系統發展的需求,我們為其增加了相應的時鐘模塊,該時鐘模塊是基于單片機模式,同時結合PS1288時鐘所具有的特殊模式進行設計制作的,以AT89C51單片機為該時鐘模塊的核心控制體系,以DS12887為時鐘模塊的芯片,設計出了一種低能耗、高精度、高穩定性的時鐘模塊。本文通過對設計過程中涉及到的時鐘模塊系統的硬件和軟件設計和構成進行詳細的描述,以期對以后其他基于單片機設計的時鐘模塊起到補助作用。
【關鍵詞】單片機時鐘模塊DS12887A789C51硬件設計軟件設計
一、基于單片機的時鐘模塊主控制系統
AT89C51單片機也是運用CMOS為核心技術制作而成的八位單片機,以ATMEL公司開發的存儲技術為基礎,設計的具有反復擦寫功能的FLASH只讀存儲器以及RAM隨機數據存儲器。同時兼容MCS-51系統,是低能耗、低成本、高密度、高穩定性的智能單片機系統。
二、基于單片機的時鐘模塊芯片
DS12887內部主要由震蕩電路、14字節時鐘、RMA以及鋰電池等多個部分組成。其中MOT是DS12887系統的模式選擇,當MOT引腳連接到VCC或者GND時,系統會自動選擇MOTOROLA時序或是INTEL時序。SQW是DS12887中的方波信號輸出程序,SQW會在DS12887系統內部選擇相關的抽頭進行信號輸出,通過改變寄存器編程實現輸出頻率的變化。AS是DS12887系統中的地址選通輸入,用于幫助系統實現信號分離功能。CS為DS12887系統中的片選輸入功能,CS必須以低電平才能完成對DS12887系統的總線周期的訪問。
三、基于單片機的時鐘模塊接口設計
本次設計的基于單片機A789C51系統的時鐘模塊是具有24個相關引腳,同時還帶有時間信息液晶顯示屏的智能時鐘模塊,采用的是RT1602C字符及5V電壓型的液晶模塊,通過不同類型的引腳接口,進行低電平基礎上的輸入操作同時在高電平基礎上進行輸出操作。
四、基于單片機的時鐘模塊鬧鈴設計
本時鐘模塊根據單片機AT89C51的電流輸出特點,設計了相應的蜂鳴器鬧鈴功能,使用的是三極管對鬧鈴的蜂鳴器進行驅動。
五、基于單片機的時鐘模塊主程序
該時鐘模塊的主程序包括相關系統的初始化,時鐘模塊的時間顯示功能,設置鬧鐘功能,數據串的獲取以及進行時間調節等主要相關程序。
主要程序如下:向DS12887的系統中任意寫入相關數據:
void write_ ds (uchar add, uchar date)//寫DS12887函數
{
dscs=0;
dsas=1:
dsds=1:
dsrw=1:
PO=add;//先寫地址dsas=0;
dsrw=0;
PO=date;//再寫數據dsrw=1:
dsas=1:
dscs=1:
}
從DS12887系統的寄存器讀取相關子程序,返回一無符號字符型數值:
uchar read_ ds(uchar add)//讀DS12887系統函數{
uchar ds date;
dsas=1:
dsds=1:
dsrw=1:
dscs=0;
PO=add;//先寫地址
dsas=0;
dsds=0;
PO=Oxff;
ds_ date=P0;//再讀數據
dsds=1;
dsas=1;
dscs=1;
return ds date;
}
六、基于單片機的時鐘模塊日歷設置程序
對于以DS12887為核心的時鐘模塊日歷的設置程序,在DS12887系統處于設置狀態的基礎上,需要使用人員首先進行初始化操作,然后將相關的控制命令和實踐信息寫入A和B控制寄存器,同時恢復DS12887系統的數據更新狀態,以完成對時間的矯正和讀取。
參考文獻
[1]陳建平.用AT89C2051實現PS/2矩陣鍵盤的研究.武漢船舶職業技術學院學報.,2008(05)
[2]李志明.一種由單片機實現的智能電力開關控制器.山西電力.,2006(04)
[3]盛蒙蒙,葛亦斌,邱燁,馬棟.基于單片機實現多功能數字鐘的系統設計.硅谷.,2009(20)