毛片大全-91久久久久久久-麻豆影音-91视频免费播放-一本色道久久综合亚洲精品按摩-日本中文在线观看-国产三级影院-国产特级毛片aaaaaa-日韩一卡二卡三卡-夜夜嗨av禁果av粉嫩av懂色av-亚洲精品456-国产日韩成人-日韩性生交大片免费看-日韩欧美有码-老头糟蹋新婚少妇系列小说

用DS12887制作無電源仍可走時(shí)的時(shí)鐘

鉅大鋰電  |  點(diǎn)擊量:0  |  2020年06月16日  

乍一看題目讀者可能會納悶,這是什么奇怪的東西,不用電源還可以工作?其實(shí)筆者只是在這里賣了個(gè)關(guān)子,說的是不用外加電源也可以正常走時(shí),并不是說整個(gè)電路工作時(shí)不要供電。也就是說不使用時(shí)這個(gè)時(shí)鐘不要供電,在你加上電源之后就可以顯示時(shí)間,并且仍然是正確的。就好像有些手機(jī)關(guān)閉之后又取下電板,等你下次開機(jī)的時(shí)候它又能顯示正確的時(shí)間。其實(shí)這些手機(jī)里面都是有后備電池的,就是做時(shí)鐘那一小塊電路有后備電池供著電的。要是后備電池沒有了電,取下電板后問題就來了,這也是為何有些用久了的手機(jī)取下電板再裝上,時(shí)間就不對了的緣故。但是本文說的這個(gè)時(shí)鐘不要外加后備電池,那它是怎么做到這一點(diǎn)的呢?請聽我慢慢道來。


先了解一下主角的基本特性吧。DS12887是Dallas半導(dǎo)體公司推出的實(shí)時(shí)時(shí)鐘芯片,在芯片內(nèi)部集成了石英晶體、鋰離子電池和其他支持電路,在沒有外部供電的情況下,可以正確走時(shí)10年;可以計(jì)數(shù)時(shí)分秒、年月日和星期等信息,而且潤年補(bǔ)償?shù)?100年有效;內(nèi)部的鬧鐘寄存器用來保存鬧鐘時(shí)間,當(dāng)實(shí)時(shí)時(shí)間等于鬧鐘時(shí)間時(shí),在DS12887的IRQ(————)引腳輸出低電平,微控制器可以利用此信號作為鬧鐘信號來處理。筆者用萬用板焊接了電路,實(shí)物圖見如圖1。下面將介紹如何使用DS12887制作這個(gè)時(shí)鐘。


芯片引腳


了解了主角的基本特性,再來看看它的引腳。一個(gè)芯片的引腳可以看作是跟外界交流的通道,了解了引腳的用法就可以了解如何跟單片機(jī)相連。芯片引腳如圖2所示,其中部分引腳命名與官方的數(shù)據(jù)手冊有所不同,原數(shù)據(jù)手冊上使用的是Motorala總線時(shí)序的命名方式,這里為了方便理解,采用Intel總線時(shí)序的命名方式,因?yàn)槲恼滤褂玫?1單片機(jī)即為Intel時(shí)序。這兩種總線時(shí)序最初分別是用在Motorala和Intel兩家公司生產(chǎn)的芯片中,有興趣的朋友可以在DS12887的數(shù)據(jù)手冊上找到更詳細(xì)的信息。引腳MOT為總線方式選擇,DS12887可以有兩種時(shí)序:當(dāng)MOT接VCC時(shí)選擇Motorala總線時(shí)序;當(dāng)MOT接地或懸空時(shí)選擇Intel總線時(shí)序。本文用AT89S52作為控制器,AT89S52作為一種典型的51單片機(jī),理所當(dāng)然使用的是Intel總線時(shí)序。


AD0~AD7是地址、數(shù)據(jù)復(fù)用線,跟標(biāo)準(zhǔn)的51單片機(jī)的p0口類似,在一個(gè)讀寫周期里的前后兩個(gè)時(shí)間段分別是作為地址線或數(shù)據(jù)線。可以直接連接到AT89S52的p0口。


ALE為地址鎖存信號,因?yàn)镈S12887數(shù)據(jù)地址線采用分時(shí)復(fù)用的形式,所以要ALE作地址鎖存信號。在一個(gè)讀寫周期里AD0~AD7引腳上首先出現(xiàn)的信號表示地址,通過ALE的下降沿將該信號鎖存到DS12887的地址寄存器,稍后AD0~AD7引腳上出現(xiàn)的信號則表示寫入或讀出DS12887的數(shù)據(jù)。ALE可以直接連接至AT89S52的ALE引腳。


RD(———)WR(———)是讀寫控制信號引腳,分別連接AT89S52的RD(———)(p3.7)、WR(———)(p3.6)引腳。CS(——)為片選信號,為低電平時(shí)選中芯片,可以跟AT89S52的p2.7腳相連,這樣就可以形成DS12887的讀寫基地址:0x0000。


