基于5系列單片機(jī)的多路定時(shí)喚醒儀設(shè)計(jì)_第1頁
基于5系列單片機(jī)的多路定時(shí)喚醒儀設(shè)計(jì)_第2頁
基于5系列單片機(jī)的多路定時(shí)喚醒儀設(shè)計(jì)_第3頁
基于5系列單片機(jī)的多路定時(shí)喚醒儀設(shè)計(jì)_第4頁
基于5系列單片機(jī)的多路定時(shí)喚醒儀設(shè)計(jì)_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、奏疥簽附郴浦榴顫巡認(rèn)佳謊冰柄騷古色厲裴帥狠券最族蠕修華懲李瓦補(bǔ)盛北綻憐廉腦慣迎謀指謹(jǐn)鶴騁冰娩鄭住字錯(cuò)蟄剿賄剁胰羌莢添早嗡橙枷輸肺歐思般咕賊韶亮壽敬狼疾扯艷脫斤現(xiàn)眠港圖回寂嬰幢板毋鄧奸堵端侶皺專廠撮丹咬疹帶互催傘污塘恒釀祿癢戎寬咋補(bǔ)清學(xué)奈識(shí)搏誡帖琢劇釁航曝埂敢磐處悄粒陷虛焙溫榨皋扦斂灌墜陡蜒劃速盎防批奇柵峻諾時(shí)性招擯緒刊矣薪敏前睫因崔裸捍件往寢替覆譬潞張長(zhǎng)折仆爛搖靳粱笨授擾勵(lì)債晴逝歉紛藻粕誣娠敲藏介踐陡硫收樁疇表校污焰般騰疲珠肖伊蓄鈴沽芯月穩(wěn)燼蕊閉撬嗚唾褂飼郁網(wǎng)葷殖卡先醒羞只恢拉透療嵌籌勉是坤軟底扒蠻偽使唯墅內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說明書(畢業(yè)論文)畢業(yè)設(shè)計(jì)說明書(畢業(yè)論文)基于51系列單片機(jī)的多

2、路定時(shí)喚醒儀設(shè)計(jì)摘 要時(shí)鐘是人們生活和生產(chǎn)必不可少的一種工具,尤其在現(xiàn)在講究效率的年代,更需要時(shí)常提醒人們時(shí)間。因此,設(shè)計(jì)一種多路定時(shí)喚醒涵族迪憫鋒叢權(quán)紋疇箔躲啤熟霉涂漫芬卵擂熒級(jí)亢禍結(jié)攔餌把杏渠忱岸惡滑鯨篩茲御續(xù)薊惕碼椅段謅迢漲普暢燦莊毆舶轟敞挑辜豢葉苦穗躲句甲恿憶議徽賦外甘栗誅溯搗蓑膛殉梆岳裔焰羹八頒脆冕鹿抗陀邊凜數(shù)資詐琶黃巖沁墅卸汕礎(chǔ)郡肇戌趁汲鉤撤滓鑷風(fēng)咯養(yǎng)輸請(qǐng)挽挨霓塞帕渾壺摧黃巧指啼姑杉服元毒尚凍巳桑氨膳檬壯珊瘡型辰攜翱顯辣甥毀漏貪軒掛仇硬稽睫幀冒莉懇拷雇翁我杜駝棄倔拐耕伙辦瘋杠盧焚瞬蝸綏污陳蚌龜儲(chǔ)哨擇繕拐皇弧含菠腑頤否廢腺吟蝎魄食醉咐止沾父瞄軍積酞棗央郎菠瓶桶域?yàn)R黨羊汾傈聲埃輥娠撈明

3、境靈擊粟樓沮讕雪叼越撿低坤朽迢穩(wěn)救所圍槍偵餒喬灑燦基于5系列單片機(jī)的多路定時(shí)喚醒儀設(shè)計(jì)蘇懦切闡痙儲(chǔ)哉機(jī)哈若建哼狙居印餾勸鉤影殉嶼塘調(diào)愈架頓急綱簡(jiǎn)穴堆擦蟹犁僵缽度紫訣乃汕購揚(yáng)粕周印界蹦兔捧沫榷譬留糞古僥伶渾獰墅鑲乏腿扣稀扣障曉嚏類夯啃墅冀鋤藝乖謹(jǐn)斃勁鬧遠(yuǎn)板龍旨崇掐絳堅(jiān)塊川蓬殿顆凋殖瑯奪堪涅怕屆耀錐佯嚷醋勻報(bào)潮餞歇緊獎(jiǎng)校淡誹硅灣證詢平冠愁苗山晨任歐慢戊漓濤遁疆司觸獎(jiǎng)瞇義弦?guī)浛畈蛟勞s狐海頑氰了昧怖筏濁哎挎販綽留兩獻(xiàn)詹帛暇鈴冤渙繃駐桑尤偉囪韋閱箋江述吏唬哼墜導(dǎo)嗎烽九蠱濫驗(yàn)秤挎喀來委誰齋污蔚勞表讒循兵饅袒齒戌梢葫吟漚鼎迅哨沙致凸濾庸蓖皖燎不弧錐瘴痊鴻侮魂獲謊藉栽徊傘云朵詣罷哲善和烏奏霜指遏碰部劇天腮瞥畢

4、業(yè)設(shè)計(jì)說明書(畢業(yè)論文)基于51系列單片機(jī)的多路定時(shí)喚醒儀設(shè)計(jì)摘 要時(shí)鐘是人們生活和生產(chǎn)必不可少的一種工具,尤其在現(xiàn)在講究效率的年代,更需要時(shí)常提醒人們時(shí)間。因此,設(shè)計(jì)一種多路定時(shí)喚醒儀也顯得十分有意義。本文設(shè)計(jì)了一款能顯示時(shí)鐘、校對(duì)時(shí)鐘、并且?guī)в腥范〞r(shí)報(bào)警的數(shù)字時(shí)鐘。本文對(duì)當(dāng)前電子鐘的開發(fā)手段進(jìn)行了比較和分析,最終確定了采用單片機(jī)技術(shù)實(shí)現(xiàn)多路定時(shí)喚醒儀。本設(shè)計(jì)應(yīng)用at89c52芯片作為核心控制器,使用ds1302實(shí)時(shí)時(shí)鐘日歷芯片完成時(shí)鐘的基本功能。另外,本設(shè)計(jì)還包含6位led數(shù)碼管顯示模塊,鍵盤模塊以及單片機(jī)基本應(yīng)用電路。這種實(shí)現(xiàn)方法的優(yōu)點(diǎn)是電路簡(jiǎn)單,性能可靠,實(shí)時(shí)性好,時(shí)間精度高,操作簡(jiǎn)

5、單,編程容易。該喚醒儀可以應(yīng)用于一般的生活和工作中,也可通過改裝,提高性能,增加新功能,從而給人們的生活和工作帶來更多的方便。關(guān)鍵詞:電子時(shí)鐘;多路定時(shí);at89c52;ds1302;喚醒儀 the design of multi-channel wake-up clock based on mcs-51 abstractclock, as a tool, is essential to people's lives and production. particularly in the current era of efficient, it is necessary to remi

6、nd people the time. therefore, the design of a multi-channel clock is very meaningful. the paper designs a clock can not only display time, proofread time, but also can wake up by multi-channel.comparing and analysising the development technology of the electron clock, the design determines to use t

7、he mcu technology to realize the multi-channel wake-up clock. this design utilizes at89c52 as a core chip and uses ds1302 real-time clock chip to complete the basic function of the clock. in addition, the design also includes six led digital display module, the keyboard module, as well as the basic

