2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩19頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  硬件技術(shù)綜合課程設(shè)計(jì)</p><p><b>  實(shí)驗(yàn)報(bào)告</b></p><p> 題 目:DS1302時(shí)鐘</p><p> 學(xué) 院:</p><p> 指導(dǎo)老師:</p><p> 日 期:</p><p> 試驗(yàn)對(duì)象:<

2、/p><p> 實(shí)驗(yàn)人員:姓名學(xué)號(hào)</p><p>  課程設(shè)計(jì)(論文)任務(wù)書(shū)</p><p>  課程設(shè)計(jì)(論文)成績(jī)?cè)u(píng)定表</p><p><b>  摘要</b></p><p>  本文介紹的實(shí)時(shí)時(shí)鐘芯片為DSl302,它是Dallas公司的一種具有涓細(xì)電流充電能力的實(shí)時(shí)時(shí)鐘芯片,采用普通32

3、.768kHz晶振。主要特點(diǎn)是采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編程的充電功能,并且可以關(guān)閉充電功能。它可以對(duì)年、月、日、星期、時(shí)、分、秒進(jìn)行計(jì)時(shí),且具有閏年補(bǔ)償?shù)榷喾N功能。并給出了基于DSl302設(shè)計(jì)的時(shí)鐘顯示在讀寫(xiě)中的C51程序及流程圖,以及在調(diào)試過(guò)程中的注意事項(xiàng)。</p><p>  關(guān)鍵詞:?jiǎn)纹瑱C(jī) DS1302 數(shù)碼管 數(shù)字鐘</p><p><b&g

4、t;  1設(shè)計(jì)目標(biāo)5</b></p><p><b>  2概要設(shè)計(jì)5</b></p><p><b>  2.1設(shè)計(jì)目的5</b></p><p><b>  2.2設(shè)計(jì)儀器5</b></p><p>  2.3設(shè)計(jì)內(nèi)容12</p><

5、;p><b>  3詳細(xì)設(shè)計(jì)12</b></p><p>  3.1系統(tǒng)需求分析12</p><p>  3.2系統(tǒng)目標(biāo)14</p><p>  3.3功能分析14</p><p>  3.4詳細(xì)步驟15</p><p><b>  4總結(jié)18</b><

6、;/p><p>  參考文獻(xiàn)(資料)19</p><p><b>  設(shè)計(jì)背景</b></p><p>  自古就有:“一寸光陰,一寸金”的說(shuō)法。而隨著人類(lèi)的進(jìn)步科學(xué)技術(shù)的發(fā)展時(shí)間觀也越來(lái)越被人們重視,而能夠準(zhǔn)確的知道時(shí)間能夠提高人們的工作效率,能更好的在規(guī)定的時(shí)間內(nèi)完成所規(guī)定的工作 。因此能有隨時(shí)隨地的知道當(dāng)前時(shí)間是非常重要的。隨著科學(xué)技術(shù)的發(fā)

7、展,單片機(jī)技術(shù)的不斷完善,使得數(shù)字鐘的設(shè)計(jì)變得更加的靈便、更加簡(jiǎn)單、功能更加的完善、計(jì)時(shí)也更加的準(zhǔn)確。本設(shè)計(jì)實(shí)用簡(jiǎn)單,設(shè)計(jì)方便,計(jì)時(shí)準(zhǔn)確,能夠?qū)δ辍⒃?、日、周、日、時(shí)、分、秒進(jìn)行準(zhǔn)確的計(jì)時(shí),可以讓人們隨時(shí)知道時(shí)間。</p><p><b>  1設(shè)計(jì)目標(biāo)</b></p><p>  本設(shè)計(jì)主要實(shí)現(xiàn)電子時(shí)鐘顯示用LED數(shù)碼管顯示,格式為:XX XX XX,由左向右分別為

8、:時(shí)、分、秒,比如:23 20 40表示23時(shí)20分40秒,剛開(kāi)始工作時(shí)應(yīng)顯示為:12 00 00,并且要實(shí)現(xiàn)對(duì)時(shí)分秒進(jìn)行校準(zhǔn)。</p><p><b>  2概要設(shè)計(jì)</b></p><p><b>  2.1設(shè)計(jì)目的</b></p><p>  本設(shè)計(jì)利用AT89C52的特點(diǎn)及DS1302的特點(diǎn),提出一種基DS1302

