硬件技術(shù)綜合課程設(shè)計(jì)基于DS1302顯示時鐘_第1頁
硬件技術(shù)綜合課程設(shè)計(jì)基于DS1302顯示時鐘_第2頁
硬件技術(shù)綜合課程設(shè)計(jì)基于DS1302顯示時鐘_第3頁
硬件技術(shù)綜合課程設(shè)計(jì)基于DS1302顯示時鐘_第4頁
硬件技術(shù)綜合課程設(shè)計(jì)基于DS1302顯示時鐘_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、硬件技術(shù)綜合課程設(shè)計(jì) 實(shí)驗(yàn)報告 題 目: ds1302 時鐘 學(xué) 院: 指導(dǎo)老師: 日 期: 試驗(yàn)對象: 姓名姓名學(xué)號學(xué)號 實(shí)驗(yàn)人員: 課程設(shè)計(jì)(論文)任務(wù)書課程設(shè)計(jì)(論文)任務(wù)書 物理科學(xué)與技術(shù)學(xué)院物理科學(xué)與技術(shù)學(xué)院 網(wǎng)絡(luò)工程網(wǎng)絡(luò)工程教研室教研室 學(xué)學(xué) 號號學(xué)生姓名學(xué)生姓名專業(yè)(班級)專業(yè)(班級) 設(shè)計(jì)題目設(shè)計(jì)題目 ds1302 時鐘 設(shè)計(jì)技術(shù)設(shè)計(jì)技術(shù) 參數(shù)參數(shù) 1.在掌握部件單元電路實(shí)驗(yàn)的基礎(chǔ)上,設(shè)計(jì)系統(tǒng)。 2.為單片機(jī)編寫相應(yīng)的控制程序,模擬上機(jī)調(diào)試 設(shè)設(shè) 計(jì)計(jì) 要要 求求 設(shè)計(jì)一個電子時鐘,并編寫相應(yīng)的軟件,完成電子時鐘的任務(wù)。該控制任務(wù)應(yīng)該完 成下列功能: 1、 電子時鐘顯示用 le

2、d 數(shù)碼管顯示,格式為:xx xx xx,由左向右分別為:時、 分、秒,比如:23 20 40 表示 23 時 20 分 40 秒,剛開始工作時應(yīng)顯示為:12 00 00; 2、 實(shí)現(xiàn)對時分秒進(jìn)行校準(zhǔn); 3、 按照分析、設(shè)計(jì)、調(diào)試和測試的軟、硬件開發(fā)過程完成這個設(shè)計(jì)任務(wù)。 工工 作作 量量 1、 可以利用兩個外部中斷實(shí)現(xiàn)對時、分、秒進(jìn)行校準(zhǔn); 2、 應(yīng)有定時中斷處理程序的編程方法。 3、 用 c 語言 c51 編譯器實(shí)現(xiàn);需給出實(shí)驗(yàn)流程圖、程序即可。 工作計(jì)劃工作計(jì)劃 1.使用 proteus 軟件仿真畫出硬件連接圖,并進(jìn)行硬件設(shè)計(jì)測試 2.編寫 c51 匯編程序,實(shí)現(xiàn)時鐘顯示及控制 參考資料

3、參考資料 單片機(jī)原理 指導(dǎo)教師簽字指導(dǎo)教師簽字教研室主任簽字教研室主任簽字 課程設(shè)計(jì)(論文)成績評定表課程設(shè)計(jì)(論文)成績評定表 指導(dǎo)教師評語: 成績: 指導(dǎo)教師: 年 月 日 摘要 本文介紹的實(shí)時時鐘芯片為 dsl302,它是 dallas 公司的一種具有涓細(xì)電流充電能力的實(shí)時 時鐘芯片,采用普通 32.768khz 晶振。主要特點(diǎn)是采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編 程的充電功能,并且可以關(guān)閉充電功能。它可以對年、月、日、星期、時、分、秒進(jìn)行計(jì)時,且具 有閏年補(bǔ)償?shù)榷喾N功能。并給出了基于 dsl302 設(shè)計(jì)的時鐘顯示在讀寫中的 c51 程序及流程圖,以 及在調(diào)試過程中的注意事項(xiàng)。