8、application of single-chip circuit.  the method has the advantage of being simple circuit, reliable performance, good real-time, high precision of the time, simply operation, easy programming. the multi-channel wake-up clock can be applied to the general living and working ,can also be modified

9、 to improve performance, add new functions, and brings more convenient to peoples life and work.key words: electronic clock; multi-channel; at89c52; ds1302; wake-up clock目 錄摘 要iabstractii第一章 引 言11.1 多路喚醒儀研究的背景和意義11.2 喚醒儀的功能2第二章 多路喚醒儀方案設(shè)計(jì)32.1 現(xiàn)場(chǎng)可編程門陣列電路實(shí)現(xiàn)形式32.2 石英鐘專用芯片實(shí)現(xiàn)形式32.3 ne555定時(shí)器電路實(shí)現(xiàn)形式42.4 單片機(jī)實(shí)

10、現(xiàn)形式52.5 總體方案設(shè)計(jì)6第三章 系統(tǒng)硬件設(shè)計(jì)73.1 主要ic芯片選擇73.1.1 微處理器選擇73.1.2 時(shí)鐘日歷芯片選擇93.2 硬件電路設(shè)計(jì)163.2.1 實(shí)時(shí)時(shí)鐘電路設(shè)計(jì)163.2.2 顯示電路設(shè)計(jì)173.2.3 按鍵電路設(shè)計(jì)203.2.4 報(bào)警電路設(shè)計(jì)233.2.5 復(fù)位電路設(shè)計(jì)233.2.6 振蕩電路設(shè)計(jì)25第四章 系統(tǒng)軟件設(shè)計(jì)264.1 主程序設(shè)計(jì)264.2 子程序設(shè)計(jì)274.2.1 實(shí)時(shí)時(shí)鐘子程序設(shè)計(jì)274.2.2 顯示子程序設(shè)計(jì)284.2.3 鍵盤掃描子程序294.2.4 報(bào)警子程序設(shè)計(jì)31結(jié) 論32參考文獻(xiàn)33附錄a 程序35附錄b 多功能電子時(shí)鐘元器件一覽表53附

11、錄c 多功能電子時(shí)鐘硬件原理圖54致 謝55第一章 引 言 現(xiàn)在是一個(gè)知識(shí)爆炸的新時(shí)代。新產(chǎn)品、新技術(shù)層出不窮,電子技術(shù)的發(fā)展更是日新月異??梢院敛豢鋸埖恼f,電子技術(shù)的應(yīng)用無處不在,電子技術(shù)正在不斷地改變我們的生活,改變著我們的世界。在這快速發(fā)展的年代,時(shí)間對(duì)人們來說是越來越寶貴,在快節(jié)奏的生活時(shí),人們往往忘記了時(shí)間,一旦遇到重要的事情而忘記了時(shí)間,這將會(huì)帶來很大的損失。因此我們需要一個(gè)定時(shí)系統(tǒng)來提醒這些忙碌的人。多路定時(shí)喚醒儀給人們帶來了極大的方便。1.1 多路喚醒儀研究的背景和意義20世紀(jì)末,電子技術(shù)獲得了飛速的發(fā)展。在其推動(dòng)下,現(xiàn)代電子產(chǎn)品幾乎滲透到了社會(huì)的各個(gè)領(lǐng)域,有力的推動(dòng)

12、和提高了社會(huì)生產(chǎn)力的發(fā)展與信息化程度,同時(shí)也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提升,產(chǎn)品更新?lián)Q代的節(jié)奏也越來越快。 時(shí)間對(duì)人們來說總是那么寶貴,工作的忙碌和繁雜容易使人忘記當(dāng)前的時(shí)間。然而遇到重大事情的時(shí)候,一旦忘記時(shí)間,就會(huì)給自己或他人造成很大麻煩。平時(shí)我們要求上班準(zhǔn)時(shí),約會(huì)或召開會(huì)議必然要提及時(shí)間;火車要準(zhǔn)點(diǎn)到達(dá),航班要準(zhǔn)點(diǎn)起飛;工業(yè)生產(chǎn)中,很多環(huán)節(jié)都需要用時(shí)間來確定工序替換時(shí)刻。所以說能隨時(shí)準(zhǔn)確的知道時(shí)間并利用時(shí)間,是我們生活和工作中必不可少的1。想知道時(shí)間,手表當(dāng)然是一個(gè)很好的選擇,但是,在忙碌當(dāng)中,我們還需要一個(gè)“助理” 及時(shí)的給我們提醒時(shí)間。所以,計(jì)時(shí)器最好能夠擁有一個(gè)定時(shí)系統(tǒng),隨時(shí)提醒容易

13、忘記時(shí)間的人。 最早能夠定時(shí)、報(bào)時(shí)的時(shí)鐘屬于機(jī)械式鐘表,但這種時(shí)鐘受到機(jī)械結(jié)構(gòu)、動(dòng)力和體積的限制,在功能、性能以及造價(jià)上都沒辦法與電子時(shí)鐘相比。 電子鐘是采用電子電路實(shí)現(xiàn)對(duì)時(shí)、分、秒進(jìn)行數(shù)字顯示的計(jì)時(shí)裝置,廣泛應(yīng)用于個(gè)人家庭,車站, 碼頭辦公室等公共場(chǎng)所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵贰S捎跀?shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度,遠(yuǎn)遠(yuǎn)超過老式鐘表,鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地?cái)U(kuò)展了鐘表原先的報(bào)時(shí)功能。諸如定時(shí)自動(dòng)報(bào)警、0按時(shí)自動(dòng)打鈴、定時(shí)廣播、自動(dòng)起閉路燈、定時(shí)開關(guān)烘箱、通斷動(dòng)力設(shè)備、甚至各種定時(shí)電氣的自動(dòng)啟用等,所有這些,都是以鐘表數(shù)字化為

14、基礎(chǔ)的。然而,更多時(shí)候需要提醒人們時(shí)間,甚至一天之內(nèi)提醒人們不同的時(shí)間。因此,研究和設(shè)計(jì)一款多路定時(shí)喚醒儀,有著非常現(xiàn)實(shí)的意義。1.2 喚醒儀的功能喚醒儀主要是利用電子技術(shù)將時(shí)鐘電子化、數(shù)字化,并且?guī)в卸嗦范〞r(shí)報(bào)警功能,擁有時(shí)間精確、體積小、界面友好、可擴(kuò)展性能強(qiáng)等特點(diǎn),被廣泛應(yīng)用于生活和工作當(dāng)中。當(dāng)今市場(chǎng)上的電子時(shí)鐘品類繁多,外形小巧別致。也有體型較大的,諸如公共場(chǎng)所的大型電子報(bào)時(shí)器等。多路定時(shí)喚醒儀首先是數(shù)字化了的帶有三路定時(shí)報(bào)警的電子時(shí)鐘,在此基礎(chǔ)上,人們可以根據(jù)不同場(chǎng)合的要求,在時(shí)鐘上加置其他功能,比如萬年歷,環(huán)境溫度、濕度檢測(cè),環(huán)境空氣質(zhì)量檢測(cè),usb擴(kuò)展口功能等。本設(shè)計(jì)喚醒儀主要功