9、單片機(jī)控制,再利用數(shù)碼管顯示的數(shù)字鐘。本系統(tǒng)硬件利用AT89S52作為CPU進(jìn)行總體控制,通過(guò)DS1302時(shí)鐘芯片獲取準(zhǔn)確詳細(xì)的時(shí)間(年、月、日、周、日、時(shí)、分、秒準(zhǔn)確時(shí)間),對(duì)時(shí)鐘信號(hào)進(jìn)行控制,同時(shí)利用液晶顯示芯片LCD1602對(duì)時(shí)間進(jìn)行準(zhǔn)確顯示年、月、日、周、日、時(shí)、分、秒。該數(shù)字鐘硬件電路簡(jiǎn)單,使用靈活,功能穩(wěn)定,顯示準(zhǔn)確且無(wú)論對(duì)于社會(huì)或者科研也有一定的研究?jī)r(jià)值。</p><p><b>  2.

10、2設(shè)計(jì)儀器</b></p><p>  根據(jù)系統(tǒng)設(shè)計(jì)結(jié)構(gòu)圖來(lái)對(duì)每個(gè)部分的電路進(jìn)行分析和說(shuō)明,重點(diǎn)講述微控制器AT89S52、數(shù)碼管顯示模塊、實(shí)時(shí)時(shí)鐘芯片DS1302。</p><p>  2.2.1 MCU微控制器電路</p><p>  AT89S52的塑封圖如圖2.1所示,它為DIP40雙列直插塑料封裝。AT89S52作為系統(tǒng)的核心控制元件,只有它

11、能正常工作后才能使其它的元件進(jìn)入正常工作狀態(tài)。因此,下面對(duì)AT89S52進(jìn)行必要的說(shuō)明,AT89S52的管腳如圖2.2所示。</p><p>  圖2.1 AT89C52封裝圖 圖2.2 AT89C52引腳圖</p><p>  1)VCC:40腳,供電電壓,一般接+5V電壓。</p><p>  2)GND:20腳,接工作地。

12、</p><p>  3)P0口:1~8腳,P0口是一個(gè)8位漏極開(kāi)路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫(xiě)“1”時(shí),引腳用作高阻抗輸入。</p><p>  當(dāng)訪問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0具有內(nèi)部上電阻。但是P0口在程序校驗(yàn)作為輸出指令字節(jié)時(shí),需要外部加上拉電阻,一般上拉電阻選4.7K~10K為宜。本設(shè)計(jì)

13、中用5.1K的排阻對(duì)P0口進(jìn)行上拉電平。</p><p>  4)P1口:32~39腳,P1口是一個(gè)內(nèi)部具有上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4個(gè)TTL門(mén)電流。P1端口寫(xiě)入“1”后,被內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為作輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流。</p><p>  5)P2口:20~27腳,P2 口是一個(gè)具有內(nèi)部上拉電阻

14、的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P2 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。6)P3口:10~17腳,P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P3 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P3 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。</p><p>  7)RESET:9腳,復(fù)位輸入端。當(dāng)振蕩器復(fù)位器件時(shí),

15、要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p>  8):30腳,當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于系統(tǒng)校驗(yàn)。</p><p>  9)PSEN:29腳,外部程序存儲(chǔ)器的選通信號(hào)。</p&

16、gt;<p>  10):31腳,訪問(wèn)外部程序存儲(chǔ)器控制信號(hào)。當(dāng)為低電平時(shí),讀取外部程序存儲(chǔ)器;當(dāng)端為高電平時(shí),則讀取內(nèi)部程序存儲(chǔ)器,設(shè)計(jì)中一般接高電平。</p><p>  11)XTAL1:19腳,振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。如采用外部時(shí)鐘源時(shí),XTAL1為輸入端。</p><p>  12)XTAL2:18腳,振蕩器反相放大器的輸出端。如采用外部時(shí)鐘源時(shí)

17、,XTAL2應(yīng)懸空不接。</p><p>  2.2.2 LCD液晶顯示電路</p><p>  液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在各種小系統(tǒng)中得到了更廣泛的應(yīng)用。本設(shè)計(jì)中使用的液晶顯示模塊是LCD1602。圖2.3所示為本設(shè)計(jì)LCD1602的連接圖。</p><p>  圖2.3 LCD1602連接圖</p><