4、關(guān)鍵詞:關(guān)鍵詞:單片機(jī) ds1302 數(shù)碼管 數(shù)字鐘 1 設(shè)計(jì)目標(biāo)設(shè)計(jì)目標(biāo) .5 2 概要設(shè)計(jì)概要設(shè)計(jì) .5 21 設(shè)計(jì)目的.5 22 設(shè)計(jì)儀器.5 23 設(shè)計(jì)內(nèi)容.12 3 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì) .12 31 系統(tǒng)需求分析.12 32 系統(tǒng)目標(biāo).14 33 功能分析.14 34 詳細(xì)步驟.15 4 總結(jié)總結(jié).18 參考文獻(xiàn)(資料)參考文獻(xiàn)(資料) .19 設(shè)計(jì)背景設(shè)計(jì)背景 自古就有:“一寸光陰,一寸金”的說法。而隨著人類的進(jìn)步科學(xué)技術(shù)的發(fā)展時間觀也越來越 被人們重視,而能夠準(zhǔn)確的知道時間能夠提高人們的工作效率,能更好的在規(guī)定的時間內(nèi)完成所規(guī) 定的工作 。因此能有隨時隨地的知道當(dāng)前時間是非常重要的

5、。隨著科學(xué)技術(shù)的發(fā)展,單片機(jī)技術(shù) 的不斷完善,使得數(shù)字鐘的設(shè)計(jì)變得更加的靈便、更加簡單、功能更加的完善、計(jì)時也更加的準(zhǔn) 確。本設(shè)計(jì)實(shí)用簡單,設(shè)計(jì)方便,計(jì)時準(zhǔn)確, 能夠?qū)δ?、月、日、周、日、時、分、秒 進(jìn)行準(zhǔn) 確的計(jì)時,可以讓人們隨時知道時間。 1 設(shè)計(jì)目標(biāo)設(shè)計(jì)目標(biāo) 本設(shè)計(jì)主要實(shí)現(xiàn)電子時鐘顯示用 led 數(shù)碼管顯示,格式為:xx xx xx,由左向右分別為: 時、分、秒,比如:23 20 40 表示 23 時 20 分 40 秒,剛開始工作時應(yīng)顯示為:12 00 00,并且要實(shí) 現(xiàn)對時分秒進(jìn)行校準(zhǔn)。 2 概要設(shè)計(jì)概要設(shè)計(jì) 21 設(shè)計(jì)目的設(shè)計(jì)目的 本設(shè)計(jì)利用 at89c52 的特點(diǎn)及 ds1302

6、 的特點(diǎn),提出一種基 ds1302 單片機(jī)控制,再利用 數(shù)碼管顯示的數(shù)字鐘。 本系統(tǒng)硬件利用 at89s52 作為 cpu 進(jìn)行總體控制,通過 ds1302 時鐘芯片 獲取準(zhǔn)確詳細(xì)的時間(年、月、日、周、日、 時、分、秒 準(zhǔn)確時間) ,對時鐘信號進(jìn)行控制,同 時利用液晶顯示芯片 lcd1602 對時間進(jìn)行準(zhǔn)確顯示年、月、日、周、日、時、分、秒 。該數(shù)字 鐘硬件電路簡單,使用靈活,功能穩(wěn)定,顯示準(zhǔn)確且無論對于社會或者科研也有一定的研究價值。 22 設(shè)計(jì)設(shè)計(jì)儀器儀器 根據(jù)系統(tǒng)設(shè)計(jì)結(jié)構(gòu)圖來對每個部分的電路進(jìn)行分析和說明,重點(diǎn)講述微控制器 at89s52、數(shù)碼 管顯示模塊、實(shí)時時鐘芯片 ds1302。