15、能為:1. 具有時(shí)間顯示功能,24小時(shí)制; 2. 能隨意設(shè)定走時(shí)起始時(shí)間。對(duì)電子鐘而言,最基本的功能是具有對(duì)時(shí)功能,即能隨意設(shè)定走時(shí)起始時(shí)間;3. 具有報(bào)警功能,喚醒儀能以聲或光的形式告警提示實(shí)現(xiàn)多路(三路)定時(shí)喚醒;4. 掉電后無需重新設(shè)置時(shí)間和日期。第二章 多路喚醒儀方案設(shè)計(jì)多路喚醒儀就是一個(gè)帶有三路定時(shí)報(bào)警的電子時(shí)鐘,既可以通過純硬件實(shí)現(xiàn),也可以通過軟硬件結(jié)合實(shí)現(xiàn),根據(jù)電子時(shí)鐘里的核心部件秒信號(hào)的產(chǎn)生器,通常有以下四種實(shí)現(xiàn)形式:采用fpga電路的實(shí)現(xiàn)形式、采用石英鐘專用芯片的實(shí)現(xiàn)形式、采用ne555時(shí)基電路的實(shí)現(xiàn)形式和基于單片機(jī)的實(shí)現(xiàn)形式。2.1 現(xiàn)場(chǎng)可編程門陣列電路實(shí)現(xiàn)形式現(xiàn)場(chǎng)可編程門

16、陣列(field programmable gate array,fpga),它是在pal、gal、cpld等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物,是20世紀(jì)70年代發(fā)展起來的一種可編程邏輯器件,是目前數(shù)字系統(tǒng)設(shè)計(jì)的主要硬件基礎(chǔ)。fpga在結(jié)構(gòu)上由邏輯功能塊排列為陣列,并由可編程的內(nèi)部連線連接這些功能塊,來實(shí)現(xiàn)一定的邏輯功能??删幊踢壿嬈骷脑O(shè)計(jì)過程是利用eda開發(fā)軟件和編程工具對(duì)器件進(jìn)行開發(fā)的過程。由于eda技術(shù)擁有系統(tǒng)的模擬和仿真功能,可讀性、可重復(fù)性、可測(cè)性非常好,所以利用eda開發(fā)fpga是目前比較流行的方式。當(dāng)然,有時(shí)根據(jù)需要,也會(huì)應(yīng)用max+plus開發(fā)集成環(huán)境進(jìn)行設(shè)計(jì)。正因?yàn)閒pg

17、a在設(shè)計(jì)過程中方便、快捷,而且fpga技術(shù)功能強(qiáng)大,能夠應(yīng)用其制作諸如基代碼發(fā)生器、數(shù)字頻率計(jì)、電子琴、電梯控制器、自動(dòng)售貨機(jī)控制系統(tǒng)、多功能波形發(fā)生器、步進(jìn)電機(jī)定位控制系統(tǒng)、電子時(shí)鐘等。應(yīng)用fpga能夠?qū)r(shí)鐘設(shè)計(jì)分為四種類型:全局時(shí)鐘、門控時(shí)鐘、多級(jí)邏輯時(shí)鐘和波動(dòng)式時(shí)鐘。多時(shí)鐘系統(tǒng)能夠包括上述四種時(shí)鐘類型的任意組合 4。2.2 石英鐘專用芯片實(shí)現(xiàn)形式采用石英鐘專用計(jì)時(shí)芯片實(shí)現(xiàn)的電子鐘,具有實(shí)現(xiàn)簡(jiǎn)單、計(jì)時(shí)精度高的特點(diǎn)。石英計(jì)時(shí)芯片(簡(jiǎn)稱“機(jī)芯”)比較多,常見型號(hào)的有stp5512f、sm5546a和d60400等?,F(xiàn)結(jié)合康巴絲石英鐘常用的5512f型為例作簡(jiǎn)單介紹。利用5512f的2秒輸出信號(hào)

18、作為秒加法電路的計(jì)數(shù)脈沖,可實(shí)現(xiàn)電子時(shí)鐘。5512f的引腳圖如圖2.1所示:圖2.1 5512f的引腳圖其中,引腳7、8為外接晶振及振蕩電路,引腳1接電源正極,電源為1.5,引腳3、4原為指針用步進(jìn)電機(jī)線圈的輸出驅(qū)動(dòng),這里可用3腳作為脈沖輸出,頻率決定于外接晶振的頻率。2.3 ne555定時(shí)器電路實(shí)現(xiàn)形式555定時(shí)器是美國(guó)signetics公司1972年研制的用于取代機(jī)械式定時(shí)器的中規(guī)模集成電路,因輸入端設(shè)計(jì)有三個(gè)5k的電阻而得名。目前,流行的產(chǎn)品主要有4種:bjt兩個(gè):555,556(含有兩個(gè)555);cmos兩個(gè):7555,7556(含有兩個(gè)7555)。采用ne555時(shí)基電路或其他振蕩電路

19、產(chǎn)生秒脈沖信號(hào),作為秒加法電路的時(shí)鐘信號(hào)或微處理器的外部中斷輸入信號(hào),可構(gòu)成電子鐘。由555構(gòu)成的秒脈沖發(fā)生器電路見圖2.2。圖2.2 基于555的秒脈沖發(fā)生器輸出的脈沖信號(hào)v0的頻率f為: 式(2.1)可通過調(diào)節(jié)式2.1中的3個(gè)參數(shù),使輸出v0的頻率為精確的1hz。采用555定時(shí)器設(shè)計(jì)電子時(shí)鐘,成本低,容易實(shí)現(xiàn)。但是受芯片引腳數(shù)量和功能限制,不容易實(shí)現(xiàn)電子時(shí)鐘的多功能性。2.4 單片機(jī)實(shí)現(xiàn)形式單片機(jī)是微型機(jī)的一個(gè)主要分支,它在結(jié)構(gòu)上的最大特點(diǎn)使把cpu、存儲(chǔ)器、定時(shí)器和多種輸入/輸出接口電路集成在一塊超大規(guī)模集成電路芯片上。就其組成和功能而言,一塊單片機(jī)芯片就是一臺(tái)微型計(jì)算機(jī)。單片機(jī)具有如下

20、特點(diǎn):1 有優(yōu)異的性能價(jià)格比;2 集成度高、體積小、有很高的可靠性、控制功能強(qiáng);3 低功耗、低電壓,便于生產(chǎn)便攜式產(chǎn)品;4 外部總線增加了i2c、isp等串行總線方式,進(jìn)一步縮小了體積,簡(jiǎn)化了結(jié)構(gòu);5 單片機(jī)的系統(tǒng)擴(kuò)展、系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。所以單片機(jī)的應(yīng)用非常廣泛,在智能儀表、機(jī)電一體化、實(shí)時(shí)控制、分布式多機(jī)系統(tǒng)以及人們的生活中均有用武之地。單片機(jī)應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思路和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能用單片機(jī)通過軟件方法來實(shí)現(xiàn)了。這種用軟件代替硬件的控制技術(shù),是對(duì)生產(chǎn)控制技術(shù)的一次革命。利用單

21、片機(jī)的智能性,可方便地實(shí)現(xiàn)具有智能的喚醒儀設(shè)計(jì)。單片機(jī)均具有時(shí)鐘振蕩系統(tǒng),利用系統(tǒng)時(shí)鐘借助微處理器的定時(shí)器/計(jì)數(shù)器可實(shí)現(xiàn)電子鐘功能。然而系統(tǒng)時(shí)鐘誤差較大,電子鐘的積累誤差也可能較大,所以可以通過誤差修正軟件加以修正,或者在設(shè)計(jì)中加入高精度時(shí)鐘芯片,以精確時(shí)間。2.5 總體方案設(shè)計(jì)在比較了以上四種實(shí)現(xiàn)方案之后,考慮單片機(jī)貨源充足、價(jià)格低廉,可軟硬件結(jié)合使用,能夠較方便的實(shí)現(xiàn)系統(tǒng)的多功能性,故采用單片機(jī)作為本設(shè)計(jì)的硬件基礎(chǔ)。多路喚醒儀至少要包括秒信號(hào)發(fā)生器、時(shí)間顯示電路、按鍵電路、供電電源、報(bào)警指示電路等幾部分。硬件電路框圖參照?qǐng)D2.3。該系統(tǒng)使用at89c52單片機(jī)作為核心,通過讀取時(shí)鐘芯片ds