18、;p>  LCD1602是一種用5x7點(diǎn)陣圖形來(lái)顯示字符的液晶顯示器模塊,它顯示的容量為2行16個(gè)字。其實(shí)物如圖2.4和圖2.5所示,它的顯示內(nèi)容豐富、體積小、美觀和易于控制都是本設(shè)計(jì)選擇作為顯示模塊的原因。其引腳結(jié)構(gòu)圖如圖2.6所示。</p><p>  圖2.4 LCD1602正面圖</p><p>  圖2.5 LCD1602反面圖</p><p>

19、  圖2.6 LCD1602引腳結(jié)構(gòu)圖</p><p>  關(guān)于LCD1602的引腳說(shuō)明如下:</p><p>  1)第1腳:GND為地電源。</p><p>  2)第2腳:VCC接+5V電源。</p><p>  3)第3腳:VEE為液晶顯示器對(duì)比度調(diào)整端。接+5V電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使

20、用時(shí)可以通過(guò)一個(gè)10K的精密電位器調(diào)整對(duì)比度,一般對(duì)比電壓為0.7V左右。</p><p>  4)第4腳:RS為寄存器選擇。高電平時(shí)選擇數(shù)據(jù)寄存器,否則選擇指令寄存器。</p><p>  5)第5腳:為讀寫(xiě)信號(hào)線。高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。當(dāng)RS和共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址,當(dāng)RS為低電平為高電平時(shí)可以讀出忙信號(hào),當(dāng)RS為高電平為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。<

21、/p><p>  6)第6腳:E端為使能端。當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。</p><p>  7)第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。 </p><p>  8)第15腳:背光燈VCC,一般直接和+5V電源相連接。</p><p>  9)第16腳:背光燈GND。</p><p>  LCD160

22、2液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,這些字符圖有:阿拉伯?dāng)?shù)字、英文字母的大小寫(xiě)、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比如大寫(xiě)的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來(lái),我們就能看到字母“A”。 LCD1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表2.8所示。</p><p>  它的讀寫(xiě)操

23、作、屏幕和光標(biāo)的操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn)的(說(shuō)明:1為高電平,0為低電平)。</p><p>  指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。</p><p>  指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H 。</p><p>  指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移 。S:屏幕上所有文字是否左移或者右移。高電平表示有效

24、,低電平則無(wú)效 。</p><p>  指令4:顯示開(kāi)關(guān)控制。 D:控制整體顯示的開(kāi)與關(guān),高電平表示開(kāi)顯示,低電平表示關(guān)顯示。 C:控制光標(biāo)的開(kāi)與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo)。 B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍 。</p><p>  指令5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo) 。</p><p>  指令6:功

25、能設(shè)置命令 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線。 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示。 F:低電平時(shí)顯示5X7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符 (有些模塊是 DL:高電平時(shí)為8位總線,低電平時(shí)為4位總線)。</p><p>  指令7:字符發(fā)生器RAM地址設(shè)置 。</p><p>  指令8:DDRAM地址設(shè)置 。</p><p&g

26、t;  指令9:讀出忙信號(hào)和光標(biāo)地址。 BF為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙,模塊就能接收相應(yīng)的命令或者數(shù)據(jù)。</p><p>  指令10:寫(xiě)數(shù)據(jù) 。</p><p>  指令11:讀數(shù)據(jù) 。</p><p>  液晶顯示模塊是一個(gè)慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志位是不是為低電平,是低電平則表示不

27、忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符。表2.9為 LCD1602的內(nèi)部顯示地址。</p><p>  表2.9 LCD1602的內(nèi)部顯示地址</p><p>  2.2.3 實(shí)時(shí)時(shí)鐘電路</p><p>  本設(shè)計(jì)使用的實(shí)時(shí)時(shí)鐘電路芯片是美國(guó)DALLAS公司生產(chǎn)的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路芯片DS13

28、02,其引腳如圖2.11所示。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.768kHz晶振。是復(fù)位/片選線,通過(guò)把輸 入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送。

29、 圖2.11 DS1302引腳圖</p><p>  輸入有兩種功能。首先,接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對(duì)DS1302進(jìn)行操作。如果在傳送過(guò)程中置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí)在Vcc≥2.5V之前,必須保持低電平。只有在SCLK為低電平時(shí),才能將置為高電平。I/O為串行數(shù)據(jù)