7、 2.2.1 mcu 微控制器電路微控制器電路 at89s52 的塑封圖如圖 2.1 所示,它為 dip40 雙列直插塑料封裝。at89s52 作為系統(tǒng)的核心控制元件,只有它 能正常工作后才能使其它的元件進(jìn)入正常工作狀態(tài)。因此,下面對 at89s52 進(jìn)行必要的說明,at89s52 的管腳如圖 2.2 所示。 圖 2.1 at89c52 封裝圖 圖 2.2 at89c52 引腳圖 1)vcc:40 腳,供電電壓,一般接+5v 電壓。 2)gnd:20 腳,接工作地。 3)p0 口:18 腳,p0 口是一個 8 位漏極開路的雙向 i/o 口。作為輸出口,每位能驅(qū)動 8 個 ttl 邏輯電平。對

8、p0 端口寫“1”時,引腳用作高阻抗輸入。 當(dāng)訪問外部程序和數(shù)據(jù)存儲器時,p0 口也被作為低 8 位地址/數(shù)據(jù)復(fù)用。在這種模式下,p0 具有內(nèi)部上電阻。但是 p0 口在程序校驗(yàn)作為輸出指令字節(jié)時,需要外部加上拉電阻,一般上拉電阻選 4.7k10k 為宜。本設(shè)計(jì)中用 5.1k 的排阻對 p0 口進(jìn)行上拉電平。 4)p1 口:3239 腳,p1 口是一個內(nèi)部具有上拉電阻的 8 位雙向 i/o 口,p1 口緩沖器能接收輸出 4 個 ttl 門電流。 p1 端口寫入“1”后,被內(nèi)部上拉電阻把端口拉高,此時可以作為作輸入口使用。作為輸入使用時,被外部拉低的 引腳由于內(nèi)部電阻的原因,將輸出電流。 5)p2

9、 口:2027 腳,p2 口是一個具有內(nèi)部上拉電阻的 8 位雙向 i/o 口,p2 輸出緩沖器能驅(qū)動 4 個 ttl 邏輯電 平。對 p2 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。6)p3 口:1017 腳,p3 口是 一個具有內(nèi)部上拉電阻的 8 位雙向 i/o 口,p3 輸出緩沖器能驅(qū)動 4 個 ttl 邏輯電平。對 p3 端口寫“1”時,內(nèi) 部上拉電阻把端口拉高,此時可以作為輸入口使用。 7)reset:9 腳,復(fù)位輸入端。當(dāng)振蕩器復(fù)位器件時,要保持 rst 腳兩個機(jī)器周期的高電平時間。 8):30 腳,當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字

10、節(jié)。在 flash 編程 pale / 期間,此引腳用于輸入編程脈沖。在平時,ale 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的 1/6。因此它可用作對外部輸出的脈沖或用于系統(tǒng)校驗(yàn)。 9)psen:29 腳,外部程序存儲器的選通信號。 10):31 腳,訪問外部程序存儲器控制信號。當(dāng)為低電平時,讀取外部程序存儲器;當(dāng)端為 vprst /eaea 高電平時,則讀取內(nèi)部程序存儲器,設(shè)計(jì)中一般接高電平。 11)xtal1:19 腳,振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。如采用外部時鐘源時,xtal1 為輸入端。 12)xtal2:18 腳,振蕩器反相放大器的輸出端。如采用外部時鐘源

11、時,xtal2 應(yīng)懸空不接。 2.2.2 lcd 液晶顯示液晶顯示電路電路 液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在各種小系統(tǒng)中得到 了更廣泛的應(yīng)用。本設(shè)計(jì)中使用的液晶顯示模塊是 lcd1602。圖 2.3 所示為本設(shè)計(jì) lcd1602 的連接 圖。 圖 2.3 lcd1602 連接圖 lcd1602 是一種用 5x7 點(diǎn)陣圖形來顯示字符的液晶顯示器模塊,它顯示的容量為 2 行 16 個字。其 實(shí)物如圖 2.4 和圖 2.5 所示,它的顯示內(nèi)容豐富、體積小、美觀和易于控制都是本設(shè)計(jì)選擇作為顯 示模塊的原因。其引腳結(jié)構(gòu)圖如圖 2.6 所示。 圖圖 2.42.4 lcd1