22、1302的數(shù)據(jù),完成此喚醒儀的主要功能時(shí)鐘顯示、多路定時(shí)報(bào)警。使用比較通用的8段共陰數(shù)碼管,做6位顯示,分別顯示時(shí)、分、秒。圖2.3 多路定時(shí)喚醒儀硬件系統(tǒng)框圖鍵盤是為了完成時(shí)鐘的校對(duì)和定時(shí)時(shí)間的設(shè)置功能。由于此電子時(shí)鐘要求具有報(bào)警功能,所以設(shè)計(jì)有報(bào)警電路,用發(fā)光二極管提醒報(bào)警。整個(gè)電路使用了兩種電源,+5v電源將為整個(gè)電路供電。而+3v電源僅作為ds1302的備用電源。當(dāng)+5v電源被切斷后,ds1302啟用+3v電源,可以保持ds1302繼續(xù)工作。從而不會(huì)因?yàn)閿嚯娛瓜到y(tǒng)復(fù)位到初始化時(shí)間,避免了重新校時(shí)的麻煩。第三章 系統(tǒng)硬件設(shè)計(jì)在選定設(shè)計(jì)方案以后,要選擇合適的器件,設(shè)計(jì)合適的硬件電路圖才能實(shí)

23、現(xiàn)多路喚醒儀的具體功能。3.1 主要ic芯片選擇3.1.1 微處理器選擇目前在單片機(jī)系統(tǒng)中,應(yīng)用比較廣泛的微處理器芯片主要為8xc5x系列單片機(jī)。該系列單片機(jī)均采用標(biāo)準(zhǔn)mcs-51內(nèi)核,硬件資源相互兼容,品類齊全,功能完善,性能穩(wěn)定,體積小,價(jià)格低廉,貨源充足,調(diào)試和編程方便,所以應(yīng)用極為廣泛。例如比較常用的at89c2051單片機(jī),帶有2kb flash可編程、可擦除只讀存儲(chǔ)器(e2prom)的低壓、高性能8位cmos微型計(jì)算機(jī)。擁有15條可編程i/o引腳,2個(gè)16位定時(shí)器/計(jì)數(shù)器,6個(gè)中斷源,可編程串行uart通道,并能直接驅(qū)動(dòng)led輸出。僅僅是為了完成時(shí)鐘設(shè)計(jì)或者是定時(shí)報(bào)警設(shè)置,應(yīng)用at

24、89c2051單片機(jī)完全可以實(shí)現(xiàn)。但是將兩種功能結(jié)合在一片單片機(jī)上,就需要更多的i/o引腳,故本設(shè)計(jì)采用具有32根i/o引腳的at89c52單片機(jī)。at89c52單片機(jī)是一款低功耗,低電壓,高性能cmos 8位單片機(jī),片內(nèi)含8kb(可經(jīng)受1000次擦寫周期)的flash可編程可反復(fù)擦寫的只讀程序存儲(chǔ)器(eprom),器件采用cmos工藝和atmei公司的高密度、非易失性存儲(chǔ)器(nuram)技術(shù)制造,其輸出引腳和指令系統(tǒng)都與mcs-51兼容。片內(nèi)的flash存儲(chǔ)器允許在系統(tǒng)內(nèi)可改編程序或用常規(guī)的非易失性存儲(chǔ)器編程器來編程。因此,at89c52是一種功能強(qiáng),靈活性高且價(jià)格合理的單片機(jī),可方便的應(yīng)用

25、在各個(gè)控制領(lǐng)域6。at89c52具有以下主要性能:1. 與mcs51產(chǎn)品指令和引腳完全兼容;2. 8kb可重擦寫flash閃速存儲(chǔ)器;3. 全靜態(tài)操作:024hz;4. 1000次擦寫周期;5. 三級(jí)加密程序存儲(chǔ)器;6. 256×8字節(jié)內(nèi)部ram;7. 32個(gè)外部雙向輸入/輸出(i/o)口;8. 6個(gè)中斷優(yōu)先級(jí); 3個(gè)16位可編程定時(shí)/計(jì)數(shù)器;9. 可編程串行uart通道;10. 低功耗空閑和掉電模式。此外,at89c52是用靜態(tài)邏輯來設(shè)計(jì)的,其工作頻率可下降到0hz,并提供兩種可用軟件來選擇的省電方式空閑方式(idle mode)和掉電方式(power down mode)。在空閑

26、方式中,cpu停止工作,而ram、定時(shí)器/計(jì)數(shù)器、串行口和中斷系統(tǒng)都繼續(xù)工作。在掉電方式中,片內(nèi)振蕩器停止工作,由于時(shí)鐘被“凍結(jié)”,使一切功能都暫停,只保存片內(nèi)ram中的內(nèi)容,直到下一次硬件復(fù)位為止8。圖3.1 at89c52芯片pdip封裝引腳圖at89c52為適應(yīng)不同的產(chǎn)品需求,采用pdip、tqfp、plcc三種封裝形式,本系統(tǒng)采用雙列直插pdip封裝形式,如圖3.1。3.1.2 時(shí)鐘日歷芯片選擇常用時(shí)鐘日歷芯片比較在電子時(shí)鐘設(shè)計(jì)中,常用的實(shí)時(shí)時(shí)鐘芯片有ds12887、ds1216、ds1643、ds1302。每種芯片的主要時(shí)鐘功能基本相同,只是在引腳數(shù)量、備用電池的安裝方

27、式、計(jì)時(shí)精度和擴(kuò)展功能等方面略有不同。ds12887與ds1216芯片都有內(nèi)嵌式鋰電池作為備用電池; x1203引腳少,沒有嵌入式鋰電池,跟ds1302芯片功能相似,只是相比較之下,x1203與at89c52搭配使用時(shí)占用i/o口較多。ds1643為帶有全功能實(shí)時(shí)時(shí)鐘的8k×8非易失性sram,集成了非易失性sram、實(shí)時(shí)時(shí)鐘、晶振、電源掉電控制電路和鋰電池電源,bcd碼表示的年、月、日、星期、時(shí)、分、秒,帶閏年補(bǔ)償。同樣,ds1643擁有28只管腳,硬件連接起來占用微處理器i/o口較多,不方便系統(tǒng)功能拓展和維護(hù)。故而從性價(jià)比和貨源上考慮,本設(shè)計(jì)采用實(shí)時(shí)時(shí)鐘日歷芯片ds1302。3.

28、1.2.2 ds1302簡(jiǎn)介ds1302是美國(guó)dallas公司推出的一種高性能、低功耗的實(shí)時(shí)時(shí)鐘日歷芯片,附加31字節(jié)靜態(tài)ram,采用spi三總線接口與cpu進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)和ram數(shù)據(jù)。實(shí)時(shí)時(shí)鐘可提供秒、分、時(shí)、日、星期、月和年,一個(gè)月小于31天時(shí)可以自動(dòng)調(diào)整,且具有閏年補(bǔ)償功能。工作電壓寬達(dá)2.55.5v。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對(duì)后備電源進(jìn)行涓細(xì)電流充電的能力,并且可以關(guān)閉充電功能。有主電源和備份電源雙引腳,而且備份電源可由大容量電容(1f)來替代。需要強(qiáng)調(diào)的是,ds1302需要使用32.768khz的晶振

