国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

多功能電子時(shí)鐘設(shè)計(jì)

2016-04-28 23:41:41毛瑋英
科技傳播 2016年7期
關(guān)鍵詞:小燈數(shù)碼管按鍵

毛瑋英

摘 要 在忙碌的生活中,我們必須合理的規(guī)劃時(shí)間才能完成繁多雜亂的任務(wù)。這時(shí)如果有一個(gè)小巧方便并且功能多樣化的電子鐘,來在規(guī)定的時(shí)間里提醒主人就再好不過了。本次運(yùn)用單片機(jī)與數(shù)字電路的相關(guān)知識(shí)對(duì)硬件的功能和軟件的編寫流程進(jìn)行詳細(xì)的介紹,來實(shí)現(xiàn)多功能電子時(shí)鐘的設(shè)計(jì)。

關(guān)鍵詞 51系列單片機(jī);DS1302時(shí)鐘芯片;LED顯示屏

中圖分類號(hào) TN99 文獻(xiàn)標(biāo)識(shí)碼 A 文章編號(hào) 1674-6708(2016)160-0146-02

如何才能實(shí)現(xiàn)電子時(shí)鐘的多功能?即保證時(shí)間日期、鬧鐘正常工作的情況下,又添加了溫度測(cè)量、播放音樂以及分別有按鍵校時(shí)和紅外遙控校時(shí)等功能。

1 硬件設(shè)備

1.1 多功能電子時(shí)鐘的原理圖

1.2 單片機(jī)

本次使用的是89c52單片機(jī),在用單片機(jī)完成后續(xù)的功能前,必須要有電源電路,晶振電路,復(fù)位電路。本次電源電路接到5V的電源上。晶振電路采用無源晶振。復(fù)位電路采用手動(dòng)復(fù)位。

1.3 顯示模塊

在原理圖中起到顯示功能的器件有LED點(diǎn)陣、數(shù)碼管、1602液晶,最后還有LED小燈作裝飾。

首先LED小燈即發(fā)光二極管在此設(shè)計(jì)中用來裝飾電子鐘。在鬧鐘定時(shí)到后,8個(gè)LED小燈實(shí)現(xiàn)了流水燈的效果。在選取二極管時(shí)要注意,它的正向?qū)妷菏?.8V~2.2V之間,工作電流一般在1mA~20mA之間。所以當(dāng)電流過大則會(huì)出現(xiàn)燒壞的危險(xiǎn)。

LED數(shù)碼管其實(shí)就是由a、b、c、d、e、f、g、dp這8段即8個(gè)LED小燈組成。它分為共陰極和共陽極兩種。如果是共陽極,則可通過控制陰極的高低電平來實(shí)現(xiàn)對(duì)數(shù)碼管上數(shù)字的顯示。

LED點(diǎn)陣其實(shí)就是多個(gè)LED小燈的組合。本次用的8*8的點(diǎn)陣即為64個(gè)小燈組成。LED點(diǎn)陣顯示屏作為一種現(xiàn)代電子媒體,具有靈活、高亮度、壽命長、數(shù)字化等特點(diǎn)。

1602液晶可以顯示兩行,每行16個(gè)字符。它的工作電壓是4.4V~5.5V,工作電流為20MA。

1.4 數(shù)字邏輯電路74HC138和74HC245

如何利用單片機(jī)的P0端口有條不紊的既控制數(shù)碼管的顯示又控制點(diǎn)陣顯示屏和小燈呢?除了在軟件上的編程外,還需要結(jié)合硬件模塊來實(shí)現(xiàn)。這就用到了74HC138和74HC245。

74HC245起到了雙向電流緩沖器的作用。若LED小燈等直接接在單片機(jī)上,很明顯超出了單片機(jī)所能承受的電流值50mA。所以將它接在數(shù)碼管,LED小燈和單片機(jī)之間。它的作用就是電流緩沖,它自身可以承受8條支路的64mA,并且在其中間起電流緩沖作用,減小了單片機(jī)IO口的輸入電流。

74HC138也稱為38譯碼器。它的主要功能是解決單片機(jī)IO口不夠用的問題。單片機(jī)的IO口總共有32個(gè),但如果都將引腳直接連在IO口上,很明顯僅僅只能用32個(gè)。而74HC138有3個(gè)輸入端,8個(gè)輸出端。每個(gè)輸入端都可能有兩種狀態(tài)0或者是1。通過排列組合的知識(shí)可以看出3個(gè)輸入端不同狀態(tài)的組合后共有八種不同的排列。所以通過3個(gè)輸入端的狀態(tài)的不同,選擇不用的輸出。這樣就從需要8個(gè)IO口減到了3個(gè)。并且,本次設(shè)計(jì)用了兩個(gè)74HC138以此來實(shí)現(xiàn)對(duì)不同顯示器件的控制。

1.5 DS1302時(shí)鐘模塊

DS1302是DALLAS公司推出的一款涓流充電時(shí)鐘芯片,可以提供秒、分、時(shí)、日期、月、年等信息。并且具有軟件自動(dòng)調(diào)整的能力??梢赃x擇12小時(shí)制或24小時(shí)制。DS1302的工作電壓在2.0V~5.5V之間,并且功耗很低,工作在2.0V的時(shí)候,工作電流小于300NA。它有兩個(gè)電源輸入,一個(gè)是主電源另外一個(gè)是備用電源。時(shí)鐘芯片DS1302有3根線,分別是使能線CE、數(shù)據(jù)線I/O、時(shí)鐘線SCLK。

1.6 溫度傳感器DS18B20

DS18B20是美信公司的一款溫度傳感器。單片機(jī)使用1-wire總線協(xié)議和DS18B20進(jìn)行通信,最后將溫度讀出。本次溫度值將通過1602液晶顯示出來。