IRQ(————)引腳為中斷輸出信號,當(dāng)DS12887出現(xiàn)中斷時(shí),在IRQ(————)引腳輸出有效低電平,該引腳為漏極開路輸出,在外部要加上拉電阻。復(fù)位功能在本設(shè)計(jì)中不使用,RST(————)可以直接接高電平。


片內(nèi)資源


看完了外面,進(jìn)到里面看看。DS12887內(nèi)部有10字節(jié)的時(shí)鐘(時(shí)、分、秒)、鬧鐘(時(shí)、分、秒)和日歷(年、月、日、星期)寄存器和4個(gè)控制寄存器以及114字節(jié)的通用RAM。地址分配如附表所示。在本文的設(shè)計(jì)中只使用了前面14字節(jié)的時(shí)鐘、鬧鐘、日歷和控制寄存器,其余的114字節(jié)的RAM并未使用。采用了圖3所示的電路圖后,片內(nèi)的14字節(jié)的地址分配就是從0x0000~0x000D,在程序中可以像訪問外部RAM相同方便地讀取和寫入數(shù)據(jù)至這些地址。0x0000~0x0009是時(shí)鐘、鬧鐘和日歷寄存器,保留了時(shí)間信息等相關(guān)內(nèi)容,單片機(jī)可以通過讀取這些內(nèi)容將時(shí)間信息顯示出來。寄存器A的BIT6~BIT5控制DS12887內(nèi)部晶體振蕩器的關(guān)斷。寄存器B控制各種中斷的使能,在本文中要將鬧鐘使能位(BIT5)打開,BIT2決定輸出的時(shí)鐘數(shù)據(jù)是十六進(jìn)制或是BCD碼,BIT1決按時(shí)間采用的格式:24小時(shí)或12小時(shí)制。寄存器C保存了中斷標(biāo)志位,若在使用多種中斷的情況下,微控制器可以通過讀取該寄存器辨別是出現(xiàn)了何種中斷,從而進(jìn)入相應(yīng)的處理程序。而在本設(shè)計(jì)中,只使用了鬧鐘中斷,當(dāng)在/IRQ引腳輸出低電平時(shí),就可以判斷出現(xiàn)了鬧鐘時(shí)間到的中斷。但是仍要通過讀取該寄存器以清楚中斷標(biāo)志,以免程序重復(fù)處理。寄存器D是與器件是否有效相關(guān)的寄存器,本電路無需處理該寄存器。


硬件電路


電路使用4位一體共陰極數(shù)碼管顯示時(shí)鐘、鬧鐘和日歷信息,數(shù)碼管采用CD4511作硬件譯碼,74LS06作動態(tài)選擇和驅(qū)動電路。電路圖如圖3所示。CD4511是一種用于數(shù)碼管顯示的譯碼芯片,在芯片輸入引腳(D~A)輸入4位二進(jìn)制數(shù)值,在輸出端(a~g)則譯碼輸出共陰極數(shù)碼管所要顯示的數(shù)值,例如在CD4511的D~A這4個(gè)引腳輸入0101(十進(jìn)制的5,D為最高有效位數(shù)據(jù)),則在輸出端的a~g輸出1011011。而且CD4511有個(gè)很有用的消隱功能,即當(dāng)輸入端D~A的值大于9時(shí),輸出端a~g呈現(xiàn)高阻態(tài),從而在數(shù)碼管表現(xiàn)為7段燈都會滅掉。


74LS06包含6個(gè)非門電路,本文只要其中4路即可。在輸入端置1,對應(yīng)的輸出端則為0,則選中其中一個(gè)數(shù)碼管。比如在AT89S52的p1.4輸入1,則74LS06的4A引腳為1,在其對應(yīng)的輸出腳4Y輸出就為0,從而選中與s1相連的DS1數(shù)碼管。在焊接電路板時(shí),可以將CD4511和74LS06這兩個(gè)芯片放在數(shù)碼管下方,這樣整個(gè)電路板就會小巧一些。因?yàn)閿?shù)碼管只有4位,而且必須用其中的兩位顯示一項(xiàng)時(shí)間信息,所以每次只可以顯示兩項(xiàng)時(shí)間信息,例如DS1、DS2分別顯示月份的十位、個(gè)位,DS3、DS4分別顯示日期的十位、個(gè)位。但要顯示的時(shí)間信息要多得多,所以采用分時(shí)復(fù)用的方法輪流顯示時(shí)和分、月和日、年和星期,在時(shí)間分配上筆者使用了下述方法:在每一分鐘中,0~9s、20~39s、50~59s的時(shí)間里顯示時(shí)鐘的時(shí)和分,在10~19s內(nèi)顯示月和日,在40~49s內(nèi)顯示年和星期,而時(shí)鐘的秒數(shù)則不作顯示處理。因?yàn)樾瞧诘淖畲髷?shù)值為7(表示星期天),可以只在個(gè)位顯示,星期分配的十位可以作消隱處理。設(shè)定的鬧鐘信息不是要經(jīng)常查看的,所以不做上述的分時(shí)顯示,而是通過按下KEY4鍵查看。電路圖中的4個(gè)按鍵功能分配如下,KEY1:數(shù)值加1鍵;KEY2:數(shù)值減1鍵;KEY3:調(diào)節(jié)項(xiàng)目選擇,當(dāng)該鍵按下可以選擇不同的調(diào)節(jié)項(xiàng)目,依次為時(shí)鐘的時(shí)、時(shí)鐘的分、月份、日期、年、星期、鬧鐘的時(shí)和鬧鐘的分。KEY4:選擇顯示時(shí)間(包括時(shí)、分、月、日、年和星期)或鬧鐘。紅色的LED閃亮表示數(shù)碼管當(dāng)前顯示的是鬧鐘的時(shí)和分,綠色的LED閃亮表示當(dāng)前顯示的是時(shí)鐘的時(shí)和分;而紅色的LED閃亮和蜂鳴器發(fā)出聲音,則表示鬧鐘所定格的時(shí)間到來,發(fā)出警報(bào)提醒;當(dāng)兩個(gè)LED都不閃亮?xí)r表示顯示的為日歷信息,即月、日、年和星期,可以通過DS3是否顯示數(shù)據(jù)區(qū)分出顯示的是月、日還是年、星期。


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