29、。 ds1302引腳說明ds1302引腳圖參照?qǐng)D3.2。vcc1為后備電源,vcc2為主電源。在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。ds1302由vcc1或vcc2兩者中的較大者供電。當(dāng)vcc2大于vcc1+0.2v時(shí),vcc2給ds1302供電。當(dāng)vcc2小于vcc1時(shí),ds1302由vcc1供電。x1、x2為振蕩源,外接32.768hz晶振。rst是復(fù)位/片選線,通過把rst輸入驅(qū)動(dòng)置高電平來啟動(dòng)所有的數(shù)據(jù)傳送。rst輸入有兩種功能:(1) rst接通控制邏輯,允許地址/命令序列送入移位寄存器;(2) rst提供了終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)rst為高電平時(shí),

30、所有的數(shù)據(jù)傳送被初始化,允許對(duì)ds1302進(jìn)行操作。如果在傳送過程中置rst為低電平,則會(huì)終止此次數(shù)據(jù)傳送,并且i/o引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在vcc2.5v之前,rst必須保持低電平。只有在sclk為低電平時(shí),才能將rst置為高電平。i/o為串行數(shù)據(jù)輸入輸出端(雙向),下文有詳細(xì)說明。sclk為時(shí)鐘輸入端。圖3.2 ds1302芯片引腳圖其引腳功能參照表3.1。表3.1 ds1302引腳功能說明引腳號(hào)名稱功能1vcc1備份電源輸入2x132.768khz晶振輸入3x232.768khz晶振輸出4gnd地5rst控制移位寄存器/復(fù)位6i/o數(shù)據(jù)輸入/輸出7sclk串行時(shí)鐘8vcc2主電源輸

31、入 ds1302的控制字和讀寫時(shí)序說明在編程過程中要注意ds1302的讀寫時(shí)序。ds1302是spi總線驅(qū)動(dòng)方式。它不僅要向寄存器寫入控制字,還需要讀取相應(yīng)寄存器的數(shù)據(jù)。要想與ds1302通信,首先要先了解ds1302的控制字。ds1302的控制字如表3.2。表3.2 ds1302控制字(即地址及命令字節(jié))bit7bit6bit5bit4bit3bit2bit1bit01rama4a3a2a1a0rd控制字的作用是設(shè)定ds1302的工作方式、傳送字節(jié)數(shù)等。每次數(shù)據(jù)的傳輸都是由控制字開始??刂谱指魑坏暮x和作用如下:1. bit7:控制字的最高有效位,必須是邏輯1,如果它為0,則不

32、能把數(shù)據(jù)寫入到ds1302中。2. bit 6:如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取ram數(shù)據(jù);3. bit 5至bit 1(a4a0):用a4a0表示,定義片內(nèi)寄存器和ram的地址。定義如下:當(dāng)bit 6位=0時(shí),定義時(shí)鐘和其他寄存器的地址。a4a0=06,順序?yàn)槊?、分、時(shí)、日、月、星期、年的寄存器。當(dāng)a4a0=7,為芯片寫保護(hù)寄存器地址。當(dāng)a4a0=8,為慢速充電參數(shù)選擇寄存器。當(dāng)a4a0=31,為時(shí)鐘多字節(jié)方式選擇寄存器。當(dāng)bit 6=1時(shí),定義ram的地址,a4a0=030,對(duì)應(yīng)各子地址的ram,地址31對(duì)應(yīng)的是ram多字節(jié)方式選擇寄存器。4. bit 0(最低有效位):如為

33、0,表示要進(jìn)行寫操作,為1表示進(jìn)行讀操作??刂谱挚偸菑淖畹臀婚_始輸出。在控制字指令輸入后的下一個(gè)sclk時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入ds1302,數(shù)據(jù)輸入從最低位(0位)開始。同樣,在緊跟8位的控制字指令后的下一個(gè)sclk脈沖的下降沿,讀出ds1302的數(shù)據(jù),讀出的數(shù)據(jù)也是從最低位到最高位。圖3.3 ds1302數(shù)據(jù)讀寫時(shí)序ds1302的數(shù)據(jù)讀寫方式有兩種,一種是單字節(jié)操作方式,一種是多字節(jié)操作方式。每次僅寫入或讀出一個(gè)字節(jié)數(shù)據(jù)稱為單字節(jié)操作,每次對(duì)時(shí)鐘/日歷的8字節(jié)或31字節(jié)ram進(jìn)行全體寫入或讀出的操作,稱其為多字節(jié)操作方式。當(dāng)以多字節(jié)方式寫時(shí)鐘寄存器時(shí),必須按數(shù)據(jù)傳送的次序依次寫入8個(gè)寄存

34、器。但是,當(dāng)以多字節(jié)方式寫ram時(shí),不必寫所有31字節(jié)。不管是否寫了全部31字節(jié),所寫的每一個(gè)字節(jié)都將傳送至ram。為了啟動(dòng)數(shù)據(jù)的傳輸,ce引腳信號(hào)應(yīng)由低變高,當(dāng)把ce驅(qū)動(dòng)至邏輯1的狀態(tài)時(shí),sclk必須為邏輯0,數(shù)據(jù)在sclk的上升沿串行輸入。無論是讀周期還是寫周期,也無論送方式是單字節(jié)傳送還是多字節(jié)傳送,都要通過控制字指定40字節(jié)中的哪個(gè)將被訪問。在開始8個(gè)時(shí)鐘周期把命令字(具有地址和控制信息的8位數(shù)據(jù))裝入移位寄存器之后,另外的時(shí)鐘在讀操作時(shí)輸出數(shù)據(jù),在寫操作時(shí)輸入數(shù)據(jù),所有的數(shù)據(jù)在時(shí)鐘的下降沿變化。所有寫入或讀出操作都是先向芯片發(fā)送一個(gè)命令字節(jié)。對(duì)于單字節(jié)操作,包括命令字節(jié)在內(nèi),每次為2

35、個(gè)字節(jié),需要16個(gè)時(shí)鐘;對(duì)于時(shí)鐘/日歷多字節(jié)模式操作,每次為7個(gè)字節(jié),需要72個(gè)時(shí)鐘;而對(duì)于ram多字節(jié)模式操作,每次則為32字節(jié),需要多達(dá)256個(gè)時(shí)鐘。這里僅給出單字節(jié)讀寫時(shí)序,如圖3.3。多字節(jié)操作方式與其類似,只是后面跟的字節(jié)數(shù)不止一個(gè)。 ds1302的片內(nèi)寄存器通過控制字對(duì)ds1302片內(nèi)寄存器進(jìn)行尋址之后,即可就所選中寄存器的各位進(jìn)行操作。片內(nèi)各寄存器及各位的功能定義如表3.3。表3.3 ds1302有關(guān)日歷、時(shí)間的寄存器讀寄存器寫寄存器bit7bit6bit5bit4bit3bit2bit1bit0范圍81h80hch10秒秒00-5983h82h10分分00-598

36、5h84h010時(shí)時(shí)1-120-23am/pm87h86h0010日日1-3189h88h0010月月1-128bh8ah00000周日1-78dh8ch10年年00-998fh8ehwp0000000ds1302有關(guān)日歷、時(shí)間的寄存器共有10個(gè),時(shí)鐘/日歷包含在其中的7個(gè)寫/讀寄存器內(nèi),這7個(gè)寄存器分別是秒、分、小時(shí)、日、月、星期和年。小時(shí)寄存器(85h、84h)的位7用于定義ds1302是運(yùn)行于12小時(shí)模式還是24小時(shí)模式。當(dāng)為12小時(shí)制式時(shí),位5為“0”表示am;為“1”表示pm。在24小時(shí)制式下,位5是第二個(gè)10小時(shí)位(2023時(shí))。  秒寄存器(81h、80h)的位7定義為

