摘要
本日晷時鐘選用STC89C52RC芯片作為核心部件來進行控制。此時鐘由三層軌道板,一個日晷面組成,日晷面是標有刻度的時鐘面板,并在面板中心放置一晷針。每層軌道板都安裝有12個LED,通過動態掃描方式來控制LED,從而可以透過日晷面中心晷針的投影來顯示時針、秒針、分針,從而來指示時間。本日晷時鐘不但具有顯示時間的基本功能,還具有時間調整功能,通過軟件與硬件的設計,用三個按鍵來達到對時間進行設置的目的,并配以蜂鳴器提示時鐘處于調整模式。本日晷時鐘不單單是個簡易時鐘,更像是件藝術品,由于用的是三種顏色的LED來指示時分秒,這樣在交疊區就會形成彩色部分。
設計思路
日晷,顧名思義,就是利用太陽光透過晷針在面板上的投影來測量時間。也就是說,只要有標桿,有太陽光,就能形成日晷。因此,日晷可以在任何物體表面上進行設計,只要能滿足上述條件。這樣就形成了許多不同形式的日晷,比如,地平式日晷,赤道式日晷,極地晷,垂直式日晷,投影式日晷,折疊式日晷,等高儀日晷。
像赤道式日晷等為大家所熟知的普通日晷,投影都是一個。要想做到鐘表那種有時針、分針、秒針的話,就需要三個投影,也就是說得需要三個“太陽”。普通日晷的光源是移動的,也就是太陽,東升西落。而本設計中的日晷時鐘要想達到日晷的效果,就得具備三個可移動的光源。由于時針、分針、秒針的長短不一樣,這樣就要求投影的長短有區別。因此,就需要三個高度不一的光源。
方案:將光源固定好,圍繞晷針一圈,采用每個刻度一個光源,這樣一圈就需要12個光源。由于得顯示出時分秒,所以就需要三層類似的光源。這樣每個刻度實際上就有三個光源,也就是三個LED。通過主控電路來控制LED的亮滅。同一時刻每層只有一個LED亮,這樣透過中心的晷針就形成了三個陰影,就能顯示時間了。
LED顯示方案
將每層軌道中所有的LED的正極連在一起,用一根導線引出,然后將三層的導線連接到控制電路。再將三個軌道中處于正對位置的三個LED的負極連接在一起,即上層軌道與下層軌道對應著的LED連接。這樣在底部面板就獲得12個LED的負極引線,再用導線將其連接到主控電路,因此控制這36個LED只需要15條引線,也就是說,用15個I/O口就可以進行控制。這樣,每一層中的12個LED就相當于一個數碼管的“段”,而三層中的每一層就好比是數碼管的“位”。因此,采用數碼管的動態掃描,以及人眼的視覺持續效果,就可以很好的控制LED。
整體設計
本設計主要使用的是STC公司生產的52系列單片機來設計日晷時鐘。硬件電路部分主要有三大塊:主控部分,輸入部分,顯示部分[6]。顯示部分使用的是LED,透過晷針形成的陰影能夠形象的還原出時針、分針和秒針。軟件部分采用動態掃描方式來進行,利用人眼的視覺暫留,實現“同一時刻”只有三個LED點亮。利用這種方式來實現,避免了譯碼器等繁瑣的電路結構,使電路變得更加簡單。
總體電路設計框圖如下:
圖1 總體電路設計框圖
軟件設計
主程序流程圖如下:
圖2 程序流程圖
日晷時鐘系統仿真
用PROTUES根據其設計原理進行的仿真圖如下所示。
圖3 系統仿真
綜合調試
確保軟硬件基本調試完成后,進行最后的綜合調試。系統上電后,觀察投影的位置,對每層軌道分別進行上電測試,對LED的角度進行調整,保證每一層的LED投影長度一樣。整體效果圖如下。
圖4 上電效果
-
單片機
+關注
關注
6032文章
44518瀏覽量
633068 -
STC89C52
+關注
關注
41文章
330瀏覽量
82008
發布評論請先 登錄
相關推薦
評論