30、輸入輸出端(雙向),SCLK始終是輸入端。本設(shè)計(jì)入端。本設(shè)計(jì)連接圖如圖3.15所示,其中C1和C2起微調(diào)晶振的作用。 </p><p>  DS1302接線圖 </p><p><b>  2.2.4復(fù)位電路</b></p><p>  在AT89S52單片機(jī)中的振蕩器運(yùn)行時(shí),引腳上保持到少2個(gè)機(jī)器周期的高電平輸入信號(hào),復(fù)位過(guò)程即可完成。

31、根據(jù)此原理,本設(shè)計(jì)采用上電復(fù)位和按鍵復(fù)位嵌套在系統(tǒng)中,增強(qiáng)了系統(tǒng)的實(shí)用性。本設(shè)計(jì)的具體復(fù)位圖如下。</p><p><b>  2.2.5晶振電路</b></p><p>  AT89S52在工作時(shí)需要外部提供時(shí)鐘信號(hào),因此,本設(shè)計(jì)選擇在其18腳19腳之間接上12MHz的晶振,為單片機(jī)提供1μs的機(jī)器振蕩周期。其電路連接圖如圖所示。在圖中,電容器C3.C4起穩(wěn)定振蕩頻

32、率、快速起振的作用,其電容值一般在20~50pF</p><p><b>  2.3設(shè)計(jì)內(nèi)容</b></p><p>  根據(jù)系統(tǒng)設(shè)計(jì)的要求和設(shè)計(jì)思路,確定該系統(tǒng)的系統(tǒng)設(shè)計(jì)結(jié)構(gòu)圖。如圖2.12所示。硬件電路主要由MCU微處理控制器單元、DS1302時(shí)鐘電路、儲(chǔ)存器、復(fù)位電路、晶振電路、數(shù)碼管顯示模塊構(gòu)成。</p><p>  圖2.12 系統(tǒng)結(jié)

33、構(gòu)圖設(shè)計(jì)</p><p><b>  3詳細(xì)設(shè)計(jì)</b></p><p><b>  3.1系統(tǒng)需求分析</b></p><p>  根據(jù)設(shè)計(jì)要求,結(jié)合實(shí)際情況和設(shè)計(jì)成本要求,對(duì)系統(tǒng)主要部分的電路方案敘述如下:</p><p>  3.1.1 MCU微處理控制器的方案對(duì)比選擇</p>

34、<p>  方案一:MCU微處理控制器的種類(lèi)很多,有ATMEL公司生產(chǎn)的AT89SXX系列單片機(jī),其中有8位的單片機(jī),也有16位的單片機(jī)。AT89S52為8位的單片機(jī),它是一種低損耗、高性能的CMOS微處理器,片內(nèi)有8K字節(jié)的存儲(chǔ)空間,128字節(jié)RAM、4個(gè)8位并口、1個(gè)全雙工串行口、2個(gè)16位定時(shí)/計(jì)數(shù)器,尋址范圍64K。并且可以在線進(jìn)行重復(fù)編程、快速擦除、快速寫(xiě)入程序,能重復(fù)擦除 / 寫(xiě)入1000次左右,數(shù)據(jù)保存時(shí)間為十

35、年。</p><p>  方案二:微處理控制器也有凌陽(yáng)公司生產(chǎn)的,同樣有8位的CPU和16位的CPU。它也有很多特點(diǎn),比如:體積小 、集成度高、可靠性好、易于擴(kuò)展;具有較強(qiáng)的中斷處理能力;功能強(qiáng)、效率高的指令系統(tǒng)及低功耗、低電壓。但是其應(yīng)用領(lǐng)域主要是為控制處理數(shù)據(jù)處理以及數(shù)字信號(hào)處理等領(lǐng)域,其中凌陽(yáng)的16位單片機(jī)就是為適應(yīng)這種發(fā)展而設(shè)計(jì)的。</p><p>  綜上所述,在本設(shè)計(jì)中,考慮到