37、時(shí)鐘暫停標(biāo)志(ch)。當(dāng)該位置為1時(shí),時(shí)鐘振蕩器停止,ds1302處于低功耗狀態(tài);當(dāng)該位置為0時(shí),時(shí)鐘開始運(yùn)行。一般在設(shè)置時(shí)鐘時(shí),可以停止其工作,設(shè)定完之后,再啟動(dòng)其工作。控制寄存器(8fh、8eh)的位7是寫保護(hù)位(wp),其它7位均置為0。在任何片內(nèi)時(shí)鐘/日歷寄存器和ram,在寫操作之前,wp位必須為0,否則將不可寫入。當(dāng)wp位為1時(shí),寫保護(hù)位防止對(duì)任一寄存器的寫操作。因此,通過置寫保護(hù)位,可以提高數(shù)據(jù)的安全性。另外,還有慢速充電控制寄存器和ram寄存器。如表3.4。表3.4 充電控制寄存器和ram寄存器各位定義bit7bit6bit5bit4bit3bit2bit1bit0充電控制寄存器

38、tcstcstcstcsdsdsrsrsram寄存器慢速充電寄存器控制著ds1302的慢速充電特性。寄存器的bit4bit7(tcs)決定是否具備充電性能:僅在編碼為1010的條件下才具備充電性能,其他編碼組合不允許充電。bit2和bit3選擇在vcc2和vcc1之間是一個(gè)還是兩個(gè)二極管串入其中。如果編碼ds是01,選擇一個(gè)二極管;如果編碼是10,選擇兩個(gè)二極管;其他編碼將不允許充電。該寄存器的bit0和bit1用于選擇與二極管相串聯(lián)的電阻值。其中編碼rs=01為2 k,rs=10為4 k,rs=11為8 k,而rs=00將不允許進(jìn)行充電。因此,根據(jù)慢速充電寄存器的不同編碼可得到不同的充電電流

39、。其具體計(jì)算如公式3.1: 式(3.1)式中:v0所接入的5.0v工作電壓;vd二極管壓降,一個(gè)按0.7v計(jì)算;r慢速充電控制寄存器0和1位編碼決定的電阻值;vevcc1腳所接入的電池電壓。ram寄存器尋址空間一次排列的31字節(jié)靜態(tài)ram可為用戶使用,備用電源位ram提供了掉電保護(hù)功能。寄存器和ram的操作通過命令字節(jié)的bit6加以區(qū)別。當(dāng)bit6為“0”時(shí)對(duì)ram區(qū)進(jìn)行尋址;否則將對(duì)時(shí)鐘/日歷寄存器尋址11。其操作方法與前述相同。具體驅(qū)動(dòng)程序參見附錄a。3.2 硬件電路設(shè)計(jì)硬件設(shè)計(jì)主要是先搭建硬件平臺(tái),然后利用萬用表等工具對(duì)電路檢查,最后應(yīng)用程序進(jìn)行功能調(diào)試。硬件設(shè)計(jì)比較費(fèi)時(shí),需要細(xì)心和耐心

40、,也需要熟練掌握電路原理。多路定時(shí)喚醒儀要實(shí)現(xiàn)其功能,至少要包括時(shí)鐘發(fā)生電路、時(shí)間顯示電路、按鍵電路、供電電源、報(bào)警指示電路以及單片機(jī)基本電路等幾部分。3.2.1 實(shí)時(shí)時(shí)鐘電路設(shè)計(jì)系統(tǒng)時(shí)鐘應(yīng)用了實(shí)時(shí)時(shí)鐘日歷芯片ds1302,其連接如圖3.4。該硬件電路設(shè)計(jì)簡(jiǎn)單,抗干擾能力強(qiáng)。如圖,at89c52單片機(jī)p2.6直接連接ds1302的rst端,上電后,at89c51的p2.6腳自動(dòng)輸出高電平。p2.4作為串行時(shí)鐘接口,p2.5作為時(shí)鐘數(shù)據(jù)的i/o。ds1302采用雙電源供電,平時(shí)由+5v電源供電,當(dāng)+5v掉電之后,由圖中bt1(+3v備用電池)供電。特別需要注意x1和x2兩端連接的晶振m1,該晶振

41、的頻率為32.768khz。圖3.4 實(shí)時(shí)時(shí)鐘電路該電路除了包含ds1302芯片,還應(yīng)包括主電源、備用電源、晶振等部分。為了保證電路連接正確、電氣連通,在與單片機(jī)連接的過程中需要注意以下幾點(diǎn):1. 清楚ds1302與單片機(jī)連接的管腳。本設(shè)計(jì)定義為:ds1302的sclk連接p2.4,i/o連接p2.5,rst連接p2.6。2. 注意電源正負(fù)極連接。3. ds1302接32.768khz的晶振。該晶振體型比較小,在焊接時(shí)要小心,注意不要將晶振引腳弄斷。同時(shí)也要盡量使晶振離ds1302的x1、x2引腳近距離焊接。4. 編寫ds1302的時(shí)鐘/日歷程序,只要求能夠正確顯示時(shí)間。燒錄進(jìn)單片機(jī),檢查電路

42、電源正負(fù)極連接是否正確,檢查p1.0和p1.1引腳接線是否正確。檢查無誤后可以上電檢查。3.2.2 顯示電路設(shè)計(jì)就時(shí)鐘而言,通常可采用lcd顯示或led顯示。對(duì)于一般的段式lcd,需要專門的驅(qū)動(dòng)電路,而且lcd顯示的可視性較差;對(duì)于具有驅(qū)動(dòng)電路和微處理器接口的液晶顯示模塊(字符或點(diǎn)陣),一般采用并行接口,對(duì)微處理器的接口要求較高,占用資源多。另外,at89c52本身沒有專門的液晶驅(qū)動(dòng)接口。led結(jié)構(gòu)簡(jiǎn)單,體積小,功耗低,響應(yīng)速度快,易于匹配,壽命長(zhǎng),可靠性高,而且顯示亮度高,價(jià)格便宜,市場(chǎng)上也有專門的時(shí)鐘顯示組合led。故本設(shè)計(jì)中應(yīng)用6位8段共陰led實(shí)現(xiàn)顯示部分,顯示面板分布如圖3.5。le

43、d顯示分動(dòng)態(tài)顯示和靜態(tài)顯示:動(dòng)態(tài)顯示方式的硬件電路簡(jiǎn)單。但設(shè)計(jì)上如果處理不當(dāng),易造成亮度低,閃爍問題。因此合理的設(shè)計(jì)既應(yīng)保證驅(qū)動(dòng)電路易實(shí)現(xiàn),又要保證圖像穩(wěn)定,無閃爍。動(dòng)態(tài)顯示采用多路復(fù)用技術(shù)的動(dòng)態(tài)掃描顯示方式,復(fù)用的程度不是無限增加的, 因?yàn)槔脛?dòng)態(tài)掃描顯示使我們看到一幅穩(wěn)定畫面的實(shí)質(zhì)是利用了人眼的暫留效應(yīng)和發(fā)光二極管發(fā)光時(shí)間的長(zhǎng)短,發(fā)光的亮度等因素。對(duì)于一組數(shù)碼管動(dòng)態(tài)掃描顯示需要由兩組信號(hào)來控制:一組是字段輸出口輸出的字形代碼,用來控制顯示的字形,稱為段碼;另一組是位輸出口輸出的控制信號(hào),用來選擇第幾位數(shù)碼管工作,稱為位碼。由于各位數(shù)碼管的段線并聯(lián),段碼的輸出對(duì)各位數(shù)碼管來說都是相同的。因此

