freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[工學(xué)]單片機(jī)課程設(shè)計_電子萬年歷(已修改)

2025-01-28 06:23 本頁面
 

【正文】 本科課程設(shè)計課程名稱: 單片機(jī)原理與接口技術(shù) 課設(shè)項目: 電子萬年歷課程設(shè)計 課設(shè)地點: 專業(yè)班級: 學(xué)號 學(xué)生姓名: 同組人: 指導(dǎo)教師: 2012年 05月30 日設(shè)計題目:電子萬年歷設(shè)計任務(wù)與要求:顯示年月日時分秒及星期信息具有可調(diào)整日期和時間功能增加閏年計算功能增加了顯示溫度的模塊設(shè)計方案:由于我是在網(wǎng)上購買的現(xiàn)成的開發(fā)板來學(xué)習(xí)和使用的,故在方案的選擇上也只能限于開發(fā)板設(shè)計好的電路和芯片.系統(tǒng)分為主控模塊、時鐘電路模塊、溫度檢測模塊,按鍵掃描模塊,LCD顯示模塊,電源電路、復(fù)位電路、晶振電路等模塊。主控模塊采用AT89C52單片機(jī),按鍵模塊用四個按鍵,用于調(diào)整時間,顯示模塊采用LCD1602,時鐘電路模塊采用DS1302時鐘芯片實現(xiàn)對時間、日期的操作,溫度模塊使用18B20實現(xiàn)度溫度的操作。 STC89C52,ATMEL的51系列單片機(jī),價格便宜,在國內(nèi)使用者非常多。支持串口下載,使用非常方便,且具有很大的價格優(yōu)勢。缺點是僅支持串口下載,不支持在線下載,使用中會有些不方便。:方案一: 普通的共陰LED數(shù)碼管,用點陣LED實現(xiàn)文字的顯示.方案二: LCD1602液晶顯示屏.LED數(shù)碼管價格適中,對于數(shù)字顯示效果較好,而且使用單片機(jī)的端口也較少; LCD1602液晶顯示屏,顯示功能強(qiáng)大,可以顯示大量文字、圖形,顯示多樣性,清晰可見,價格相對LED數(shù)碼管來說要昂貴些,但是基于本設(shè)計顯示的東西較多,若采用LED數(shù)碼管的話,所需數(shù)碼管較多,而且不利于控制,.:方案一:用單片機(jī)的定時器產(chǎn)生1S的時基信號,然后用程序來實現(xiàn)時鐘的時、分、秒計時,同時用程序來產(chǎn)生年、月、日。該方案優(yōu)點是減少使用外設(shè)芯片;缺點是用單片機(jī)模擬時鐘,使編程量增大,且用定時器產(chǎn)生時基信號,精度不高。方案二:DS1302是一款高性能的實時時鐘芯片,以計時準(zhǔn)確、接口簡單、使用方便、工作電壓范圍寬和低功耗等優(yōu)點,得到廣泛的應(yīng)用,實時時鐘有秒、分、時、星期、日、月和年,月小于31天時可以自動調(diào)整,并具有閏年補(bǔ)償功能,而且在掉電時能夠在外部紐扣電池的供電下繼續(xù)工作。單片機(jī)有定時器的功能,但時間誤差較大,且需要編寫時鐘程序.因此采用DS1302方案二作為時鐘電路。:直接采用常用的18B20.系統(tǒng)框圖:液晶顯示(LED)1602單片AT89C52時鐘芯片DS1302溫度傳感器18B20單元電路設(shè)計:單片機(jī)中央處理系統(tǒng)的方案設(shè)計,選用AT89C52單片機(jī)作為中央處理器,如圖所示。該單片機(jī)除了擁有MCS51系列單片機(jī)的所有優(yōu)點外,內(nèi)部還具有8K的在系統(tǒng)可編程FLASH存儲器,低功耗的空閑和掉電模式,極大的降低了電路的功耗,還包含了定時器、程序存儲器、數(shù)據(jù)存儲器等硬件,其硬件能符合整個控制系統(tǒng)的要求,不需要外接其他存儲器芯片和定時器件,方便地構(gòu)成一個最小系統(tǒng)。整個系統(tǒng)結(jié)構(gòu)緊湊,抗干擾能力強(qiáng),性價比高。時鐘振蕩電路 MHZ的晶振,使用內(nèi)部晶振接法并上倆個30PF的電容,如圖所示.復(fù)位電路復(fù)位電路由電阻和極性電容組成,通過高電平使單片機(jī)復(fù)位,在時鐘電路開始工作后,當(dāng)高電平的時間超過大約2us時,即可實現(xiàn)復(fù)位。此復(fù)位電路為上電復(fù)位,較為簡單。若改進(jìn)可以添加手動復(fù)位的功能,上電復(fù)位發(fā)生在開機(jī)加電時,由系統(tǒng)自動完成,手動復(fù)位通過一個按鍵來實現(xiàn),在程序運行時,若遇到死機(jī),死循環(huán)等情況,通過手動復(fù)位就可以實現(xiàn)重新啟動的操作。手動按鈕復(fù)位需要人為在復(fù)位輸入端RST上加入高電平。一般采用的辦法是在RST端和正電源Vcc之間接一個按鈕和一個電阻。 DS1302時鐘電路時鐘電路主要由時鐘芯片DS130備用電池、晶振等幾部分組成,如圖(6)所示。DS1302采用3線串行接口,占用引腳少,內(nèi)部集成了可編程日歷時鐘,用戶可以根據(jù)需要通過單片機(jī)的控制來自行設(shè)置,支持雙電源供電,可以使用外部主電源和備用電源,備份電源能夠使時鐘芯片繼續(xù)工作。 DS1302管腳圖 DS1302時鐘電路DS1302各引腳的功能為:8: Vcc1:備用電池端;1: Vcc2:5V電源。當(dāng)Vcc2Vcc1+,由Vcc2向DS1302供電,當(dāng)Vcc2 Vcc1時,由Vcc1向DS1302供電;7: SCLK:串行時鐘,輸入; 6: I/O:數(shù)據(jù)輸入輸出口;5: CE/RST:復(fù)位腳;3: XX2 是外接晶振腳 ();4: 地(GND)。DS1302有關(guān)日歷、時間的寄存器:DS1302有關(guān)日歷、時間的寄存器秒寄存器(81h、80h)的位7定義為時鐘暫停標(biāo)志(CH)。當(dāng)初始上電時該位置為1,時鐘振蕩器停止,DS1302處于低功耗狀態(tài);只有將秒寄器的該位置改寫為0時,時鐘才能開始運行。小時寄存器(85h、84h)的位7用于定義DS1302是運行于12小時模式還是24小時模式。當(dāng)為高時,選擇12小時模式。在12小時模式時,位5是 ,當(dāng)為1時,表示PM。在24小時模式時,位5是第二個10小時位控制寄存器(8Fh、8Eh)的位7是寫保護(hù)位(WP),其它7位均置為0。在對任何的時鐘和RAM的寫操作之前,WP位必須為0。當(dāng)WP位為1時,寫保護(hù)位防止對任一寄存器的寫操作。也就是說在電路上電的初始態(tài)WP是1,這時是不能改寫上面任何一個時間寄存器的,只有首先將WP改寫為0,才能進(jìn)行其它寄存器的寫操作。DS1302讀寫時序 DS1302是SPI總線驅(qū)動方式。它不僅要向寄存器寫入控制字,還需要讀取相應(yīng)寄存器的數(shù)據(jù)。DS1302的控制字如下圖:DS1302的控制字圖控制字的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中。位6:如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1(A4~A0):指示操作單元的地址;位0(最低有效位):如為0,表示要進(jìn)行寫操作,為1表示進(jìn)行讀操作。讀數(shù)據(jù):讀數(shù)據(jù)時在緊跟8位的控制字指令后的下一個SCLK脈沖的下降沿,讀出DS1302的數(shù)據(jù),讀出的數(shù)據(jù)是從最低位到最高位。寫數(shù)據(jù):控制字總是從最低位開始輸出。在控制字指令輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入也是從最低位(0位)開始。5:溫度傳感器18B20通過18B20進(jìn)行讀數(shù)據(jù),將讀出來的數(shù)據(jù)進(jìn)行進(jìn)制轉(zhuǎn)換,轉(zhuǎn)換后送到DS18B20是單總線的數(shù)字溫度傳感器。其與單片機(jī)的接口只需要一根數(shù)據(jù)線即可。當(dāng)然連線簡單意味著軟件處理上可能要麻煩一點。下面來看看它的優(yōu)點看看它的靚照。外形和我們常用的三極管沒有什么兩樣哦。DS18B20的內(nèi)部存儲器分為以下幾部分 ROM:存放該器件的編碼。前8位為單線系列的編碼(DS18B20的編碼是19H)后面48位為芯片的唯一序列號。在出場的時候就已經(jīng)設(shè)置好,用戶無法更改。最后8位是以上56位的CRC碼。 DS18B20的溫度存放如上圖所示。其中S位符號位。當(dāng)溫度值為負(fù)值時,S = 1 ,反之則S = 0 。我們把得到的溫度數(shù)據(jù)乘上對應(yīng)的分辨率即可以得到轉(zhuǎn)換后的溫度值。 DS18B20的通訊協(xié)議: 在對DS18B20進(jìn)行讀寫編程時,必須嚴(yán)格保證讀寫的時序。否則將無法讀取測溫結(jié)果。根據(jù)DS18B20的通訊協(xié)議,主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過3個步驟:每一次讀寫之前都要對DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令。這樣才能對DS18B20進(jìn)行預(yù)定的操作。 復(fù)位要求主機(jī)將數(shù)據(jù)線下拉500us,然后釋放,DS18B20收到信號后等待16~160us然后發(fā)出60~240us的存在低脈沖,主機(jī)收到此信號表示復(fù)位成功。上圖即DS18B20的復(fù)位時序圖。 下面是讀操作的時序圖這是寫操作的時序圖按鍵電路由四個輕觸開關(guān)組成。按鍵用來調(diào)整時間,其一端直接接到單片機(jī)的端口,另一端接地,當(dāng)按下按鍵時,相應(yīng)的端口變?yōu)榈碗娖?,,從而作相?yīng)的操作。用軟件設(shè)計掃描程序。:K1按鍵進(jìn)入設(shè)定狀態(tài)按K2,依次進(jìn)入鬧鐘功能是否啟用,鬧鐘時,分秒,年,月,日及時間時,分,秒的設(shè)置,直到退出設(shè)置狀態(tài)按K3,調(diào)整是否起用鬧鐘和調(diào)節(jié)鬧鐘時,分,秒,年,月,日,時間的時,分,秒的數(shù)字LCD第二排中間顯示小喇叭,表示啟用鬧鐘功能,無則禁止鬧鐘功能(可在調(diào)整狀態(tài)進(jìn)行設(shè)置)正常狀態(tài),LCD上排最前面顯示自定義字符,LCD下排最前面閃動RICHMCU設(shè)置狀態(tài),LCD上排最前面顯示P,下排最前面在設(shè)置鬧鐘時間時顯示alarm:,其它狀態(tài)顯示time:1主程序:首先初始化定時器、LCD1602及DS1302,然后就開始查詢按鍵,有鍵按下則開始調(diào)整時間和日期,若沒有按下,則執(zhí)行下面的時間、日期的顯示,最后依次循環(huán)這些相同的操作:18b20子程序:復(fù)位初始化向1820寫數(shù)據(jù),跳過rom,讀數(shù)據(jù)提取百、十、個、小數(shù)點后一位 讀到的數(shù)轉(zhuǎn)換為整型Ds1302子程序:初始化Flag=1?Dnum=?1:小
點擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1