12、602lcd1602 正面圖正面圖 圖圖 2.52.5 lcd1602lcd1602 反面圖反面圖 圖圖 2.62.6 lcd1602lcd1602 引腳結(jié)構(gòu)圖引腳結(jié)構(gòu)圖 關(guān)于 lcd1602 的引腳說明如下: 1)第 1 腳:gnd 為地電源。 2)第 2 腳:vcc 接+5v 電源。 3)第 3 腳:vee 為液晶顯示器對比度調(diào)整端。接+5v 電源時對比度最弱,接地電源時對比度最高,對比度過高時會 產(chǎn)生“鬼影” ,使用時可以通過一個 10k 的精密電位器調(diào)整對比度,一般對比電壓為 0.7v 左右。 4)第 4 腳:rs 為寄存器選擇。高電平時選擇數(shù)據(jù)寄存器,否則選擇指令寄存器。 5)第 5

13、 腳:為讀寫信號線。高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng) rs 和共同為低電平時可以 rwrw 寫入指令或者顯示地址,當(dāng) rs 為低電平為高電平時可以讀出忙信號,當(dāng) rs 為高電平為低電平時可以寫 rwrw 入數(shù)據(jù)。 6)第 6 腳:e 端為使能端。當(dāng) e 端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。 7)第 714 腳:d0d7 為 8 位雙向數(shù)據(jù)線。 8)第 15 腳:背光燈 vcc,一般直接和+5v 電源相連接。 9)第 16 腳:背光燈 gnd。 lcd1602 液晶模塊內(nèi)部的字符發(fā)生存儲器已經(jīng)存儲了 160 個不同的點(diǎn)陣字符圖形,這些字符圖有:阿拉伯?dāng)?shù) 字、英文字母的大小寫、常

14、用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母 “a”的代碼是 01000001b(41h) ,顯示時模塊把地址 41h 中的點(diǎn)陣字符圖形顯示出來,我們就能看到字母“a” 。 lcd1602 液晶模塊內(nèi)部的控制器共有 11 條控制指令,如表 2.8 所示。 指令 rsr/wd7d6d5d4d3d2d1d0 清顯示 0000000001 光標(biāo)返回 000000001* 置輸入模式 00000001i/ds 顯示開/關(guān)控制 0000001dcb 光標(biāo)或字符移位 000001s/cr/l* 置功能 00001dlnf* 置字符發(fā)生存貯器地址 0001 字符發(fā)生存貯器地址 置

15、數(shù)據(jù)存貯器地址 001 顯示數(shù)據(jù)存貯器地址(add) 讀忙標(biāo)志或地址 01bf 計(jì)數(shù)器地址(ac) 寫數(shù)到 cgramd 或 dram 10 要寫的數(shù) 從 cgramd 或 dram 讀數(shù) 11 讀出的數(shù)據(jù) 它的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實(shí)現(xiàn)的(說明:1 為高電平,0 為低電平) 。 指令 1:清顯示,指令碼 01h,光標(biāo)復(fù)位到地址 00h 位置。 指令 2:光標(biāo)復(fù)位,光標(biāo)返回到地址 00h 。 指令 3:光標(biāo)和顯示模式設(shè)置 i/d:光標(biāo)移動方向,高電平右移,低電平左移 。s:屏幕上所有文字是否左移 或者右移。高電平表示有效,低電平則無效 。 指令 4:顯示開關(guān)控制。 d:控

16、制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示。 c:控制光 標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo)。 b:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍 。 指令 5:光標(biāo)或顯示移位 s/c:高電平時移動顯示的文字,低電平時移動光標(biāo) 。 指令 6:功能設(shè)置命令 dl:高電平時為 4 位總線,低電平時為 8 位總線。 n:低電平時為單行顯示, 高電平時雙行顯示。 f:低電平時顯示 5x7 的點(diǎn)陣字符,高電平時顯示 5x10 的點(diǎn)陣字符 (有些模塊是 dl:高電 平時為 8 位總線,低電平時為 4 位總線) 。 指令 7:字符發(fā)生器 ram 地址設(shè)置 。 指令 8:ddram 地址設(shè)