36、本人對(duì)單片機(jī)的運(yùn)用熟練度和單片機(jī)的功能領(lǐng)域,選擇ATMEL公司生產(chǎn)的AT89S52單片機(jī)作為本設(shè)計(jì)的微控制器。</p><p>  3.1.2 LCD液晶顯示模塊的方案對(duì)比選擇</p><p>  方案一:顯示的方法有很多種,其中LED數(shù)碼管是常用的一種顯示方法。在這個(gè)設(shè)計(jì)中,可以用LED數(shù)碼管來(lái)顯示相應(yīng)站臺(tái)的站號(hào),提醒司機(jī)知道是去向或者是回向的第幾站,讓司機(jī)心里有數(shù),同時(shí)增加顯示數(shù)字的

37、可讀性。該設(shè)計(jì)中,顯示站號(hào)至少要2個(gè)LED數(shù)碼管,顯示時(shí)間信息要12個(gè),顯示星期信息要1個(gè),總共需要15個(gè)LED數(shù)碼管。單價(jià)是1.2元,那15個(gè)共需要15×1.2=18(元)。另外在PCB布線過(guò)程中很困難,給設(shè)計(jì)帶來(lái)很不方便的使用。</p><p>  方案二:LCD1602液晶顯示器是一塊價(jià)廉物美的器件,其體積小,控制簡(jiǎn)單,使用方便。它能顯示2行16列的數(shù)字或英文信息,另外連接它的線很少,只要8根數(shù)據(jù)

38、線和3根控制線,這樣給使用帶來(lái)很大的方便,節(jié)約單片機(jī)I/O口。市場(chǎng)上一塊LCD1602的價(jià)格也只在15元左右,比數(shù)碼管便宜。</p><p>  方案三:功能強(qiáng)大、可以顯示中文文字的LCD12864液晶顯示器,其價(jià)格貴,體積大,控制比LCD1602稍微復(fù)雜點(diǎn),但是使用也是很方便的。在控制使用上,需要8根數(shù)據(jù)線和3根控制線,其余的PSB、和BLA直接與VCC相連接。但是在本設(shè)計(jì)中使用它的性?xún)r(jià)比不高,體積大,占用覆銅

39、板面積大,而且笨拙。</p><p>  綜上所述,在LCD液晶顯示模塊上,選擇方案二中的LCD1602液晶顯示器作為本設(shè)計(jì)的顯示模塊。顯示時(shí)間年、月、日、周、日、時(shí)、分、秒。</p><p>  3.1.3 實(shí)時(shí)時(shí)鐘電路的方案對(duì)比選擇</p><p>  方案一:DS1302 是美國(guó)DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路芯片,它可以對(duì)年、

40、月、日、星期、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功能,工作電壓為2.5V~5.5V。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或RAM數(shù)據(jù)。DS1302內(nèi)部有一個(gè)31×8的用于臨時(shí)性存放數(shù)據(jù)的RAM寄存器。DS1302是有主電源/后背電源雙電源引腳,可以同時(shí)對(duì)后背電源進(jìn)行涓細(xì)電流充電。</p><p>  方案二:DS12887也是是美國(guó)DALLAS半導(dǎo)體公司最新推出的串

41、行接口實(shí)時(shí)時(shí)鐘芯片,采用CMOS技術(shù)制成,內(nèi)部具有晶振和時(shí)鐘芯片備份鋰電池。采用DS12887芯片設(shè)計(jì)的時(shí)鐘電路無(wú)需任何外圍電路和器件,并具有良好的微機(jī)接口。DS12887芯片具有微功耗、外圍接口簡(jiǎn)單、精度高、工作穩(wěn)定可靠等優(yōu)點(diǎn),可廣泛用于各種需要較高精度的實(shí)時(shí)時(shí)鐘系統(tǒng)中。但是由于它是串行接口的,外接單片機(jī)需要接很多引腳,才能對(duì)它達(dá)到一個(gè)很好的控制。</p><p>  綜上所述,結(jié)合本設(shè)計(jì)的實(shí)際問(wèn)題及單片機(jī)的I

42、/O口線,選擇方案一中的DS1302作為本設(shè)計(jì)的實(shí)時(shí)時(shí)鐘電路的芯片。其控制方便、占單片機(jī)I/O口線少、體積小、價(jià)格便宜,方便本設(shè)計(jì)的使用。</p><p><b>  3.2系統(tǒng)目標(biāo)</b></p><p>  本設(shè)計(jì)主要實(shí)現(xiàn)電子時(shí)鐘顯示用LED數(shù)碼管顯示,格式為:XX XX XX,由左向右分別為:時(shí)、分、秒,比如:23 20 40表示23時(shí)20分40秒,剛開(kāi)始工作時(shí)

