采用實時時鍾芯片DS1302+AT89C2051的紅外遙控LED電子鍾 網友港仔(QQ:19717093 E-mail:gangzi555@sina.com)的作品,發表於電子報2003年第4期上。利用紅外遙控和實時時鍾芯片是這個作品的最大亮點。 采用實時時鍾芯片DS1302+AT89C2051的紅外遙控LED電子鍾 自製LED電dian子zi鍾zhong在zai很hen多duo電dian子zi報bao刊kan雜za誌zhi上shang都dou可ke以yi見jian到dao,但dan大da多duo數shu在zai斷duan電dian後hou都dou要yao重zhong新xin設she置zhi時shi間jian等deng參can數shu,給gei使shi用yong帶dai來lai很hen多duo不bu便bian。也ye有you用yong後hou備bei電dian池chi作zuo為wei備bei用yong電dian源yuan的de,但dan往wang往wang體ti積ji較jiao大da。本ben文wen介jie紹shao的deLED電(dian)子(zi)鍾(zhong)克(ke)服(fu)了(le)以(yi)往(wang)的(de)弊(bi)端(duan),而(er)且(qie)采(cai)用(yong)了(le)家(jia)電(dian)通(tong)用(yong)的(de)紅(hong)外(wai)遙(yao)控(kong)器(qi)進(jin)行(xing)控(kong)製(zhi),方(fang)便(bian)使(shi)用(yong)。有(you)一(yi)路(lu)鬧(nao)鈴(ling)輸(shu)出(chu),可(ke)以(yi)通(tong)過(guo)遙(yao)控(kong)器(qi)設(she)置(zhi)鬧(nao)鈴(ling)時(shi)間(jian)及(ji)允(yun)許(xu)與(yu)否(fou)。 一.工作原理 DS1302weidalasigongsideyizhongshishishizhongxinpian,zhuyaotedianshicaiyongchuanxingshujuchuanshu,keweidiaodianbaohudianyuantigongkebianchengdechongdiangongneng,bingqiekeyiguanbichongdiangongneng。caiyongputong32768Hz晶振。 AT89C2051作為主控芯片,一是對接收到的紅外遙控編碼進行判斷識別,並執行相應的處理;第二就是定期的讀取時鍾芯片DS1302中的時間並把小時和分顯示在4位LED中;第三就是對設置的鬧鈴時間與實時時間進行比較,如果時間相同且鬧鈴允許,那麼蜂鳴器就會以1秒的周期鳴響一分鍾,提醒使用者。如果要停止鳴鬧,隻要按遙控器相應鍵就可以關閉鬧鈴。鬧鈴時間保存在DS1302自帶的RAM中,不需要單獨的EEPROM。 二.硬件電路 圖一為電子鍾的原理圖,IC2為DS1302,電子愛好者可以向MAXIM公司索取免費樣品。Y2為32768 Hz石英晶振,可以用普通電子表裏的。IC3為三腳的塑封一體化紅外接收頭。LED1-4為高亮度共陽數碼管。89C2051所用的晶振Y1如果沒有10MHz也可以用其他12M以內的代替,隻要修改程序中YS1和YS2的延時參數,讓其保持延時長度不變就行。調整R2可以改變數碼管亮度。P1koujieshumaguandebaziduan。shumaguanzuoliangweixianshixiaoshi,youliangweixianshifen,dangxianshideshinaolingshijianshishandong。dierweihedisanweidexiaoshudianzuoweimiaoshandong,zhuyidisanweishumaguanantuyibuhaoyinzhibanhouanzhuangshiyaoxuanzhuan180°,以便讓時和分之間出現“:”,最後一位小數點作為鬧鈴開關標誌,亮表示鬧鈴開啟。蜂鳴器B2采用小型自帶音源的。 要特別說明的是備用電源B1,可以用電池或者超級電容(10萬uF以上)。雖然DS1302在主電源掉電後,耗電很小,但如果要長時間保證時鍾正常,最好選用小型充電電池。可以用老式電腦主板上的那種3.6V充電電池。如果斷電時間較短(幾小時或幾天)時,就可以用漏電較小的普通電解電容代替。100uF就可以保證1小時的正常走時。DS1302在第一次加電後,須進行初始化操作。初始化後就可以按正常方法調整時間及鬧鈴。 三.軟件 表 一 遙控器按鍵 遙控器編碼 電子鍾動作 操作方法 菜單 40 BF 0C F3 進入/退出設置狀態 任意 ↑ 40 BF 19 E6 所顯數字增加 進入設置狀態後有效 ↓ 40 BF 1D E2 所顯數字減少 進入設置狀態後有效 ← 40 BF 46 B9 顯示左移 進入設置狀態後有效 → 40 BF 47 B8 顯示右移 進入設置狀態後有效 顯示 40 BF 16 E9 LED顯示關閉/開啟 任意 靜音 40 BF 10 EF 鬧鈴關閉/開啟 任意 日曆 40 BF 44 BB 初始化DS1302 進入設置狀態後有效 軟件部分的重點是對DS1302的操作以及紅外遙控的解碼。單片機解碼可參看其他文章,這裏主要對設置部分作一些說明: 遙控器采用長虹彩電K11F型遙控器,遙控器按照16位地址碼,8位數據碼以及8位數據碼的反碼發送。表一列出了各按鍵的編碼及本電子鍾對應的動作。如果采用其他遙控器,需對程序相應部分的編碼作修改。 操作方法中,任意是指該鍵第一次按後,進入該狀態,再次按後退出該狀態。 時間設置:按“菜單”鍵進入設置狀態,LED隻顯示正常時間的小時,按“↑↓”鍵調整數值,按“←“、”→”鍵可在鬧鈴與正常時間之間移動。任意時刻再次按“菜單”鍵就退出設置。 鬧鈴設置:鬧鈴時間在時間設置中進行。鬧鈴允許和取消可在任意時刻按“靜音”鍵。 顯示開關:可在任意時刻按“顯示”鍵開啟和關閉顯示器。 初始化:在按“菜單”鍵進入設置狀態後任意時刻按“日曆”鍵,初始化後的時間為2002/12/1/12:00:00
|