17、置 。 指令 9:讀出忙信號和光標(biāo)地址。 bf 為忙標(biāo)志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為 低電平表示不忙,模塊就能接收相應(yīng)的命令或者數(shù)據(jù)。 指令 10:寫數(shù)據(jù) 。 指令 11:讀數(shù)據(jù) 。 液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志位是不是為低電平,是 低電平則表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符。表 2.9 為 lcd1602 的內(nèi)部顯示地址。 表 2.9 lcd1602 的內(nèi)部顯示地址 2.2.3 實(shí)時時鐘電路實(shí)時時鐘電路 本設(shè)計(jì)使用的實(shí)時時鐘電路芯片是美國 dallas 公司生產(chǎn)的一種

18、高性能、低功耗、帶 ram 的實(shí)時時鐘電路芯片 ds1302,其引腳如圖 2.11 所示。vcc1 為后備電源,vcc2 為主電源。在主 電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運(yùn)行。ds1302 由 vcc1 或 vcc2 兩 者中的較大 者供電;當(dāng) vcc2 大于 vcc10.2v 時,vcc2 給 ds1302 供電; 當(dāng) vcc2 小于 vcc1 時,ds1302 由 vcc1 供電。x1 和 x2 是振蕩源,外接 32.768khz 晶振。是復(fù)位/片選線,通過把輸 入驅(qū)動置高電 rstrst 平來啟動所有的數(shù)據(jù)傳送。 圖 2.11 ds1302 引腳圖 輸入有兩種功能。首先,接通控制邏輯

19、,允許地址/命令序列送入移位寄存器;其rstrst 次,提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)為高電平時,所有的數(shù)據(jù)傳送被初始rstrst 化,允許對 ds1302 進(jìn)行操作。如果在傳送過程中置為低電平,則會終止此次數(shù)據(jù)傳送,i/orst 引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時在 vcc2.5v 之前,必須保持低電平。只有在 sclk 為低電平時,rst 才能將置為高電平。i/o 為串行數(shù)據(jù)輸入輸出端(雙向),sclk 始終是輸入端。本設(shè)計(jì)入端。rst 本設(shè)計(jì)連接圖如圖 3.15 所示,其中 c1 和 c2 起微調(diào)晶振的作用。 ds1302 接線圖 2.2.4 復(fù)位電路復(fù)位電路 在 at89s52 單片

20、機(jī)中的振蕩器運(yùn)行時,引腳上保持到少 2 個機(jī)器周期的高電平輸入信號,rst 復(fù)位過程即可完成。根據(jù)此原理,本設(shè)計(jì)采用上電復(fù)位和按鍵復(fù)位嵌套在系統(tǒng)中,增強(qiáng)了系統(tǒng)的實(shí) 用性。本設(shè)計(jì)的具體復(fù)位圖如下。 2.2.5 晶振電路晶振電路 at89s52 在工作時需要外部提供時鐘信號,因此,本設(shè)計(jì)選擇在其 18 腳 19 腳之間接上 12mhz 的晶振,為單片機(jī)提供 1s 的機(jī)器振蕩周期。其電路連接圖如圖所示。在圖中,電容器 c3.c4 起 穩(wěn)定振蕩頻率、快速起振的作用,其電容值一般在 2050pf 23 設(shè)計(jì)內(nèi)容設(shè)計(jì)內(nèi)容 根據(jù)系統(tǒng)設(shè)計(jì)的要求和設(shè)計(jì)思路,確定該系統(tǒng)的系統(tǒng)設(shè)計(jì)結(jié)構(gòu)圖。如圖 2.12 所示。硬件