43、應(yīng)顯示為:12 00 00,并且要實(shí)現(xiàn)對(duì)時(shí)分秒進(jìn)行校準(zhǔn)。</p><p><b>  3.3功能分析</b></p><p><b>  主程序</b></p><p>  系統(tǒng)的主程序設(shè)計(jì)是用來(lái)控制整個(gè)系統(tǒng)運(yùn)行時(shí)的時(shí)序工作狀態(tài),因此,完善的程序設(shè)計(jì)是本設(shè)計(jì)的重點(diǎn)內(nèi)容。下圖是是本設(shè)計(jì)使用的主程序設(shè)計(jì)流程圖。</p&g

44、t;<p>  以下是程序主程序的一下部分:</p><p>  ORG 00H</p><p>  AJMP START</p><p>  ;==================================</p><p>  ORG 0050H</p><p><b>  

45、START:</b></p><p>  MOV SP,#70H</p><p>  LCALL INITIALZE ;調(diào)用初始化液晶屏幕</p><p>  LCALL INIT_P ;調(diào)用初始畫(huà)面</p><p>  MOV A, #00000001B ;清液晶屏,寫(xiě)成空白</p><p

46、>  LCALL WRITE_COM</p><p>  ;============主程序================</p><p><b>  MAIN:</b></p><p>  LCALL RD_DS1302</p><p>  LCALL DATA_BUF</p><p>

47、;  LCALL DISPLAY</p><p>  AJMP MAIN</p><p>  ………………………………</p><p><b>  3.4詳細(xì)步驟</b></p><p>  按圖4-1連接實(shí)驗(yàn)線路。</p><p><b>  (2)寫(xiě)程序</b>&l

48、t;/p><p>  #include”Intrins.h”</p><p>  sbit t_clk=P3^3;</p><p>  sbit t_io=P3^4;</p><p>  sbit rst_P3^5;</p><p>  sbit BIT7=ACC^7;</p><p>  sbit

49、 BITO=ACC^O;</p><p>  void inputbyte(unsigned char ucda)//八位數(shù)據(jù)寫(xiě)入函數(shù)</p><p><b>  {</b></p><p>  unsigned char i;</p><p>  ACC=ucda;//將要寫(xiě)入的數(shù)放入ACC</p>&l

50、t;p>  t_rst=l;//啟動(dòng)數(shù)據(jù)傳送</p><p>  for(i=8;i>0;i--)//循環(huán)八次,寫(xiě)入八位數(shù)據(jù),從低位到</p><p><b>  {</b></p><p>  t_io=BIT0;//將Accn0的值賦給時(shí)鐘數(shù)據(jù)線</p><p><b>  t_clk=0;&l

51、t;/b></p><p>  t_clk=l;;;//在時(shí)鐘線的上升沿寫(xiě)入一位數(shù)據(jù)</p><p>  ACC=ACC>>1;//將高一位數(shù)據(jù)移至ACC^0</p><p><b>  }</b></p><p><b>  }</b></p><p> 

52、 unsigned char outputbyte(void)//八位數(shù)據(jù)讀出函數(shù)</p><p><b>  {</b></p><p>  unsigned char i;</p><p>  t_rst=1;//啟動(dòng)數(shù)據(jù)傳送</p><p>  for(i=8;i>0;i--)//讀出八位數(shù)據(jù),從低位到高位&

53、lt;/p><p><b>  {</b></p><p>  ACC=ACC>>1;//將前一下降沿讀出的數(shù)據(jù)右移一位,從而該次讀出的數(shù)放入Accn7</p><p>  t_io=l;腳l口輸入之前置l</p><p><b>  t_clk=l;</b></p><

54、p>  t_clk=0;;;//時(shí)鐘線下降沿讀出一位數(shù)據(jù)</p><p>  BIT7=t_io;//can not use P1^7=t_io for P1^7 not varient</p><p><b>  }</b></p><p>  retum(ACC);</p><p><b>  }&l

55、t;/b></p><p>  //將指令或數(shù)據(jù)寫(xiě)入對(duì)應(yīng)寄存器</p><p>  void wr_l302(unsigned char add,unsigned char ucda)</p><p><b>  {</b></p><p><b>  t_rst=0;</b></p&g

56、t;<p><b>  t_clk=O;</b></p><p>  t_rst=l;;;</p><p>  inputbyte(add);</p><p>  //delayl5(1);</p><p>  inputbyte(ucda);</p><p><b>  

57、t_rst=O:</b></p><p><b>  t_io=l;</b></p><p><b>  }</b></p><p>  unsigned char re_1302(unsigned char add)//賣(mài)出對(duì)應(yīng)寄存器內(nèi)容</p><p><b>  {<