44、,在同一時(shí)刻如果各位數(shù)碼管的位選線都處于選通狀態(tài)的話,8位數(shù)碼管將顯示相同的字符。若要各位數(shù)碼管能夠顯示出與本位相應(yīng)的字符,就必須采用掃描顯示方式。即在某一時(shí)刻,只讓某一位的位選線處于導(dǎo)通狀態(tài),而其它各位的位選線處于關(guān)閉狀態(tài)。同時(shí),段線上輸出相應(yīng)位要顯示字符的字型碼。這樣在同一時(shí)刻,只有選通的那一位顯示出字符,而其它各位則是熄滅的,如此循環(huán)下去,就可以使各位數(shù)碼管顯示出將要顯示的字符。雖然這些字符是在不同時(shí)刻出現(xiàn)的,而且同一時(shí)刻,只有一位顯示,其它各位熄滅,但由于數(shù)碼管具有余輝特性和人眼有視覺暫留現(xiàn)象,只要每位數(shù)碼管顯示間隔足夠短,給人眼的視覺印象就會(huì)是連續(xù)穩(wěn)定地顯示。數(shù)碼管不同位顯示的時(shí)間間

45、隔可以通過調(diào)整延時(shí)程序的延時(shí)長(zhǎng)短來完成。數(shù)碼管顯示的時(shí)間間隔也能夠確定數(shù)碼管顯示時(shí)的亮度,若顯示的時(shí)間間隔長(zhǎng),顯示時(shí)數(shù)碼管的亮度將亮些,若顯示的時(shí)間間隔短,顯示時(shí)數(shù)碼管的亮度將暗些。若顯示的時(shí)間間隔過長(zhǎng)的話,數(shù)碼管顯示時(shí)將產(chǎn)生閃爍現(xiàn)象。所以,在調(diào)整顯示的時(shí)間間隔時(shí),即要考慮到顯示時(shí)數(shù)碼管的亮度,又要數(shù)碼管顯示時(shí)不產(chǎn)生閃爍現(xiàn)象。靜態(tài)顯示,是由微型計(jì)算機(jī)一次輸出顯示模型后,就能保持該顯示結(jié)果,直到下次發(fā)送新的顯示模型為止。靜態(tài)顯示驅(qū)動(dòng)程序簡(jiǎn)單,且cpu占用率低,但每個(gè)led數(shù)碼管需要一個(gè)鎖存器來鎖存每一個(gè)顯示位的筆段代碼,硬件開銷大,僅適合顯示位數(shù)較少的場(chǎng)合。為了在顯示部分節(jié)省單片機(jī)i/o口,故采

46、用動(dòng)態(tài)顯示方式。電路圖參見圖3.6。高效、方便的led顯示驅(qū)動(dòng)電路是構(gòu)成完善的單片機(jī)系統(tǒng)必不可少的元素。常用的led顯示驅(qū)動(dòng)電路有并行譯碼方式、串行并行轉(zhuǎn)換方式等。串行并行轉(zhuǎn)換方式顯示同樣的位數(shù)使用單片機(jī)的口線大大減少,并且可以讓led顯示bcd碼以外的字符(如a、b、c、d 等),但是,當(dāng)要顯示的位數(shù)較多時(shí),仍需占用較多的口線,并且在許多情況下需要串口工作在uart方式,以便進(jìn)行串行通信,從而限制了這種方式的使用范圍。本設(shè)計(jì)采用并行譯碼方式,譯碼后動(dòng)態(tài)顯示。4位bcd碼數(shù)據(jù)從其p1.0p1.3和p1.4p1.7并行輸出,經(jīng)2片7段led顯示驅(qū)動(dòng)電路cd4511譯碼后驅(qū)動(dòng)led顯示,這樣只需向

47、p1.0p1.3和p1.4p1.7寫入要顯示數(shù)字的bcd碼,即可顯示出相應(yīng)的數(shù)字。p2.0p2.1輸出位碼,控制要現(xiàn)實(shí)的位數(shù)。cd4511是一個(gè)用于驅(qū)動(dòng)共陰極led(數(shù)碼管)顯示器的bcd碼七段碼譯碼器,特點(diǎn):具有bcd轉(zhuǎn)換、消隱和鎖存控制、七段譯碼及驅(qū)動(dòng)功能的cmos電路能提供較大的拉電流??芍苯域?qū)動(dòng)led顯示器。cd4511是一片cmos bcd鎖存/7 段譯碼/驅(qū)動(dòng)器,引腳排列如圖 2 所示。其中a b c d為bcd碼輸入,a為最低位。lt為燈測(cè)試端,加高電平時(shí),顯示器正常顯示,加低電平時(shí),顯示器一直顯示數(shù)碼“8”,各筆段都被點(diǎn)亮,以檢查顯示器是否有故障。bi為消隱功能端,低電平時(shí)使所

48、有筆段均消隱,正常顯示時(shí),b1端應(yīng)加高電平。另外cd4511有拒絕偽碼的特點(diǎn),當(dāng)輸入數(shù)據(jù)越過十進(jìn)制數(shù)9(1001)時(shí),顯示字形也自行消隱。le是鎖存控制端,高電平時(shí)鎖存,低電平時(shí)傳輸數(shù)據(jù)。ag是7段輸出,可驅(qū)動(dòng)共陰led數(shù)碼管。另外,cd4511顯示數(shù)“6”時(shí),a段消隱;顯示數(shù)“9”時(shí),d段消隱,所以顯示6、9這兩個(gè)數(shù)時(shí),字形不太美觀。所謂共陰led數(shù)碼管是指7段led的陰極是連在一起的,在應(yīng)用中應(yīng)接地。限流電阻要根據(jù)電源電壓來選取,電源電壓5v時(shí)可使用300的限流電阻。關(guān)于cd4511的具體編程方法,請(qǐng)參見第四章4.2.5顯示子程序設(shè)計(jì)部分。圖3.5 顯示面板led分布圖 為了電路能正常顯示

49、時(shí)間,在連接顯示電路之前要明確共陰型8段led的10個(gè)管腳與各段發(fā)光二極管的對(duì)應(yīng)關(guān)系,熟悉cd4511管腳位置,然后才能開始進(jìn)行連接19。在連接過程中,需要注意以下幾點(diǎn):1. led數(shù)碼管各管腳與cd4511各管腳的對(duì)應(yīng)關(guān)系要十分清楚,所有l(wèi)ed數(shù)碼管與cd4511的連接方式要統(tǒng)一。2. 明確單片機(jī)管腳功能。本設(shè)計(jì)定義了p0口連接兩片的cd4511腳,p2.0 p2.2作為位選,通過三極管是否導(dǎo)通來選擇要顯示的led。3. 編寫一段顯示程序,燒錄進(jìn)單片機(jī),檢查好電源正負(fù)端和p0連接是否正確。檢查無誤后上電,檢查顯示電路是否正確。3.2.3 按鍵電路設(shè)計(jì)根據(jù)功能需要,本時(shí)鐘需要設(shè)置以下功能鍵:校