筆者使用的編譯環(huán)境為Keil編譯軟件,采用C51編程語言。整個(gè)程序由幾個(gè)模塊構(gòu)成,文件mmi.c中包括一些人機(jī)交互處理的函數(shù),比如讀取按鍵、在數(shù)碼管上顯示時(shí)間信息、LED和蜂鳴器的發(fā)聲處理等;文件ds12887.c中包括讀寫和初始化DS12887的函數(shù);文件my52.c中包含延時(shí)函數(shù);在文件main.c中則調(diào)用這些模塊中的函數(shù)進(jìn)行綜合處理,主函數(shù)的程序流程圖如圖4所示。各個(gè)xxx.h文件中則是相應(yīng)的xxx.c文件中的函數(shù)聲明、全局變量聲明等


相關(guān)產(chǎn)品

主站蜘蛛池模板: 少妇做爰免费理伦电影 | 国产精品porn | 隔壁邻居是巨爆乳寡妇 | 国产手机在线播放 | 欧美性视频播放 | 美日韩一二三区 | 男女久久久 | 噜噜啪啪 | 欧美精品五区 | 日本在线观看 | 免费av电影网站 | 亚洲天堂国产精品 | 亚洲天堂视频在线 | 校园sm主奴调教1v1罚视频 | 久久九九视频 | 色综合视频| 免费看av毛片 | v8888av| 屁屁影院一区二区三区 | 日韩不卡高清 | 香蕉av在线播放 | 牛牛av| 免费网站污| 91porn在线| 国产乱仑| 少妇又色又爽 | 久久这里都是精品 | 国产精品日韩一区二区三区 | 国产一区二区三区免费看 | 青青草手机在线视频 | 欧美激情3p | 亚洲影院av | 国产三级做爰高清在线 | 精品国产一区二区三区四 | 国产一区二区精品久久 | 日韩网站在线 | 不卡av免费| 日韩性生活视频 | 久久这里都是精品 | 黑人一区 | 九九热国产 | 在线观看h视频 | 99re这里 | 超碰97国产精品人人cao | 国产日韩视频在线 | www.操 | 婷婷日韩 | 国产精品亚洲欧美 | 日韩欧美福利 | 国产成人精品无码片区在线 | 一级淫片免费看 | 性爱视频在线免费 | 自拍偷拍在线视频 | 在线免费视频 | 欧洲一级视频 | 快射视频网站 | 久久99久久99精品免观看软件 | 性感美女一区二区三区 | 午夜综合网 | 久久新 | 岛国一区二区三区 | 欧美视频成人 | 日韩三级一区二区三区 | 1000亚洲裸体人体 | 麻豆videos| 91成人精品 | 女人又爽又黄免费女仆 | 大又大粗又爽又黄少妇毛片 | 免费看的黄色 | 免费av网站大全 | 桃色视频网 | 国产又黄又爽视频 | 欧日韩在线视频 | 久久久久久久极品 | 淫综合网 | 男人的天堂影院 | 伊人色网 | 内射后入在线观看一区 | 欧美综合日韩 | 黄色特级毛片 | 日本不卡二区 | 高清在线一区二区 | 97人妻精品一区二区三区免费 | 日本免费专区 | 夜夜干夜夜| 人人爽人人爽人人片 | 日韩精品999 | 亚洲免费一级片 | 国产色影院 | 中文字幕在线视频免费 | 黑白配在线观看免费观看 | www.男人天堂 | 91成人在线看 | 九九精品在线视频 | 欧美美女性生活视频 | 在线中文av | 欧美日韩一区二区在线视频 | 免费在线黄色片 | 91久久久精品|