58、;/b></p><p>  unsigned char ucda;</p><p><b>  t_rst=0;</b></p><p><b>  t_clk=0;</b></p><p>  t_rst=1;;;</p><p>  inputbyte(add);

59、</p><p>  //delayl5(1);</p><p>  ucda=outputbyte();</p><p><b>  t_rst=0;</b></p><p>  return(ucda);</p><p><b>  }</b></p>&l

60、t;p>  void setl302(unsigned char *pda)∥設(shè)置時(shí)間初值</p><p><b>  {</b></p><p>  unsigned char i;</p><p>  unsigned char add=0x80;</p><p>  wr_1302(0X8e,Ox00);//

61、將控制寄存器值設(shè)為零,最高位WP=0允許寫(xiě)</p><p>  for(i=7;i>0;i--)//將七個(gè)時(shí)問(wèn)初值寫(xiě)入對(duì)應(yīng)寄存器</p><p><b>  {</b></p><p>  wr_1302(add,*pda);//寫(xiě)對(duì)應(yīng)時(shí)鐘寄存器的值</p><p><b>  pda++;</b&

62、gt;</p><p><b>  add+=2;</b></p><p><b>  }</b></p><p>  wr_1302(0x8e,0x80);//寫(xiě)保護(hù),防止干擾影響時(shí)間值</p><p><b>  }</b></p><p>  vo

63、id get_l302(unsigned char curtime[])//讀取當(dāng)前時(shí)間值</p><p><b>  {</b></p><p>  unsigned chari,j;</p><p>  unsigned char add=Ox8l;</p><p>  bdata unsigned char sec

64、;</p><p>  fo(i=0;i<7;i++)</p><p><b>  {</b></p><p>  curtime[i]=re_1302(add);//讀對(duì)應(yīng)時(shí)鐘寄存器的值</p><p>  sec= curtime [i];</p><p>  j=sec>>

65、4;//將BcD碼轉(zhuǎn)化成對(duì)應(yīng)十進(jìn)制數(shù)</p><p><b>  j*=10;</b></p><p>  sec=sec&0xOf:</p><p><b>  sec+=j;</b></p><p>  curtime[i]=sec;</p><p><b> 

66、 add+=2;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  (3)運(yùn)行程序</b></p><p>  DSl302與微處理器作數(shù)據(jù)交換時(shí),首先由微處理器向芯片發(fā)送命令字節(jié),命令字節(jié)最高位MS

67、B(D7)必須為邏輯1,如果D7=0,則禁止寫(xiě)DSl302,即寫(xiě)保護(hù);D6=0,指定時(shí)鐘數(shù)據(jù),D6=1,指定RAM數(shù)據(jù);D5~D1指定輸入或輸出的特定寄存器;最低位LSB(D0)為邏輯0,指定寫(xiě)操作(輸入),D0=1,指定讀操作(輸出)。</p><p>  在DSl302的時(shí)鐘日歷或RAM進(jìn)行數(shù)據(jù)傳送時(shí),DSl302必須首先發(fā)送命令字節(jié)。若進(jìn)行單字節(jié)傳送,8位命令字節(jié)傳送結(jié)束之后,在下2個(gè)SCLK周期的上升沿輸

68、入數(shù)據(jù)字節(jié),或在下8個(gè)SCLK周期的下降沿輸出數(shù)據(jù)字節(jié)。</p><p>  要特別說(shuō)明的是備用電源B1,可以用電池或者超級(jí)電容(0.1F以上)。雖然DSl302在主電源掉電后,耗電很小,但如果要保證時(shí)鐘長(zhǎng)時(shí)間正常,最好選用小型充電電池??梢杂美鲜诫娔X主板上的3.6V充電電池。如果斷電時(shí)間較短(幾小時(shí)或幾天)時(shí),就可以用漏電較小的普通電解電容代替。100uF就可以保證l小時(shí)的正常走時(shí)。DSl302在第一次加電后,

69、須進(jìn)行初始化操作。初始化后就可以按正常方法調(diào)整時(shí)間。</p><p><b>  4總結(jié)</b></p><p>  通過(guò)這次對(duì)DS1302的數(shù)字鐘的設(shè)計(jì)與制作過(guò)程,加強(qiáng)了我們動(dòng)手、思考和解決問(wèn)題的能力。</p><p>  在設(shè)計(jì)過(guò)程中我們先后利用keil軟件進(jìn)行編程、Proteus進(jìn)行仿真、protel進(jìn)行原理圖及PCB圖的繪制,最后再利用

70、學(xué)習(xí)板進(jìn)行檢查看程序是否能顯示其功能。在過(guò)程中讓我進(jìn)一步深刻的學(xué)習(xí)各種軟件的利用以及各種軟件給我們帶來(lái)的便利。特別是proteus在沒(méi)有實(shí)物的情況下進(jìn)行仿真進(jìn)行程序的檢查看是否能現(xiàn)實(shí)功能。</p><p>  該數(shù)字鐘通過(guò)單片機(jī)AT89C52做CPU進(jìn)行總的控制,基于時(shí)鐘芯片DS1302產(chǎn)生時(shí)間,利用LCD1602進(jìn)行液晶顯示的一個(gè)簡(jiǎn)易的數(shù)字鐘。LCD1602能夠?qū)δ?、月、日、周、日、時(shí)、分、秒進(jìn)行計(jì)時(shí)及顯示。通