21、電路 主要由 mcu 微處理控制器單元、ds1302 時鐘電路、儲存器、復(fù)位電路、晶振電路、數(shù)碼管顯示模 塊構(gòu)成。 圖 2.12 系統(tǒng)結(jié)構(gòu)圖設(shè)計(jì) 3 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì) 31 系統(tǒng)需求分析系統(tǒng)需求分析 根據(jù)設(shè)計(jì)要求,結(jié)合實(shí)際情況和設(shè)計(jì)成本要求,對系統(tǒng)主要部分的電路方案敘述如下: 3.1.1 mcu 微處理控制器的方案對比選擇微處理控制器的方案對比選擇 方案一:mcu 微處理控制器的種類很多,有 atmel 公司生產(chǎn)的 at89sxx 系列單片機(jī),其中有 8 位的單片機(jī),也有 16 位的單片機(jī)。at89s52 為 8 位的單片機(jī),它是一種低損耗、高性能的 cmos 微 處理器,片內(nèi)有 8k 字節(jié)的

22、存儲空間,128 字節(jié) ram、4 個 8 位并口、1 個全雙工串行口、2 個 16 位 定時/計(jì)數(shù)器,尋址范圍 64k。并且可以在線進(jìn)行重復(fù)編程、快速擦除、快速寫入程序,能重復(fù)擦 除 / 寫入 1000 次左右,數(shù)據(jù)保存時間為十年。 方案二:微處理控制器也有凌陽公司生產(chǎn)的,同樣有 8 位的 cpu 和 16 位的 cpu。它也有很多 特點(diǎn),比如:體積小 、集成度高、可靠性好、易于擴(kuò)展;具有較強(qiáng)的中斷處理能力;功能強(qiáng)、效 率高的指令系統(tǒng)及低功耗、低電壓。但是其應(yīng)用領(lǐng)域主要是為控制處理數(shù)據(jù)處理以及數(shù)字信號處理 等領(lǐng)域,其中凌陽的 16 位單片機(jī)就是為適應(yīng)這種發(fā)展而設(shè)計(jì)的。 綜上所述,在本設(shè)計(jì)中,

23、考慮到本人對單片機(jī)的運(yùn)用熟練度和單片機(jī)的功能領(lǐng)域,選擇 atmel 公司生產(chǎn)的 at89s52 單片機(jī)作為本設(shè)計(jì)的微控制器。 3.1.2 lcd 液晶顯示模塊的方案對比選擇液晶顯示模塊的方案對比選擇 方案一:顯示的方法有很多種,其中 led 數(shù)碼管是常用的一種顯示方法。在這個設(shè)計(jì)中,可 以用 led 數(shù)碼管來顯示相應(yīng)站臺的站號,提醒司機(jī)知道是去向或者是回向的第幾站,讓司機(jī)心里有 數(shù),同時增加顯示數(shù)字的可讀性。該設(shè)計(jì)中,顯示站號至少要 2 個 led 數(shù)碼管,顯示時間信息要 12 個,顯示星期信息要 1 個,總共需要 15 個 led 數(shù)碼管。單價是 1.2 元,那 15 個共需要 151.2=

24、18(元) 。另外在 pcb 布線過程中很困難,給設(shè)計(jì)帶來很不方便的使用。 方案二:lcd1602 液晶顯示器是一塊價廉物美的器件,其體積小,控制簡單,使用方便。它能 顯示 2 行 16 列的數(shù)字或英文信息,另外連接它的線很少,只要 8 根數(shù)據(jù)線和 3 根控制線,這樣給 使用帶來很大的方便,節(jié)約單片機(jī) i/o 口。市場上一塊 lcd1602 的價格也只在 15 元左右,比數(shù)碼 管便宜。 方案三:功能強(qiáng)大、可以顯示中文文字的 lcd12864 液晶顯示器,其價格貴,體積大,控制比 lcd1602 稍微復(fù)雜點(diǎn),但是使用也是很方便的。在控制使用上,需要 8 根數(shù)據(jù)線和 3 根控制線,其 余的 psb