1.7 紅外校時(shí)和按鍵校時(shí)

按鍵校時(shí)即直接利用按鍵來改變?cè)谝壕系臅r(shí)間日期等信息,但時(shí)鐘掛在墻上后再想進(jìn)行校時(shí),還利用按鍵校時(shí)就太麻煩了。如果可以利用遙控器對(duì)其校時(shí)就再方便不過了。所以,紅外遙控器即通過使用38K載波對(duì)輸入信號(hào)進(jìn)行調(diào)制,并使用NEC紅外通信協(xié)議使得單片機(jī)系統(tǒng)具有遠(yuǎn)距離控制器件的功能。

2 軟件設(shè)計(jì)

上述的硬件按功能可分為顯示模塊、時(shí)鐘模塊、按鍵模塊、紅外模塊、溫度測(cè)試模塊等。編程其實(shí)就是根據(jù)原理圖中的各個(gè)器件的連接來實(shí)現(xiàn)不同功能,將功能在軟件層實(shí)現(xiàn),可簡(jiǎn)化硬件的復(fù)雜度。故本次的程序也是模塊化編程,來實(shí)現(xiàn)各個(gè)功能。

由于全部的程序無法在此顯示,故只介紹程序的整體思路和定時(shí)部分的時(shí)間如何分配。

2.1 程序模塊化流程

從主程序開始,初始各功能模塊。然后判斷是否2s上電延時(shí)是否到,未到則等待,到2s則刷新顯示內(nèi)容。接著進(jìn)入主循環(huán)執(zhí)行按鍵驅(qū)動(dòng)和紅外接收驅(qū)動(dòng),再判斷200ms定時(shí)延時(shí)是否到,未到則執(zhí)行2s定時(shí)判斷。到了則執(zhí)行流水燈和刷新當(dāng)前時(shí)間,以及監(jiān)控鬧鐘。判斷2s定時(shí)是否到,到了則執(zhí)行溫度刷新,未到則返回主循環(huán)。

2.2 定時(shí)器的分配及定時(shí)器的優(yōu)先級(jí)

LED點(diǎn)陣或是數(shù)碼管何時(shí)顯示需要定時(shí)器來定時(shí),按鍵的不斷掃描也需要定時(shí)器定時(shí)掃描,并且紅外遙控器按鍵也需要定時(shí)器定時(shí)。52單片機(jī)除了定時(shí)器0和定時(shí)器1之外,還有一個(gè)定時(shí)器2。按鍵掃描每1mA~2mA掃描一次,用定時(shí)器0來完成。

紅外遙控按鍵通信的數(shù)據(jù)碼第一個(gè)字節(jié)是8組560us的載波加上560us的空閑即用戶碼0x00,第二個(gè)字節(jié)是8組的560us的載波加上1.68ms的空閑即用戶反碼0xff,接下來就是鍵碼和簡(jiǎn)碼反碼也就是通過按鍵輸入的不同的按鍵值。并且在數(shù)據(jù)碼前要加上引導(dǎo)碼9ms的載波加上4.5ms的空閑,在數(shù)據(jù)碼后加上560us的載波停止位。用定時(shí)器1來完成。

按照常理可知紅外按鍵與直接按鍵不會(huì)同時(shí)使用,故可將定時(shí)器0和1設(shè)為同一優(yōu)先級(jí),而將定時(shí)器2設(shè)為高于0和1的優(yōu)先級(jí)。

3 軟件的調(diào)試

先調(diào)試顯示功能程序,若無誤后可繼續(xù)調(diào)試DS1302程序,將其結(jié)果顯示在液晶上可判斷是否有誤,無誤則接著調(diào)試按鍵程序,通過不同的按鍵選擇數(shù)值觀察液晶顯示上是否一致,溫度與紅外程序的調(diào)試可通過手溫和按鍵來測(cè)試。鬧鐘程序即為到時(shí)間后蜂鳴器是否響來測(cè)試。

4 軟件仿真或板子制作

可利用protus軟件進(jìn)行仿真或制作PCB板子后印制等工序,將程序添加到單片機(jī)中來完成功能的實(shí)現(xiàn)。

猜你喜歡
小燈數(shù)碼管按鍵
螢火蟲與月亮的對(duì)話
暈染小燈串
我在看一本書
基于有限狀態(tài)機(jī)的按鍵檢測(cè)程序設(shè)計(jì)
電子制作(2021年3期)2021-06-16 03:14:26
Arduino編程
電腦報(bào)(2019年2期)2019-09-10 07:22:44
MC9S08FL16單片機(jī)數(shù)碼管靜態(tài)顯示分析
單片機(jī)控制的四位數(shù)碼管動(dòng)態(tài)顯示編程
基于Qt的數(shù)碼管數(shù)字編碼系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
一種多方向?qū)Ч獍存I結(jié)構(gòu)設(shè)計(jì)
電子制作(2016年1期)2016-11-07 08:43:05
無線電力小燈的制作
電子制作(2016年23期)2016-05-17 03:53:54
遵化市| 九寨沟县| 鄂托克前旗| 靖边县| 会宁县| 武城县| 新绛县| 临城县| 平果县| 秦皇岛市| 博白县| 久治县| 武宁县| 石嘴山市| 鄂托克前旗| 唐河县| 得荣县| 北碚区| 新源县| 深泽县| 平安县| 景宁| 阿克陶县| 陆川县| 逊克县| 腾冲县| 祁东县| 广元市| 开平市| 漳平市| 大同市| 镇安县| 湖南省| 北宁市| 资兴市| 兴隆县| 潮安县| 元朗区| 马公市| 花莲市| 长宁区|