71、過(guò)設(shè)計(jì)后能夠熟練的掌握時(shí)鐘芯片DS1302、LCD1620、AT89C52的的各個(gè)引腳及功能,并能夠掌握和運(yùn)用這幾個(gè)芯片。</p><p>  通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中遇到問(wèn)題,可以說(shuō)得是困難重重,難免會(huì)遇到過(guò)各種各樣的問(wèn)題,

72、同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固。 這次課程設(shè)計(jì)終于順利完成了,在設(shè)計(jì)中遇到了很多專(zhuān)業(yè)知識(shí)問(wèn)題,最后在老師的辛勤指導(dǎo)下,終于游逆而解。同時(shí),在老師的身上我們學(xué)也到很多實(shí)用的知識(shí),在次我們表示感謝!同時(shí),對(duì)給過(guò)我?guī)椭乃型瑢W(xué)和各位指導(dǎo)老師再次表示忠心的感謝!</p><p><b>  參考文獻(xiàn)(資料)</b></p>

73、;<p>  [1] 張昆藏:計(jì)算機(jī)系統(tǒng)結(jié)構(gòu).北京:科學(xué)出版社,1994</p><p>  [2] 于復(fù)生,宋現(xiàn)春,艾興:時(shí)鐘芯片DSl302及其在數(shù)據(jù)記錄中的應(yīng)用.電子技術(shù)應(yīng)用,2003,(3)</p><p>  [3] 陶海敏:利用DSl302時(shí)鐘芯片實(shí)現(xiàn)“時(shí)間鎖”的方法[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2003,(3)</p><p>  [4

74、] DSl302的說(shuō)明書(shū)</p><p>  [5] 51單片機(jī)的原理與應(yīng)用</p><p>  [6] 張迎新:?jiǎn)纹瑱C(jī)初級(jí)教程——單片機(jī)基礎(chǔ)(第二版) 北京航空航天大學(xué)出版社 2006.8</p><p>  [7] 閻石:數(shù)字電子技術(shù)基礎(chǔ) (第五版) 北京高等教育出版社 2006.1~550</p><p>  [8] 蔡明文,馮

75、先成:?jiǎn)纹瑱C(jī)課程設(shè)計(jì) 華中科技大學(xué)出版社 2007.3</p><p>  [9] 陳明螢:8051單片機(jī)課程設(shè)計(jì)實(shí)訓(xùn)教材 清華大學(xué)出版社 2004</p><p>  [10]康華光:模擬電子技術(shù)基礎(chǔ)(第五版) 高等教育出版社 2006</p><p>  [11]黃智偉:全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽電路(第一版)航空航天大學(xué)出版社 2006.36</p

溫馨提示

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

評(píng)論

0/150

提交評(píng)論