【正文】
是指各按鍵相互地接通一條輸入數(shù)據(jù)線。這種鍵盤結(jié)構(gòu)的優(yōu)點是電路簡單;缺點是當鍵數(shù)較多時,要占用較多的 I/O 線。DS1302 與單片機之間能簡單地采用同步串行的方式進行通信,僅需用到三條口線:RES ,I/ O 數(shù)據(jù)線和 SCLK 串行時鐘。當為 1 時表示選擇 12 小時模式,當為 0 時表示選擇 24 小時模式。當該位置為 1 時,時鐘振蕩器停止,DS1302 處于低功耗狀態(tài);當該位置為 0 時,時鐘開始運行。(2)DS1302 有關(guān) RAM 的地址DS1302 中附加 31 字節(jié)靜態(tài) RAM 的地址如表 22 所示。要想與DS1302 進行通信,首先要了解 DS1302 的控制字。在控制字指令輸入后的下一個SCLK 時鐘的上升沿時,數(shù)據(jù)被寫入 DS1302,數(shù)據(jù)輸入從最低位(0 位)到最高位。外觀引腳圖如圖 26所示。 (2)停止信號:時鐘線保持高電平期間,數(shù)據(jù)線電平從低到高的跳變作為總線的停止信號。 表 26 74LS138 真值表輸入使能端 譯碼地址輸入端 輸出E1 E2+E3 C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7X H X X X H H H H H H H HL X X X X H H H H H H H H電子科技大學(xué)成都學(xué)院課程設(shè)計 10H L L L L L H H H H H H HH L L L H H L H H H H H HH L L H L H H L H H H H HH L L H H H H H L H H H HH L H L L H H H H L H H HH L H L H H H H H H L H HH L H H L H H H H H H L HH L H H H H H H H H H H L第三章 硬件設(shè)計11第 3 章 硬件設(shè)計 單片機端口分配端口引腳 功 能 RXD(串行口輸入端) TXD(串行口輸出端) 外部中斷 0 請求輸入端,低電平有效 外部中斷 1 請求輸入端,低電平有效 T0(定時器/計數(shù)器 0 計數(shù)脈沖輸入端) T1(定時器/計數(shù)器 1 計數(shù)脈沖輸入端) 外部數(shù)據(jù)存儲器寫選通信號輸出端,低電平有效 外部數(shù)據(jù)存儲器讀選通信號輸出端,低電平有效在本文設(shè)計的系統(tǒng)中,AT89S51 單片機的端口做了如下分配:①— 作為段選碼輸出口; ②— 作為鍵盤控制輸入口;③ 作為溫度采集口;④ — 作為實時時鐘控制口;⑤—作為位選碼輸出口;⑥— 作為 I2C 總線接口; ⑦ 作為鬧鈴輸出控制口;⑧其他接口留待升級使用。在使用外部時鐘時,XTAL1 用來輸入外部時鐘信號,此時 XTAL2 懸空。這樣就確定了單片機的 3 個周期分別是:振蕩周期=1/12;機器周期(SM)= =2/12MHz;2oscf指令周期=(1~4) 機器周期;電子科技大學(xué)成都學(xué)院課程設(shè)計 12內(nèi)部振蕩方式:MCS51 單片機片內(nèi)有一個用于構(gòu)成振蕩器的高增益反相放大器,引腳 XTAL1 和 XTAL2 分別是此放大器的輸入端和輸出端。圖 33 單片機時鐘電路(2)單片機復(fù)位電路第三章 硬件設(shè)計13單片機復(fù)位是使 CPU 和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài),并從這個狀態(tài)開始工作,使單片機從第一個單元取指令。在 RST引腳出現(xiàn)高電平后的第二個機器周期執(zhí)行復(fù)位。圖 (b)為按鍵復(fù)位電路。電子科技大學(xué)成都學(xué)院課程設(shè)計 14圖 35 單片機復(fù)位電路(3)電源電路如圖 36 所示,本系統(tǒng)采用 220V 交流電壓,220V 市電經(jīng)變壓器降壓變成交流 9V,經(jīng)過全橋整流電路、470μF 電容濾波電路、穩(wěn)壓電源ICLM7805 輸出穩(wěn)定直流電壓 5V,輸出接 10μF 電容消除紋波后送電路供單片機和各芯片使用。第三章 硬件設(shè)計15圖 37 獨立式鍵盤 顯示電路由于需顯示的數(shù)據(jù)較多,本設(shè)計采用動態(tài)掃描方式,采用共陰 LED數(shù)碼管作顯示器、38 譯碼器 74LS138 做驅(qū)動電路。顯示時調(diào)用 disp_play()即可完成日期、時間數(shù)據(jù)的顯示,下面給出具體的驅(qū)動程序。 //送段碼P2=y。j12。//顯示星期else if(j8)//顯示時分秒{disp(disp_buffer[j]/16,2*j1)。disp(disp_buffer[9]%100/10,17)。disp(disp_buffer[9]%10,18)。disp(disp_buffer[j]%16,2*j)。void write_time( ){ uchar i=0。 i++) { Clock_Write_Time(ds1302_write_address[i], disp_buffer[1+i])。 i7。使用電腦設(shè)計電路原理圖和電路板圖是把電子技術(shù)從理論應(yīng)用到實際的第一步,在學(xué)習(xí)了模擬和數(shù)字電路之后,首先應(yīng)該學(xué)的就是畫電路圖和電路板圖。①:設(shè)置原理圖設(shè)計環(huán)境。將電氣和電子元件放置到圖紙上。元件一旦放置在原理圖上,就需要用導(dǎo)線將元件連接起來,連接時一定要符合電氣檢測。調(diào)整元件和導(dǎo)線的位置操作。 ⑥:生成網(wǎng)絡(luò)表。在原理圖設(shè)計環(huán)境放置以后,就該用原理圖繪圖工具繪圖,進行放置連接。PCB 設(shè)計的好壞對抗干擾能力影響很大。 打開 PCB 板設(shè)計環(huán)境,對 PCB 板進行層面的設(shè)置(禁止布線層)和尺寸大小的設(shè)置。如 在此過程中 ERC 檢查有錯誤,那么應(yīng)回到原理圖中對其進行修改,直至顯示正確無誤。經(jīng)多第五章 電路板的設(shè)計與制作23次布線調(diào)整線路走向,布線完成后,就對焊盤進行淚滴處理,對 PCB 圖進行加工修飾。接著就是焊接,根據(jù)自己已有的焊接經(jīng)驗,對元件從小到大,從里到外一一進行焊接,在焊接過程中仍有很多的要點需要注意的,焊錫不能多也不能少,焊錫要填滿焊盤和引腳,焊接時要注意不能有短路,焊接集成塊時要注意焊接時間,避免溫度過高導(dǎo)致燒壞元件。例如:有的是標號未定義;有的是少標點符號;有的是標號重復(fù)定義;有的是多輸入一個空格符等。(2)數(shù)碼管顯示年月日和星期的數(shù)字和設(shè)計的對不上號,經(jīng)討論分析,問題出在讀取 DS1302 時的地址上,DS1302 的地址為:秒分時日月星期 年;而我在設(shè)計時把地址看成:秒分 時 星期日 月年來進行設(shè)計,所以顯示的結(jié)果有誤。具體而言,經(jīng)過了對數(shù)字日歷時鐘的深入的設(shè)計和制作,我加深了解了單片機在實際生活中的應(yīng)用,使自己所學(xué)知識在現(xiàn)實中得以運用,加深我對于本專業(yè)的認識。用 C 語言設(shè)計實現(xiàn)的數(shù)字日歷時鐘電路,是一個以硬件設(shè)計為主,軟件配結(jié)合使用的過程。參考文獻27參考文獻[1] .2021[2]陳華兵,傅成華, .中國西部科技. 2021[3]王為青, .2021[4] C 語言程序設(shè)計實訓(xùn) 100 [5] . 2021[6]孫凌燕,黃允千. Protel 與 Keil 軟件的整合在單片機實驗開發(fā)中的應(yīng)用 .研究與探索. 2021[7].[8] C51 .[9].[10].電子科技大學(xué)成都學(xué)院課程設(shè)計 28致 謝本課題在選題及研究過程中得到董老師的親切關(guān)懷和悉心指導(dǎo)下完成的。附錄29附錄 元件清單品名 圖中編號 規(guī)格型號 數(shù)量 備注R1 10K 1R2 1電阻R3 1K 1C1,C2 33pF 2C3 470uF 1C4 10uF 1電容C5 22uF 1單片機 U1 AT89S51 1時鐘芯片 U3 DS1302 1I2C 儲存器 U4 24C02C 138 譯碼器 U5U7 74LS138 3穩(wěn)壓管 U8 7805 1三極管 Q1 NPN 1按鈕 ADD,BACK,DECMODE,RST BUTTON 4備用電池 BAT1 3V 1橋式整流管 BR1 2W005G 1喇叭 LS1 SOUNDER 1排阻 RP1 RESPACK8 1變壓器 TR1 TRAN2P2S 1X1 1晶振X2 32768Hz 17SEGMPX1 一位共陰 17SEGMPX2 二位共陰 7數(shù)碼管7SEGMPX4 四位共陰 2電子科技大學(xué)成都學(xué)院課程設(shè)計 30實物圖