25、、和 bla 直接與 vcc 相連接。但是在本設(shè)計(jì)中使用它的性價比不高,體積大,占用覆rst 銅板面積大,而且笨拙。 綜上所述,在 lcd 液晶顯示模塊上,選擇方案二中的 lcd1602 液晶顯示器作為本設(shè)計(jì)的顯示 模塊。顯示時間年、月、日、周、日、時、分、秒 。 3.1.3 實(shí)時時鐘電路的方案對比選擇實(shí)時時鐘電路的方案對比選擇 方案一:ds1302 是美國 dallas 公司推出的一種高性能、低功耗、帶 ram 的實(shí)時時鐘電路芯 片,它可以對年、月、日、星期、時、分、秒進(jìn)行計(jì)時,具有閏年補(bǔ)償功能,工作電壓為 2.5v5.5v。采用三線接口與 cpu 進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個

26、字節(jié)的時鐘信號 或 ram 數(shù)據(jù)。ds1302 內(nèi)部有一個 318 的用于臨時性存放數(shù)據(jù)的 ram 寄存器。ds1302 是有主電源/ 后背電源雙電源引腳,可以同時對后背電源進(jìn)行涓細(xì)電流充電。 方案二:ds12887 也是是美國 dallas 半導(dǎo)體公司最新推出的串行接口實(shí)時時鐘芯片,采用 cmos 技術(shù)制成,內(nèi)部具有晶振和時鐘芯片備份鋰電池。采用 ds12887 芯片設(shè)計(jì)的時鐘電路無需任 何外圍電路和器件,并具有良好的微機(jī)接口。ds12887 芯片具有微功耗、外圍接口簡單、精度高、 工作穩(wěn)定可靠等優(yōu)點(diǎn),可廣泛用于各種需要較高精度的實(shí)時時鐘系統(tǒng)中。但是由于它是串行接口的, 外接單片機(jī)需要接很多

27、引腳,才能對它達(dá)到一個很好的控制。 綜上所述,結(jié)合本設(shè)計(jì)的實(shí)際問題及單片機(jī)的 i/o 口線,選擇方案一中的 ds1302 作為本設(shè)計(jì) 的實(shí)時時鐘電路的芯片。其控制方便、占單片機(jī) i/o 口線少、體積小、價格便宜,方便本設(shè)計(jì)的使 用。 32 系統(tǒng)目標(biāo)系統(tǒng)目標(biāo) 本設(shè)計(jì)主要實(shí)現(xiàn)電子時鐘顯示用 led 數(shù)碼管顯示,格式為:xx xx xx,由左向右分別為: 時、分、秒,比如:23 20 40 表示 23 時 20 分 40 秒,剛開始工作時應(yīng)顯示為:12 00 00,并且要實(shí) 現(xiàn)對時分秒進(jìn)行校準(zhǔn)。 33 功能分析功能分析 主程序 系統(tǒng)的主程序設(shè)計(jì)是用來控制整個系統(tǒng)運(yùn)行時的時序工作狀態(tài),因此,完善的程序

28、設(shè)計(jì)是本設(shè) 計(jì)的重點(diǎn)內(nèi)容。下圖是是本設(shè)計(jì)使用的主程序設(shè)計(jì)流程圖。 以下是程序主程序的一下部分: org 00h ajmp start ;= org 0050h start: mov sp,#70h lcall initialze ;調(diào)用初始化液晶屏幕 lcall init_p ;調(diào)用初始畫面 mov a, #00000001b ;清液晶屏,寫成空白 lcall write_com ;=主程序= main: lcall rd_ds1302 lcall data_buf lcall display ajmp main 34 詳細(xì)步驟詳細(xì)步驟 (1)按圖 4-1 連接實(shí)驗(yàn)線路。 (2)寫程序 #in

29、clude”intrins.h” sbit t_clk=p33; sbit t_io=p34; sbit rst_p35; sbit bit7=acc7; sbit bito=acco; void inputbyte(unsigned char ucda)/八位數(shù)據(jù)寫入函數(shù) unsigned char i; acc=ucda;/將要寫入的數(shù)放入 acc t_rst=l;/啟動數(shù)據(jù)傳送 for(i=8;i0;i-)/循環(huán)八次,寫入八位數(shù)據(jù),從低位到 t_io=bit0;/將 accn0 的值賦給時鐘數(shù)據(jù)線 t_clk=0; t_clk=l;/在時鐘線的上升沿寫入一位數(shù)據(jù) acc=acc1;/將高

