在網上下的程序,針對自己的學習板修改了引腳的定義,并實現/增加了以下功能: 1、設置參數其間光標閃爍等待的功能。 網上下的原程序無此功能,設置日期、時間時不知道光標移到哪?當前選中哪個參數,很不方便。 于是我修改了一下設置參數其間光標顯示特性為“顯示+閃爍”,并增加了等待按鍵的語句就實現了。 2、增加了一個按鍵——確認鍵 S4。 原程序只有3個按鍵,每次一進入設置參數模式后,都要進入到設置鬧鐘模式選中字符“@”再按一下加數鍵或減數鍵才能返回到正常顯示模式,這樣至少要按9次S1鍵(未進入設置鬧鐘模式、并且無調整過參數大小的情況),或者11次S1鍵+1次S2/S3鍵(有進入過設置鬧鐘的情況、并且無調整過參數大小的情況)?梢姇吹侥銦 于是我增加了一個按鍵——確認鍵 S4,這樣每次進入設置參數模式后,一按S4鍵就可返回到正常顯示模式。 3、增加了鬧鐘記憶功能。 原程序雖然可以設置鬧鐘,但每當復位、關斷電源后又重新接上電源時原來設置好的鬧鐘時間就掉失了,要重新設置。 于是我增加了鬧鐘記憶功能,把設置好的鬧鐘時間及鬧鐘開/關狀態(tài)保存下來,重新接電后就是斷電前設置的狀態(tài)。 注:使用本程序要注意的地方: 1、引腳定義時,DS1302、LCD1602 接到 AT89S52 的哪個引腳。 2、引腳定義部分并未指明 LCD1602 的8位數據線接到單片機的哪個 I/O 口,使用前記得要改為你自己的接法。 我的學習板接的是P2口,變量P2涉及到以下函數: void write_com(uchar com) //寫入lcd顯示方式 void write_data(uchar date) //向lcd1602寫入數據 主要芯片:AT89S52、DS1302、LCD1602 一、系統(tǒng)功能: 1、 用液晶屏 LCD1602 分兩行顯示“ 年、月、日、周日、時、分、秒 ”,格式如下: 2013-06-28 Fri 15:18:36 2、 還可以設置1個鬧鐘。 3、 日期、時間、鬧鐘均可通過按鍵來調整。 4、 鬧鐘時間及開關狀態(tài)可保存,即關機后再開機會顯示上次關機前鬧鐘的設置 5、 共4個獨立按鍵: S1:功能鍵。用來選擇要更改的項目(年、月、日、周日、時、分、秒、鬧鐘)。 S2:加數鍵。按1下則數值加1。 S3:減數鍵。按1下則數值減1。 S4:確認鍵。在設置參數模式下,一按此鍵程序即返回到正常顯示模式的狀態(tài)。 在設置鬧鐘模式下,屏幕第二行顯示的格式:@ NO 00:00:00
|