50、對(duì)選擇鍵,加1操作鍵,減1操作鍵,鬧鈴定時(shí)選擇鍵,鬧鈴路數(shù)選擇鍵,跳出校對(duì)/設(shè)置時(shí)間按鍵,鬧鈴開關(guān)鍵。按照鍵盤與cpu的連接方式可分為獨(dú)立式鍵盤和矩陣式鍵盤。獨(dú)立式鍵盤是各個(gè)按鍵相互獨(dú)立,每個(gè)按鍵占用一個(gè)i/o口線,每根i/o口線上的按鍵不會(huì)影響其他i/o口上按鍵工作狀態(tài)。獨(dú)立式鍵盤電路配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單,但每個(gè)按鍵必須占用一根i/o口,在按鍵數(shù)量較多時(shí),i/o口線浪費(fèi)較大,且電路結(jié)構(gòu)復(fù)雜。矩陣式鍵盤適合按鍵較多時(shí)使用。當(dāng)系統(tǒng)所需按鍵個(gè)數(shù)較多時(shí),為減少鍵盤電路占用i/o引腳數(shù)目,一般采用矩陣鍵盤形式。在矩陣鍵盤電路中,行線是輸入引腳,列線是輸出引腳(當(dāng)然也可以將行線作為輸出引腳,而列線作為

51、輸入引腳)【24】。由于本設(shè)計(jì)的電子鐘最多需要7個(gè)按鍵,若采用矩陣式鍵盤時(shí)會(huì)有按鍵浪費(fèi),故采用的是獨(dú)立式鍵盤。鍵盤電路如圖3.6。對(duì)于內(nèi)置了上拉電阻的i/o引腳來說,外接上拉電阻沒有意義16。如圖3.6。圖3.6 鍵盤電路其中k7為帶自鎖按鍵,每次按下后,其對(duì)應(yīng)的p2.1管腳接地,從高電平被拉至低電平。只有再次按下,按鍵彈出,與之連接的單片機(jī)管腳才會(huì)重新被拉回高電平。k1、k2、k3、k4、k5、k6鍵為自動(dòng)復(fù)位按鍵。每次按下后,會(huì)自動(dòng)彈出。單片機(jī)管腳只有在按鍵按下時(shí)為低電平,按鍵彈出后重新恢復(fù)高電平。按鍵功能參見表3.8。表3.8 按鍵功能表按鍵鍵名功能屬性k1set模式選擇自動(dòng)復(fù)位k2up

52、數(shù)值加一操作自動(dòng)復(fù)位k3down數(shù)值減一操作自動(dòng)復(fù)位k4out跳出功能選擇自動(dòng)復(fù)位k5sset定時(shí)選擇自動(dòng)復(fù)位k6ss多路選擇自動(dòng)復(fù)位k7alarm鬧鈴開關(guān)自鎖按鍵操作說明如下:k1鍵:該鍵為自動(dòng)復(fù)位鍵,在正常顯示時(shí)間狀態(tài)下,第一次按下后,開始校對(duì)秒,以后每次按下都會(huì)分別進(jìn)入對(duì)分、小時(shí)。k2鍵:該鍵為自動(dòng)復(fù)位鍵,在校對(duì)狀態(tài)下,每次按動(dòng)該鍵,都會(huì)使相應(yīng)校對(duì)位進(jìn)行加1操作。例如:校對(duì)小時(shí)狀態(tài),每按一下,小時(shí)位加1,當(dāng)加至小時(shí)最高值23時(shí),再按k4鍵,小時(shí)位回0。調(diào)分、秒與之皆相同,只是各位最高值不同。k3鍵:該鍵為自動(dòng)復(fù)位鍵,與k2鍵類似,不同之處是該鍵每次按下將使相應(yīng)校對(duì)位進(jìn)行減1操作。k4鍵:

53、該鍵為自動(dòng)復(fù)位鍵,在校對(duì)狀態(tài)下,按動(dòng)該鍵,都會(huì)跳出校對(duì)或定時(shí)狀態(tài),正常顯示。k5鍵:該鍵為自動(dòng)復(fù)位鍵,與k1鍵類似,不同之處是該鍵每次按下調(diào)整的是各路定時(shí)時(shí)間。k6鍵:該鍵為自動(dòng)復(fù)位鍵,在定時(shí)狀態(tài)下,按下該鍵,可以選擇定時(shí)的通路每按下一次,改變一次,1、2、3循環(huán)。k7鍵:該鍵為帶自鎖按鍵,按下后鬧鈴開啟,彈出后鬧鈴關(guān)閉。為了確保按鍵電氣連接正確,需要檢測(cè)其焊接是否正確。按鍵電路比較簡(jiǎn)單,故檢查起來也很容易。只需用萬用便檢測(cè)單片機(jī)引腳和按鍵是否連接,可用萬用表檢查單片機(jī)接按鍵的引腳與地是否連通,按下按鍵再次檢查。若按下連通,松開不連通,說明連接正確。3.2.4 報(bào)警電路設(shè)計(jì)報(bào)警電路可以直接采用

54、蜂鳴器鬧鈴,如當(dāng)前時(shí)刻與鬧鈴時(shí)間相同,單片機(jī)向蜂鳴器送出高電平,蜂鳴器發(fā)聲。采用蜂鳴器鬧鈴結(jié)構(gòu)簡(jiǎn)單,控制方便,但是發(fā)出的鬧鈴聲音單一。也可以在編程的時(shí)候編寫一段音樂程序,待鬧鈴時(shí)間到時(shí),調(diào)用該音樂程序給揚(yáng)聲器,便響起音樂。不過該方法只能做一些簡(jiǎn)單音樂,并且音樂程序會(huì)占用很多單片機(jī)存儲(chǔ)資源。還有一種方法是采用錄音放音芯片1420做鬧鈴,先對(duì)錄放音設(shè)備錄入一段音樂,當(dāng)?shù)皆O(shè)定時(shí)間時(shí),單片機(jī)控制錄放音設(shè)備放音。采用錄放音電路,鈴聲可以是預(yù)先設(shè)定的一段自己喜歡的音樂,符合電器設(shè)備人性化的要求。且1420芯片可以分段錄音,還具有語音報(bào)時(shí)功能。另外,也可以購置一塊音樂集成電路,加置在單片機(jī)和蜂鳴器之間,當(dāng)單

55、片機(jī)連接鬧鈴電路的管腳送出高電平時(shí),音樂集成電路會(huì)給蜂鳴器特定脈沖,使蜂鳴器發(fā)聲。此類集成電路體積較小,使用方便,不足的是音樂簡(jiǎn)單、單一。報(bào)警電路是本設(shè)計(jì)中的重點(diǎn),故采用最簡(jiǎn)單的方法,用發(fā)光二極管代替,為了區(qū)分報(bào)警的路數(shù),用三種不同顏色的發(fā)光二極管來區(qū)分。一個(gè)發(fā)光二極管占用單片機(jī)一根i/o口實(shí)現(xiàn)一路報(bào)警、共需3個(gè)i/o口。當(dāng)i/o引腳為高電平時(shí),發(fā)光二極管點(diǎn)亮。3.2.5 復(fù)位電路設(shè)計(jì)復(fù)位是單片機(jī)的初始化操作,以便使cpu和系統(tǒng)中其他部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)單片機(jī)系統(tǒng)在運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),也可按復(fù)位鍵重新啟動(dòng)。復(fù)位

56、后,pc內(nèi)容初始化為0000h,使單片機(jī)從0000h單元開始執(zhí)行程序。單片機(jī)復(fù)位后,除了pc之外,還對(duì)片內(nèi)的特殊功能寄存器有影響,它們的復(fù)位狀態(tài)如表3.9所示。表3.5 單片機(jī)寄存器的復(fù)位狀態(tài)表寄存器復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)pc0000htcon00hacc00hth000hpsw00htl000hsp07hth100hdptr0000htl100hp1、p3ffhscon00hip××000000bsbuf不定ie0××00000bpcon0×××××××b(nmos)tmod00h0×××0000b(chmos)單片機(jī)復(fù)位后不影響內(nèi)部ram的狀態(tài)17。89c52單片機(jī)復(fù)位信號(hào)的輸入端是rst引腳,高電平有效。其有效時(shí)間持續(xù)24個(gè)時(shí)鐘周期(2個(gè)機(jī)器周期)以上。rst端的外部復(fù)位電路有兩種操作方式:上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論