30、一位數(shù)據(jù)移至 acc0 unsigned char outputbyte(void)/八位數(shù)據(jù)讀出函數(shù) unsigned char i; t_rst=1;/啟動數(shù)據(jù)傳送 for(i=8;i0;i-)/讀出八位數(shù)據(jù),從低位到高位 acc=acc1;/將前一下降沿讀出的數(shù)據(jù)右移一位,從而該次讀出的數(shù)放入 accn7 t_io=l;腳 l 口輸入之前置 l t_clk=l; t_clk=0;/時鐘線下降沿讀出一位數(shù)據(jù) bit7=t_io;/can not use p17=t_io for p17 not varient retum(acc); /將指令或數(shù)據(jù)寫入對應(yīng)寄存器 void wr_l302(

31、unsigned char add,unsigned char ucda) t_rst=0; t_clk=o; t_rst=l; inputbyte(add); /delayl5(1); inputbyte(ucda); t_rst=o: t_io=l; unsigned char re_1302(unsigned char add)/賣出對應(yīng)寄存器內(nèi)容 unsigned char ucda; t_rst=0; t_clk=0; t_rst=1; inputbyte(add); /delayl5(1); ucda=outputbyte(); t_rst=0; return(ucda); voi

32、d setl302(unsigned char *pda)設(shè)置時間初值 unsigned char i; unsigned char add=0 x80; wr_1302(0x8e,ox00);/將控制寄存器值設(shè)為零,最高位 wp=0 允許寫 for(i=7;i0;i-)/將七個時問初值寫入對應(yīng)寄存器 wr_1302(add,*pda);/寫對應(yīng)時鐘寄存器的值 pda+; add+=2; wr_1302(0 x8e,0 x80);/寫保護(hù),防止干擾影響時間值 void get_l302(unsigned char curtime)/讀取當(dāng)前時間值 unsigned chari,j; unsig

33、ned char add=ox8l; bdata unsigned char sec; fo(i=0;i4;/將 bcd 碼轉(zhuǎn)化成對應(yīng)十進(jìn)制數(shù) j*=10; sec=sec0 xof: sec+=j; curtimei=sec; add+=2; (3)運(yùn)行程序 1dsl302 與微處理器作數(shù)據(jù)交換時,首先由微處理器向芯片發(fā)送命令字節(jié),命令字節(jié)最高位 msb(d7)必須為邏輯 1,如果 d7=0,則禁止寫 dsl302,即寫保護(hù);d6=0,指定時鐘數(shù)據(jù),d6=1,指 定 ram 數(shù)據(jù);d5d1 指定輸入或輸出的特定寄存器;最低位 lsb(d0)為邏輯 0,指定寫操作(輸入), d0=1,指定讀操

34、作(輸出)。 2在 dsl302 的時鐘日歷或 ram 進(jìn)行數(shù)據(jù)傳送時,dsl302 必須首先發(fā)送命令字節(jié)。若進(jìn)行單字 節(jié)傳送,8 位命令字節(jié)傳送結(jié)束之后,在下 2 個 sclk 周期的上升沿輸入數(shù)據(jù)字節(jié),或在下 8 個 sclk 周期的下降沿輸出數(shù)據(jù)字節(jié)。 3要特別說明的是備用電源 b1,可以用電池或者超級電容(0.1f 以上)。雖然 dsl302 在主電 源掉電后,耗電很小,但如果要保證時鐘長時間正常,最好選用小型充電電池??梢杂美鲜诫娔X主 板上的 3.6v 充電電池。如果斷電時間較短(幾小時或幾天)時,就可以用漏電較小的普通電解電容 代替。100uf 就可以保證 l 小時的正常走時。dsl302

溫馨提示

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

評論

0/150

提交評論