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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于89c51單片機(jī)的電子時(shí)鐘設(shè)計(jì)(編輯修改稿)

2025-07-12 14:16 本頁面
 

【文章內(nèi)容簡介】 據(jù) 。位 5至位 1指示操作單元的地址 。最低有效位 (位 0)如為 0表示要進(jìn)行寫操作,為 1表示進(jìn)行讀操作,控制字節(jié)總是從最低位開始輸出。 在控制指令字輸入后的下一個(gè) SCLK 時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入 DS1902,數(shù)據(jù)輸入從低位即位 0 開始。同樣,在緊跟 8 位的控制指令字后的下一個(gè) SCLK脈沖的下降沿讀出 DS1302的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位 0 位到高位 7。 DS1302有 12 個(gè)寄存器,其中有 7個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為 BCD 碼形式 ,其日歷、時(shí)間寄存器及其控制字見表 1。此外, DS1302 還有年第 16 頁 共 50 頁 16 份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與 RAM 相關(guān)的寄存器等。時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 DS1302與 RAM 相關(guān)的寄存器分為兩類:一類是單個(gè) RAM 單元,共 31 個(gè),每個(gè)單元組態(tài)為一個(gè) 8 位的字節(jié),其命令控制字為 C0H~ FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的 RAM 寄存器,此方式下可一次性讀寫所有的 RAM的 31 個(gè)字節(jié), 命令控制 字為 FEH(寫 )、 FFH(讀 )。 DS1302 與 CPU 的連接需要三條線,即 SCLK(7)、 I/O(6)、 RST(5)。 DS1902與 89C2051 的連接圖,其中, 時(shí)鐘的顯示用 LED。 DS1302 與 CPU 的連接 , 實(shí)際上,在調(diào)試程序時(shí)可以不加電容器,只加一個(gè) 的晶振即可。只是選擇晶振時(shí),不同的晶振,誤差也較大。另外,還可以在上面的電路中加入 DS18B20,同時(shí)顯示實(shí)時(shí)溫度。只要占用 CPU 一個(gè)口線即可。 LED 還可以換成 LCD,還可以使用北京衛(wèi)信杰科技發(fā)展有限公司生產(chǎn)的10 位多功能 8 段液晶顯示模塊 LCM101,內(nèi)含看門狗 (WDT)/時(shí)鐘發(fā)生器及兩種頻率的蜂鳴器驅(qū)動(dòng)電路,并有內(nèi)置顯示 RAM,可顯示任意字段筆劃,具有 3- 4 線串行接口,可與任何單片 機(jī)、 IC 接口。功耗低,顯示狀態(tài)時(shí)電流為 2μA ( 典型值 ),省電模式時(shí)小于 1μA ,工作電壓為 ~ ,顯示清晰。 DS1302的實(shí)時(shí)時(shí)間流程。根據(jù)流程框圖,不難采集實(shí)時(shí)時(shí)間。下面對(duì) DS1302的基本操作進(jìn)行編程: 根據(jù)本人在調(diào)試中遇到的問題,特作如下說明: DS1302 與微處理器進(jìn)行數(shù)據(jù)交換時(shí),首先由微處理器向電路發(fā)送命令字節(jié),命令字節(jié)最高位 MSB(D7)必須為邏輯 1,如果 D7=0,則禁止寫 DS1302,即寫保護(hù);D6=0,指定時(shí)鐘數(shù)據(jù), D6=1,指定 RAM 數(shù)據(jù); D5~ D1 指定輸入或輸 出的特定寄存器;最低位 LSB(D0)為邏輯 0,指定寫操作 (輸入 ), D0=1,指定讀操作 (輸出 )。 在 DS1302 的時(shí)鐘日歷或 RAM 進(jìn)行數(shù)據(jù)傳送時(shí), DS1302必須首先發(fā)送命令字節(jié)。若進(jìn)行單字節(jié)傳送, 8 位命令字節(jié)傳送結(jié)束之后,在下 2 個(gè) SCLK 周期的上升沿輸入數(shù)據(jù)字節(jié),或在下 8個(gè) SCLK 周期的下降沿輸出數(shù)據(jù)字節(jié)。 DS1302 與 RAM 相關(guān)的寄存器分為兩類 :一類是單個(gè) RAM 單元,共 31 個(gè),每個(gè)單元組態(tài)為一個(gè) 8位的字節(jié),其命令控制字為 C0H~ FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;再一類為突發(fā) 方式下的 RAM 寄存器,在此方式下可一次性讀、寫所有的 RAM 的 31個(gè)字節(jié)。 要特別說明的是備用電源 B1,可以用電池或者超級(jí)電容器 ( 以上 )。雖然 DS1302 在主電源掉電后的耗電很小,但是,如果要長時(shí)間保證時(shí)鐘正常,最好選用小型充電電池。可以用老式電腦主板上的 充電電池。如果斷電時(shí)間較短 (幾小時(shí)或幾天 )時(shí),就可以用漏電較小的普通電解電容器代替。 100 μF 就第 17 頁 共 50 頁 17 可以保證 1 小時(shí)的正常走時(shí)。 DS1302 在第一次加電后,必須進(jìn)行初始化操作。初始化后就可以按正常方法調(diào)整時(shí)間。 DS1302 存在時(shí)鐘精度 不高,易受環(huán)境影響,出現(xiàn)時(shí)鐘混亂等缺點(diǎn)。 DS1302 可以用于數(shù)據(jù)記錄,特別是對(duì)某些具有特殊意義的數(shù)據(jù)點(diǎn)的記錄,能實(shí)現(xiàn)數(shù)據(jù)與出現(xiàn)該數(shù)據(jù)的時(shí)間同時(shí)記錄。這種記錄對(duì)長時(shí)間的連續(xù)測(cè)控系統(tǒng)結(jié)果的分析及對(duì)異常數(shù)據(jù)出現(xiàn)的原因的查找具有重要意義。傳統(tǒng)的數(shù)據(jù)記錄方式是隔時(shí)采樣或定時(shí)采樣,沒有具體的時(shí)間記錄,因此,只能記錄數(shù)據(jù)而無法準(zhǔn)確記錄其出現(xiàn)的時(shí)間;若采用單片機(jī)計(jì)時(shí),一方面需要采用計(jì)數(shù)器,占用硬件資源,另一方面需要設(shè)置中斷、查詢等,同樣耗費(fèi)單片機(jī)的資源,而且,某些測(cè)控系統(tǒng)可能不允許。但是,如果在系統(tǒng)中采用時(shí)鐘芯片 DS1302,則能很好地解決這個(gè)問題。 第 18 頁 共 50 頁 18 4 系統(tǒng)的軟件設(shè)計(jì) 電子萬年歷的功能是在程序控制下實(shí)現(xiàn)的。該系統(tǒng)的軟件設(shè)計(jì)方法與硬件設(shè)計(jì)相對(duì)應(yīng),按整體功能分成多個(gè)不同的程序模塊,分別進(jìn)行設(shè)計(jì)、編程和調(diào)試,最后通過主程序?qū)⒏鞒绦蚰K連接起來。這樣有利于程序修改和調(diào)試,增強(qiáng)了程序的可移植性。 主程序 主程序如圖 41所示: 圖 41 主程序圖 開始 讀年、月、日 送第一塊 LED 顯示 讀星期、閏、年、日 送第二塊 LED 顯示 讀 時(shí)、分、秒 送第三塊 LED 顯示 返回 第 19 頁 共 50 頁 19 從 1302 讀取日期和時(shí)間程序 圖 42 從 1302讀取程序 第 20 頁 共 50 頁 20 5 PROTEUS 使用 編程環(huán)境 PROTEUS PROTEUS 軟件是由英國 LabCenter Electronics 公司開發(fā)的 EDA 工具軟件,由 ISIS 和 ARES 兩個(gè)軟件構(gòu)成,其中 ISIS 是一款便捷的電子系統(tǒng)仿真平臺(tái)軟件,ARES 是一款高級(jí)的布線編輯軟件,它集成了高級(jí)原理布線圖、混合模式 SPICE電路仿真、 PCB 設(shè)計(jì)以及自動(dòng)布線來實(shí)現(xiàn)一個(gè)完整的電子設(shè)計(jì)。 用 PROTEUS ISIS 對(duì)電子萬年歷的硬件電路設(shè)計(jì) 通過 PROTEUS ISIS 軟件的 VSM(虛擬仿真技術(shù)),用戶可以對(duì)模擬電路、數(shù)字電路、模數(shù)混合電路,以及基于微控制器的系統(tǒng)連同所有外圍接口電子元器件一起仿真。 用 PROTEUS ISIS 設(shè)計(jì)硬件電路的過程 ① 選擇設(shè)計(jì)圖紙的到小 根 據(jù)設(shè)計(jì)所使用到元器件的多少,選擇合適大小的設(shè)計(jì)圖紙,操作是單擊菜單欄上的 System→ Set Sheet Size ,然后彈出如圖 51所示的對(duì)話框,從中選擇合適大小的圖紙,也可以選擇 User 進(jìn)行圖紙的自定義設(shè)置。在設(shè)計(jì)過程中也可以通過此方法調(diào)整圖紙的大小。 圖 51 ② 選取仿真所 需的元器件 選取元器件的方式是,單擊如圖 52 所示的按鈕“ P”。會(huì)彈出如圖 53 所示的窗口。 第 21 頁 共 50 頁 21 圖 52 圖 53 從此窗口的左上角的“ Keywords”中輸入電子萬年歷設(shè)計(jì)用到的器件,如輸入“ AT89C51”,在中間會(huì)列出帶有輸入關(guān)鍵字的元器件,選擇合適的元器件并雙擊它,則已經(jīng)選擇好了該元器件。然后再在“ Keywords”中輸入其他所需的元器件,用同樣的方法進(jìn)行操作。最后選擇好所有的元器件如圖 54 所示。 第 22 頁 共 50 頁 22 圖 54 所用器件 其中 74LS174 表示三個(gè)串行接口, AT89C51 代表單片機(jī)會(huì), DS1302 代表時(shí)鐘芯片, RESPACK8 代表八排電阻。 ③ 把元器件放到圖紙的合適位置,進(jìn)行布線 單擊如圖 54 所示的元器件 AT89C51,再在右邊圖紙上單擊,就把元器件放入到了圖紙上。再用同樣的方法把 ds1302 放入到圖紙的合適位置。如果元器件放置錯(cuò)誤,這可通過兩次右擊刪除所放置的元器件,如果位置放得不理想,可以先右擊該器件,然后按住左鍵進(jìn)行移動(dòng)。在布線之前,如果覺得元器件的引腳的方向不好布線,則可以通過單擊 這四個(gè)按鈕進(jìn)行調(diào)整,這四按鈕的意思分別是:順時(shí)針旋轉(zhuǎn) 90176。,逆時(shí)針旋轉(zhuǎn) 90176。,沿 Y 軸對(duì)稱,沿 X 軸對(duì)稱。通過這樣的調(diào)整,可以使整個(gè)布局合理一些。接著進(jìn)行布線,由于 PROTEUS ISIS 有自動(dòng)布線的功能,比如要把 AT89C51 的 P2 口連到 74LS164 的 OUT8 口,只要先在 P2引腳上單擊一下,再在 OUT8 引腳上單擊,則 ISIS 自動(dòng)將兩個(gè)引腳連上線。 第 23 頁 共 50 頁 23 圖 55 at89c51與 ds1302的連接 ISIS 還提供了網(wǎng)絡(luò)布線,即不使用線連接也可以把兩個(gè)引腳虛擬的連接了起來。具體操作是:單擊要連線的一個(gè)引腳,連出適當(dāng)?shù)木嚯x后雙擊,另一個(gè)引腳也 同樣操作,在單擊如圖 65 所示的“ LBL”按鈕,再在圖中 引腳的 A處單擊,在彈出的窗口中的“ String”中填入名稱,如“ A” ,對(duì) OUT7 引腳進(jìn)行同樣的操作,在“ String”中也填入名稱“ A”,這樣就完成了 引腳與 RES引腳的網(wǎng)絡(luò)連接,這個(gè)好處避免兩個(gè)距離比較遠(yuǎn)的器件進(jìn)行真實(shí)線的連接,使布線美觀。 ④ 編輯窗口連接端子 要讓最后的設(shè)計(jì)成功仿真時(shí),必須放置并連接端子。選擇 ,從中可以選擇電路原理中的兩個(gè)通用的端子,一個(gè)是接地,一個(gè)是電源。 如圖 56所示。 圖 56 連接端子 第 24 頁 共 50 頁 24 在 PROTEUS ISIS 中的最終設(shè)計(jì)圖如圖 57所示 圖 57仿真圖 最后分別對(duì)各元器件的屬性值進(jìn)行設(shè)置,單擊 按鈕,進(jìn)行電氣檢測(cè),查看接線是否合理,說明硬件電路已經(jīng)順利的完成。 用 PROTEUS ISIS 進(jìn)行電子萬年歷的仿真測(cè)試 ① 添加 Keil 中編寫的代碼文件 單擊工具欄中的 Source→ Add/Remove Source files...,彈出一個(gè)對(duì)話框,分別單擊“ New” ,然后選擇在 Keil 中編寫的數(shù)字電壓表 .ASM 匯編語言程序,單擊“ OK” ,完成添加代碼文件。 ② 編譯源程序,生成 .HEX 目 標(biāo)代碼文件 單擊 Source→ Build All。如果編譯結(jié)果沒有錯(cuò)誤,會(huì)出現(xiàn)如圖 58所示的結(jié)果。 第 25 頁 共 50 頁 25 圖 58 ③ 加載 .HEX 目標(biāo)代碼文件 通過如圖 59 所示的對(duì)話框,選擇剛才編譯生成的 .HEX 文件。設(shè)置使單片機(jī)的運(yùn)行頻率為 6MHz 。 圖 59 ④ 單擊 按鈕,進(jìn)行對(duì)電子萬年歷的仿真測(cè)試, 運(yùn)行結(jié)果如圖 510所示 第 26 頁 共 50 頁 26 圖 510仿真測(cè)試 ⑤ PROTEUS 的調(diào)試功能 由于使用的是匯編語言編寫的程序,如果在測(cè)量的時(shí)候測(cè)量值顯示錯(cuò)誤,說明程序中存在問題,這個(gè)問題只用在仿真測(cè)量的時(shí)候才能被發(fā)現(xiàn), 這時(shí)可以使用PROTEUS 對(duì)程序進(jìn)行調(diào)試。單擊 按鈕,再單擊菜單欄中的 Debug,可以在最下面選擇打開內(nèi)存觀察窗口,寄存器值觀察窗口,匯編語言源代碼窗口等等。在匯編語言源代碼窗口中,也可以在所需要設(shè)置斷點(diǎn)的語句前雙擊設(shè)置斷點(diǎn),當(dāng)設(shè)置斷點(diǎn)的時(shí)候,程序運(yùn)行到所設(shè)斷點(diǎn)處停止,從而可以在內(nèi)存、寄存器等的值的變化,從而找出程序出錯(cuò)的地方。 第 27 頁 共 50 頁 27 結(jié)論 本課題從理論到實(shí)際應(yīng)用,用 AT89C51 單片機(jī)與 8 位模數(shù)轉(zhuǎn)換芯片 74LS164等一些電路的組合,成功的設(shè)計(jì)出了一個(gè)電子萬年歷。而且 所設(shè)計(jì)的 電子萬年歷設(shè)計(jì) 也按當(dāng)初要求的能夠在 PROTEUS 中進(jìn)行仿真,并且能夠很精確的顯示年歷??梢哉f該電子萬年歷具有很高的實(shí)用價(jià)值。 在軟件設(shè)計(jì)的過程中,利用了 Keil 這個(gè)軟件在程序錄入和調(diào)試的時(shí)候的優(yōu)越性,讓我能夠在編寫軟件的時(shí)候很方便的發(fā)現(xiàn)軟件中的錯(cuò)誤,現(xiàn)在已經(jīng)能夠使用 Keil 對(duì)所設(shè)計(jì)的程序進(jìn)行調(diào)試。對(duì)于 PROTEUS 這款軟件,也能熟練掌握電路設(shè)計(jì)仿真。由于平時(shí)沒有接觸過這兩個(gè)軟件,加上畢業(yè)設(shè)計(jì)的時(shí)間有限,對(duì)于他們的連接調(diào)試程序,未能熟練掌握,但以后有機(jī)會(huì)的話會(huì)再好好學(xué)習(xí)的。 本次設(shè)計(jì)的 電子萬年歷 也存在的不足的地方,有待于以 后的改進(jìn)。 第 28 頁 共 50 頁 28 致謝
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1