




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、學號1109111029畢業(yè)論文(設計)課題基于單片機的數字時鐘設計學生姓名院 部電氣工程學院專業(yè)班級2011級自動化(1) 班指導教師二o 五年四月目錄第一章緒論11.1數字吋鐘設計的背景11.2集成電路11.3課題來源1第二章時間計數原理22. 1吋鐘計吋的方案選擇22.2吋鐘敁示的方案選擇2第三章系統的硬件設計43.1硬件的整體設計43. 2主控制模塊的方案選擇和設計43. 2. 1爭片機stc89c52簡介43.3吋鐘模塊的方案選擇與設計73. 3. 1ds12887時鐘芯片簡介73. 3. 2時鐘模塊電路93. 4按鍵電路的設計103.5顯示模塊的方案設計103.5. 1圖形點陣液晶
2、顯示器103. 5. 2顯不模塊電路126通信模塊電路方案選擇設131通信電路設計13第四章系統軟件設計144.1匯編語言的選擇144.2系統主程序及流程圖144.3 ds12887時鐘芯片的讀操作流程154液晶模塊的寫操作流程圖164. 5按鍵調整模塊流程圖174. 6通信模塊流程圖17第五章實驗與調試195. 1硬件測試195.2軟件調試195. 3實物凋試20總結22轉» 23 24插圖清單圖3-1系統硬件設計框圖4圖 3-2stc89c52 pdtp 管腳封裝5圖 3-3stc89c52 結構圖6閣3-4單片機的最小系統結構閣7圖3-524個引腳圖8圖3-6吋鐘模塊電路9圖3
3、-7按鍵電路10圖3-8顯示模塊13閣3-9通信電路13圖4-1主程序流程圖15圖4-2ds12887吋鐘芯片的讀操作流程圖15圖4-3吋間姑不流程圖16圖4-4時間調整顯示流程圖16閣4-5按鍵調整模塊流程閣17圖4-6主機端通信子程序流程圖18圖4-7從機端通信子程序流程圖18圖5-1整體電路實物圖19圖5-2測試程序顯示結來20閣5-3正確程序顯示結果20圖5-4按鍵調整敁示21表格清單表3-1液晶模塊12864的管腳說明11表3-2字符顯示ram在液晶模塊中的地址表12基于單片機的數字時鐘設計摘要最近幾年,單片機在許多地方都得到了廣泛的使用。不管是在在工業(yè)生產中或者 是生活中,很多產品
4、都是由單片機進行控制的。其由于體積小,低功耗,高性能,廣 泛受到人們的喜愛單片機作為這些設備的核心,再相應的外圍設備(液晶敁示器,鍵盤電路,復位 電路,報警電路)結合,再使用相關的軟件來設計一個數字吋鐘,數字時鐘在我們的 閂常生活中的應用是非常廣泛的,到處都是,可謂是無處不在。上班要看吋間,開會 要看時間,工、ik生產要看時間,所以我們對于時間的把握可謂非常重要。本次設計的數字吋鐘要求能夠顯示實吋吋鐘,能夠顯示年、只、f1、吋、分、秒 以及實吋氣溫還能夠冇遠程通信的功用。在這些中硬件部分中最困難的地方就在于元 器件的篩選、排版以及線路的焊接上。關鍵字:單片機;數字時鐘;定時design of
5、digital clock based on mcuabstractin recent years,scm has been applied in many fields. whether in industry or in life, many products are controlled by the microcontroller. scm to its small size,low power consumption and high performance widely loved by the people.this paper combined with a microcont
6、roller core some related peripheral devices (lcd, keypad circuit,reset circuit,alarm circuit) and use the appropriate software to achieve the purpose of making a digital clock,a digital clock in our daily lives application is very wide,it can be everywhere. time to look for work,meetings depends on
7、time, industrial production depends on time,so we can be described as a very important time for sure.the design of the digital clock requires the ability to display real-time clock, can display year, month, day,hour,minute,second,and real-time temperature also features remote communications. difficu
8、lties in the hardware part is that the selection,placement and soldering components.keywords: single-chip-microcontroller. ; digital clock; timing第一章緒論1.1數字時鐘設計的背景單機最早是在1976年由inter公句開發(fā)的mcs-48 7t姑的。但當時的單片機 發(fā)展的不太成熟,然后經過二十多年的發(fā)展單片機已經具有價格低、性能好、體積小、 方便使用等一系列優(yōu)點。丼且十分廣泛的運用在我們的生活生產的各個環(huán)節(jié)。很多半 導體芯片生產廠家都是從inter公句
9、得到8051內核的核心技術,這里而有atmel公 司、philips公司等。所以,這些公句所生產出來的單片機的引腳及指令系統可以說 都是互通的。從目前來看我們把這些微控制器可分為基本型,增強型,低功率型,特 殊型,led閃存型和超8位型。本文論述了數字時鐘是單片機作為編程定時系統的核心與外圍設備的配置不僅 可以滿足需求,還可以擴展很多功能,在實踐領域有著廣泛的應用。1.2集成電路本次設計我們要用到集成電路,它是一種微型的電子器件,這里而每一個芯 片所集成的元件舒叫集成度,規(guī)模小的集成度的限度是1100,規(guī)模屮等的集成電 路的集成度是1001000,規(guī)模大的集成電路的集成度范圍是10001000
10、00,最后 集成度大于1000000為極大規(guī)模的集成電路。集成電路的體積小,引線焊接點少,成本高,性能也可靠,廣泛應用于衛(wèi)星, 彈道導彈,移動電話,液晶顯示。所以無論是生活還是生產環(huán)節(jié)都離開不了集成 電路。1.3課題來源在生活屮,工作屮,我們通常會使用定時控制,如在打印過程屮,曝光時間 等。早期的控制單位的做法是用模擬電路來設計和生產的,所以復制的準確度和 精密度不是很好,但是經過發(fā)展,到了現在基本上都是在數字技術的基礎上的新 一代產品。伴隨單片機性能的越來越好,價格也越來越便宜,新一代的應用就會 越來越多,大到可以構成比較復雜的工業(yè)過程控制系統,滿足復雜的控制功能。 小到可以在家電控制,兒童
11、的玩具中進行應用。它的體積小,性能好,穩(wěn)定性高, 使用方便,再配上相應的接口芯片就可以構成各種各樣的小型電子產品。最近幾年電子技術得到了飛速的發(fā)展,家用電器盒電子設備的使用也越來越 多,但是每個設備都冇自己的控制器,這樣就會給我們的使用帶來很大的不方便。 就與此,設計一個基于單片機的定吋系統就可以改善這種不方便的狀況。我們使 用一個控制器來控制多個電器,也可以進行時鐘校正和定點報警,還吋以任意設 定時間。這種根據人們的實際需要設計的智能產品可以給我們的生活帶來很大的 方便。第一早時間計數原理我們知道數字信號是單片機的接口信號,如果我們要以單片機來得到這些非電信 號的一些相關參數,那么就要用到芯
12、片,把時間信號轉變?yōu)殡娏鞯姆绞揭部梢赞D變成 電壓輸出的方式。但是一旦發(fā)現轉變之后我們看到的電流或者是電壓輸出時模擬信號 的話,那么我們還耍完成下一步,那就是還要采取a/d轉換,從而達到單片機的接口 需耍的條件。如果是數字倍號,那么我們就不用那么麻煩,不需耍任何處理就能夠送 到單片機處理。2.1時鐘計時的方案選擇第一種方案:相對以前老式的基于單片機的數字時鐘的設計選用的是在里面的 晶振來產生脈沖,緊接著再經過內部的計時器通過分頻來得到秒脈沖,接著再用軟件 編程實現時鐘的顯示來說,此方案的特點就在于它的外圍器件比較少,電路結構也非 常簡單和清晰,焊接也會相對來說比較容易一點,所以出現問題的概率就會
13、比較小。 不過這屮設計方案也有它自己的缺點,例如該方案要用軟件編程來得到秒脈沖,還有 就是編程會復雜一點,這樣就會對排除故障帶來不方便。此外還有便是由單片機的內 部時鐘而得到的秒脈沖因為遭到溫漂和所在程序實行的時候所產生的副作用,從ku會 對計時有著一定的影響。此外, 這個方案的另一個耍求就是此次設計所用的 晶振一定耍通過分頻來得到秒秒沖。 最后,尚有一個很大的缺陷:如果發(fā)生 單片機斷電,那么這時的時間計時就會立即停止計時,這樣通電后進行新的計時的時 候就耍重新調整時間,從而使得會非常不方便。第二種方案:對在一些老式的基于單片機的數字時鐘的設計進行一些修改和增 加或刪減一些東酉,然后再加入12
14、887的時間芯片,這樣,電路的控制部分和計時部 分就會分離丌來,在這其中,所用的12887時間芯片的內部有一個鍶電池,這樣就會 給時鐘的操作帶來很大的方便,還冇就是這樣設計方案會史加環(huán)保,當耍觀察的時候 例如h間時給主電路供電,當在晚間時將主電路進行斷電,從而就會節(jié)右很多電能。綜上所述,后一種方案會比較準確并且電路的硬件設計不是很難,軟件設計也 是比較簡單,所以最后我選擇了后一種方案。2.2時鐘顯示的方案選擇第一種方案:時鐘顯示將用多位七段led數碼管。其屮七段led數碼管的顯示 消耗的能量會比較多,丼且位數也是冇限制的,當我們需耍加一位就會使得程序的設 計及硬件設計方而增加許多困難以及消耗時
15、間,就會給電路的擴展帶來麻煩,還有就 是不能夠顯示年、月、h、星期,這樣就不夠直接。不過這種方案的性價比很高然后 就是價格也相對便宜。第二種方案:使用點陣式數碼管。八行八列的發(fā)光二極管是點陣式數碼管的最主 耍的特色,設計之屮字符的顯示相對較少,還有就是這種方案損耗的能量比較多,不 能夠滿足現代節(jié)能的耍求,這樣就不能用這種顯示。第三種方案:使用lcd液晶顯示器進行顯示。用led液晶顯示,這樣耗能就會 比較少,也可以進行年、月、口、星期等的顯示,這種方案在顯示的方面會比較靈活。 能夠在不改變電路的情況下,能夠把電路的擴展變得相對容易。還宥,該設計的硬件 也相對比較簡單。但是這種方案的不足就是顯示的
16、位數少,費用也會較貴。將上述的三種方案進行比較可以看出來第三種方案比較適合,它的顯示很靈活, 便于電路的擴展,無論是軟件設計和硬件設計相對來說都簡單一點?;诖?,我的這次設計將用獨立計時以及使用時鐘芯片12887的設計方案和選用 lcd液晶顯。第三章系統的硬件設計基于實時時鐘所需要的功用,在采用單片機的設計的基礎上,我們可以選用集成 的時鐘芯片,從而完成記錄實時數據的要求,并且在同一時刻記錄下實現的數裾和 呈現這類數據的時間。實時時鐘的要求:(1) 基本的要求a)具有顯示年、月、口、星期、時、分、秒等功能;具備年、月、口、星期、時、分、秒校準的功能;具備遠程通信的功能(2) 創(chuàng)新的要求能夠對時
17、鐘進行及時的掌控,而后還可以利用遠程電腦對時間校準和讀取,從而 達到遠程操縱和掌控。3.1硬件的整體設計主控芯片使用的是stc89c52單片機,它內置電池使用時鐘ds12887作為時鐘 芯片。我們?yōu)榱擞嫊r的精準,所以使用ds12887為主要的時鐘芯片。整個體系是由 主控制器stc89c52、時鐘芯片ds1302、鍵掃描電路、lcd液晶顯示電路以及通信 系統模塊電路構成的。設計框圖如圖3-1所示。閣3-1系統硬件設計框閣3.2主控制模塊的方案選擇和設計我們要使系統的設計得到成功,就要既能夠選用數字電路同時也要能夠選取單 片機來實現。如果采用前者,那么它的電路設計就會比較麻煩,它的功用也必須要依
18、靠數字電路的各個模塊來得以實現。如果采用后者,w為它是通過軟件編程來實現其 主要功能的,所以這種設計就會必然降低其電路的復雜程度。再有就是這樣的畢業(yè)設 計所用到的軟件程序會比較容易,所以就能夠不必用到功能強的單片機,只需相對功 能比較少的單片機就行。所以我選擇了 stc89c52單片機。3.2.1單片機stc89c52簡介我采用的stc89c52單片機是電壓比較低以及具有功能較高的cm0s8位單片 機,和那些標準的mcs-51指令系統和8052的引腳都是能夠互通的。stc89c52單 片機具有40引腳雙列直插芯片,i/o 口也有四個,而且,這里的每一個i/o線都能夠 自己單獨的輸入及輸出。其中
19、stc89c52 pdip管腳封裝如圖3-2所示。t2/p1. 0vcc140t2ex/p1.1239p0.o/adop1. 2338p0.1/ad1p1. 3437p0.2/ad2p1. 4536p0.3/ad3p1. 5635p0.4/ad4p1. 634p0.5/ad5p1. 7833p0.6/ad6rst95o32p0.7/ad7rxd/p3.01031eatxd/p3.1 int0/p3. 2111230291 ale/prog1 psenint1/p3. 31328p2. 7/a15to/p3. 41427p2. 6/a14t1/p3.51526p2. 5/a13wr/p3. 61
20、625p2.4/a12rd/p3. 71724p2.3/a11xtal21823p2. 2/a10xtal11922p2. 1/a9vss2021p2. 0/a8圖3-2 stc89c52 pdip管腳封裝stc89c52有以下幾個部分,它的結構圖如圖3-3(a) 8位的微型處理器cpu(b) 內部的吋鐘電路(c) 4個8位的可編程的i/o 口,即可輸出也可以輸入(d) 屮斷控制系統(e) 片內程序存儲器rom(f) 片內數據存儲器以及特殊功能寄存器sfr(g) 定吋器和計數器to、t1(h) 1個串行端口,可以用在數據的串行通信圖3-3 stc89c52結構圖3 ivrst3.2.2主控制模
21、塊電路單片機stc89c52的p0 口是輸入端口。時間數據的收集是由ds12887的ad是 與p0 口的連接來完成的,然后13引腳的cs (ds12887)與p2.7連接,最后14腳 as(ds12887)和30引腳ale相連。顯然我們的外部電容器不是很嚴格,但穩(wěn)定的振 蕩器,高和低的頻率溫度穩(wěn)定性和振蕩的快慢都將受到電容的人小的影響。w此,振 蕩器的價值體系是11.0592mhz以及電容如果可能的話,盡量選擇陶瓷電容器,值約 22(if。接地端是20腳,電源端是40引腳再加上+5v電壓接在31腳上就會構成單片 機的最小系統,如圖3-4。rst復位電路c1cap22pf"11.059
22、2mhz y1c2cap22pf品振lb路vccvcctttrll r12時間調整按鍵10k10krst 9c3si cap100pf0o-sw-pbs2t-tr1sw-pbres2加一按鍵ikrd1 10 td1 11j2 inti 13zzb15rw 16 rd 1720vccxtal1p0.0/ad0p0.1/ad1xtal2p0.2/ad2rstea/vppp0.3/ad3p0.4/ad4p0.5/ad5p0.6/ad6p0.7/ad7p1.0/t2psenpi.1/t2exale/progp1.2/ecip3.0/rxdp13/cex0p1.4/cex1p1.5/cex2p3.1/t
23、xdp1.6/cex3p3.2/int0p1.7/cex4p3.3/int1p3.4/t0p2.0/a8p3.5/t1p2.1/a9p3.6/wrp2.2/a10p3.7/rdp2.3/a11vssp2.4/a12p2.5/a13p2.6/a14p2.7/a15u1主控電路stc89c52<3<f<f<40393837363534333223456782122232425262728罔3«4單八機的鉍小系統結構圖3.3時鐘模塊的方案選擇與設計第一種方案:有家公句生產的申行時鐘ds1302芯片便是一種性能較高而且還可 以自動的進行計數的芯片,電壓工作時的限度是2
24、.5v5.5v,當電壓為2.5v時的耗 電小于300na,不妨與單片機連接,如此就克服了并行實時芯片形成電路很麻煩的問 題,然而這個芯片無pd置電池,這樣就會導致當電路突然斷電的時候就耍停止計時, 供電恢復后又耍重新進行校正時間,這樣就會給我們帶來不便。第二種方案:串行時鐘芯片ds12887具有很高的性能,可以自動定時芯片,有 一個內置的電池,因此不需耍關閉電源后重新校準,所以我最終選擇了此芯片。 3.3.1ds12887時鐘芯片簡介ds12887是由dallas公句研發(fā)出來的一款芯片,首先它是一個時鐘芯片,并 且冇24個引腳。這款芯片自己內部自帶電池還冇部集成芯片。它既能夠選用 mtorol
25、a總線模式也可以選用intel總線模式。采用的是地址總線,模式為復用, 它的內鍵含冇128個字節(jié)的ram,這其中的128個字節(jié)的前14字節(jié)是時鐘控制寄存 器,剩下的就全部是通用的ram。這個芯片能產生3種可編程的中斷;中斷一,時 間屮斷;屮斷二,周期性屮斷;屮斷三,時間更新結束屮斷。該芯片有24個引腳如圖 3-5。mot 124 vccnc 223 sqwnc322 ncado421 ncad1520 ncad2619 j irqad3718 resetad4817 dsad5916 ncad61015 fvwad71114 asgnd1213 cs圖3-5 24個引腳圖mot為總線類型選擇管
26、腳ado-ad7為數據復用總線cs為片選信號as為ale信號管腳r/w在intel總線模式k是wrds在intel總線模式下是rdreset為復位信號irq為屮斷請求輸出sqw為方波輸出引腳vcc為電源引腳。nc為空引腳ds12887芯片地址分布閣如閣3-7所示,包含114字節(jié)的通用ram, h w和ram 和4字節(jié)的控制報警信息,其屮10個字節(jié)記錄時間,所有的字節(jié)可以直接讀寫除非 以下狀態(tài)。1,寄存器a的第七位為只讀2,秒字節(jié)的高位為只3,寄存器c、d為只 讀。寄存器a的功能描述bit7bit6bit5bit4bit3bit2bit1bitouipdv2dv1dvors3rs2rsirso(
27、a) uip:更新進行標志。(b) dv2-dv0:力010吋晶振工作,其他組合停止。(c) rs3-rs0:頻率選擇。寄存器b的功能描述bit7巳it6bit5bit4bit3bit2bit1bitosetpieaieuiesqwedm24/12dse(1) set: 1為禁止更新。0為正常。(2) pie: 1為允許周期中斷。(3) uie: 1為允許更新結束中斷。(4) dm:當為0時是bcd碼,當為1時是二進制(5) sqwe: 1為允許方波輸出(6) 24/12:當是0的時候為12小時進制,當是1的時候為24小時進制。(7) dse:置 0寄存器c的功能描述bit7bitsbit5b
28、it4bit3bit2bit1bitoirqfpfafuf0000irqf:為屮斷中請標志。pf:為周期中斷標志。af:為警報屮斷標志。uf:為更新結束中斷標志。 寄存器dbit7bit6bitsbit4bit3bit2bit1bitovrt0000000vrt:當為0的時候表示的是內部鋰電池的電量己經用完了。3.3.2時鐘模塊電路ad接口和芯片ds12887和p0端口連接,以日歷時間和輸fli,同時它的其他功 能如端門按前血我所說的,所以不會有重復。不過要說明的是ds12887的24引腳是 應該和電源相連接的,另一個12引腳和電源地連接,端門mot與電源地連接。電 路圖如圖3-8。d610d
29、59:d48:d3d2di5:do4inti192324vcct11ad7gndad6ad5ad4ad3ad2adimotador/wirqdssqwcsasvccrstu2ds128871217 rd13 cs14 ale18閣3-6時鐘模塊電路<1<4-3.4按鍵電路的設計由于此次所設計的系統的需耍,此系統只需要4個按鍵以及1個撥碼開關就能夠 實現對時間的矯止:,再由于電動式按鈕比較簡單,所以按鍵可以用它,然盾再由i/o 1來開始對它掃描,從而來得到該系統的按鍵功能。在這里,單片機stc89c52的 p3.5 口是和時間調整按鈕相連接的。它們的作用是我們按卜按鈕時,立即為年,月
30、, 口,星期,小時,分鐘,秒調整,當我們點擊按鈕會對對應位置的作出調整;單片機 的stc89c52的p2.5接u是和加法按鈕相連接的,它的作用就是每當我們按一卜*這 鍵時就開始將相放的需耍改變的位q動加一;單片機stc89c52的p2.6丨i是和減法 按鈕相連接的,它的作用就是每當我們按卜這鍵時就會將需要改變的位減一;電路圖如圖3-9。 vcc:rll r12時間黼健10k 10kalersteawpsenaleprog加-備rwrdrd1 10 td1 11 12inti 13 14h>'h>"r-15:h>ps.o/rxdp3.1 腳p3mt0p3.3/
31、intip3.4/t0p3.5zt1p3.6avrp3.7m20vssp1ot2 pl.l 腿 p1.2ki p1.3/cex0 p1.4/cex1 p1.5/cex2 pi.m pi.7/cex4p2.0/a8p2.1/a9p2.2/a10p2.3/a1ip2.4/a12p2.5/ai3p2.6/ai4p2115<j<<<lstc89c52.21 <22<24 ,25262728 cs10ks5q/qsw-spst通信選嫌鍵sw-pbs3sw-pb鬧鐘調整按鍵減一按鍵閣3-7按鍵電路3.5顯示模塊的方案設計這個方案我用的是lcd液晶顯示,這就表示此次這個設
32、計就不太要顯示過多的 內容,所以就可以選擇12232f圖形點陣液晶顯示器。3.5.1圖形點陣液晶顯示器數字電路中的數據是通過0和1來保存的。在顯示的英文的操作過程中,英語的 字母的種類就會比較少,所以只需耍8位的字節(jié)就行了。如來要顯示中文,就要常常 壓迫至少6000,這樣比我們先前的設計者們就想出了一個解決辦法,就是用ascii 表的128個用到的比較少的數值中以兩個位一組來表示漢了也就是它的內碼。剩卜*的 就給那些英文字符。漢字的內碼得到之盾又怎么樣才能得以顯示呢?這樣就會牽扯到字模,盡管字模 的本身是數字,但是根本概念卻發(fā)生了本質的變化,因為這時的它記錄的英文或者是 漢子的形狀要用到數字的
33、各位信息。12864lcd的引腳說明如表3-2所示。表3-1液品模塊12864的管腳說明管腳號管腳名稱lever管腳功能描述1vss0電源地2vdd+5.0v電源電壓3v0-液晶顯示器驅動電壓4d/i(rs)h/ld/i= “h”,表示db7db0為顯示數據d/i=“l(fā)”,表示db7db0為顯示指令數據5r/wh/lr/w= “h”,e= “h” 數據被瀆到 db7db0r/w= “l(fā)”,e= “hl” 數據被寫到 ir 或 dr6eh/lr/w= “l(fā)”,e信號卜降沿鎖存db7dbor/w= “h”,e= “h” ddram 數裾讀到 db7dbo7db0h/l數裾線8db1h/l數裾線9d
34、b2h/l數據線10db3h/l數裾線11db4h/l數裾線12db5h/l數裾線13db6h/l數裾線14db7h/l數裾線15cs1h/lh:選擇芯片(農半屏)信號16cs2h/lh:選擇芯片(左半屏)信號17reth/l復位信號,低電平復位18vout-10vlcd驅動負電壓19led+-led背光板電源20led-led背光板電源我們必須首先了解12864lcd的功能后汴能夠進行編程。它的各部分器件及功能 如下:(1)指令寄存器(ir)ir是用于寄存指令碼,若是d/i=o的時候,而ii是e信號又處于下降沿的功 能,此吋指令代碼就會寫入ir。(2)數據寄存器(dr)dr是用于寄存數據的,
35、如果d/r=l而且處于t降沿的作用的時候,這時候圖 形顯示數據就會寫入dro(3) 忙標志(bf)標志bf的用處是提供內部工作的情況的,當bf=1,這時候表達的意思示是 模塊在內部的操作,這個時候就不會接收外部的指令以及數據。如果bf=0的 時候,就可以任何時候都能夠接受外部的指令以及數據。(4) 顯示控制觸發(fā)器dff這個觸發(fā)器是用于模塊屏幕顯示開和關的控制上的,dff=1的時候表示的是 開顯示,dff=0的時候表示的是關顯示。(5) xy地址計數器xy地址計數器是ddram的地址指針。(6) 顯示數據 ram (ddram)ddram負責保存圖形和顯示數據的,當數據是1的時候表達的意思是選擇
36、, 當數據是0的時候表示的是非選擇。(7) z地址計數器它是一個6位的計數器,功能主要用在顯示的是行掃描同步。如果掃描完一行 時,這個計數器就會主動的加1并且再指向下一行的掃描數據。當rst復位 之盾,0才會被顯示出來。這樣就表示顯示肺幕的起始行就是宥這個指令進行 控制的。(8) 字符顯示fyd12864-0402b每一個嬌都可以顯示4行8列的漢字,1個中文字符或還可 以是2個16x8點陣全高ascii碼字符,fyd12864-0402b的里面可以供給128 x2字節(jié)的字符來顯示ram緩沖區(qū)(ddram)。為了實現字符的顯示,要將 字符顯示編碼寫入該字符來顯示ram。字符顯示的ram是和32個
37、字符顯示 區(qū)域存著相互對旭的關系的。對fez關系衷如表3-3。表3-2字符兄示ram在液晶模塊屮的地址表80h81h82h83h84h85h86h87h90h91h92h93h94h95h96h97h88h89h8ah8bh8ch8dh8eh8fh98h99h9ah9bh9ch9dh9eh9fh3.5.2顯示模塊電路顯示模塊電路如圖3-10,電源地接液晶模塊的1管腳、15管腳和19管腳。然后, 2管腳用于接電源從而給液晶顯示器提供電源,3管腳也是和電源連接供給液晶顯示 器的顯示驅動電壓。單片機的p1.3 口和4管腳相連接從而實現接收數據和指令,單 片機的p1.4 口和6管腳相連接用在提供鎖存信
38、號上面。u4圖3-8顯不模塊3.6通信模塊電路方案選擇設通信模塊電路的方案選擇:rs-232、rs-422和rs-485是串行數據的接口標準。此中rs-232是在1962年吋 公布并命名eia-232-e為工業(yè)標準從而能夠與各個廠家生產的產品通用。不過, rs-232也冇它的弊端,比如說它的通訊不太好,此外速率也比較低。rs-485在此基 礎上改進了通信的功能,也就是可以將很多發(fā)送器連接在一條總線的上面,另外還增 強了保護能力以及發(fā)送器的驅動功能,從而就會擴人總線的共模的范圍,傳輸速度最 人吋是10mb/s以及最人的傳輸距離人約為1219米。經過各個方面的考慮,最后還是 選用rs-485的通信
39、方案。3.6.1通信電路設計通信模塊電路選用rs-485,這類芯片的1腳是和單片機的10腳連接,如此就很 好的町以和軟件相配合從而達到遠程通信的功能。電路圖如圖3-11。u3vccnr0vccrebdeadiendrd1 1max485醐莫塊電路閣3-9通信電路2td1 4f :第四章系統軟件設計系統的主要組成成分是軟件,同時也是最重耍的構成部分和所有調試的困難點 和核心點。這次的設計我選用的是匯編語言,因為它和機器語言比較相近,不需要任 何變動就能夠存取寄存器和1/0,并且執(zhí)行編寫的代碼也很準確。所以,我根據此次 的耍求,選擇了匯編語言。4.1匯編語言的選擇可以說的是,它和機械語言的本質是相
40、同的,相同點是都是能夠對硬件進行直接 操作,不同的地方就在于匯編用的標識符是英文縮寫的,這樣就會更加容易記住。一 般來說,指令,偽指令和宏指令是匯編程序的三個主要組成部分。在操作的時候,它 的每一句指令只對應的動作都是很小的。然而匯編語言也冇它自己的優(yōu)點,便是匯編 語言可以完成一些高級語言所不能夠進行的操作,執(zhí)行文件的大小比較小而且速度也 很快。那么就來舉幾個例子來說明一下,不過它們也不是絕對化的。(1) 適用的領域如果是執(zhí)行的效率比較高,反應也很快的領域就比如說工業(yè)控制,實時系統, 操作系統內核等;如果是和硬件資源密切相關的一些軟件的研發(fā)就比如說是設備驅動程序等;(2) 不宜使用的領域一般關
41、于大型的軟件的整體開發(fā)以及一些沒有特殊耍求的一般應用系統的開 發(fā)一般來說,匯編語言的特點是顯而易見的,就是它的標準非常嚴格。缺點,就是它的“與機器相關”和“執(zhí)行的高效率”也能夠引發(fā)調試的困難以及可移植性差。至此,當我們在選取匯編語言的時候一定耍和實際的應用環(huán)境相符合從而最大限度的避免影響整個系統。4.2系統主程序及流程圖顯示h期和時間的信息是主程序的的主耍的功能,首先是將lcd顯示系統進行鬥 動的復位,隨后丌始把時鐘芯片ds12887初始化。主程序流程如閣4-1。清屏初始化捫描鍵盤a斷足七顯示子程序yesno顯示時間凋整堺鍵值判斷調整時間圖4-1主程序流程圖這個程序就表示,主程序一旦運行,我們
42、應該首先將液晶顯示器清屏然后開始將 時鐘芯片初始化。4.3 ds12887時鐘芯片的讀操作流程起首將芯片ds12887進行初始化,而后再經由狀態(tài)寄存器的判斷之后xi能夠開 始進行讀操作,讀操作是使用時鐘的地址是相鄰的這一特點,這樣就可以使得的 地址得到增加,最后再判斷數據有沒有已經讀完。如果已經完成了,就會回到主程序, 如果還沒有完成,就還得增加地址,直到完成為止。如閣4-2。圖4-2 ds12887吋鐘芯片的讀操作流程圖4.4液晶模塊的寫操作流程圖木設計將采用液晶顯示模塊12864液晶顯示模塊,其可以$行通信,還能夠并行 通信。但是因為單片機的u線的限制,所以我在這里就用串u設計的四路,其流
43、程圖 分別如圖4-3、4-4。閣4-3時m顯示流程閣其中,在顯示流程圖畫面,設置成全屏顯示液晶顯示,顯示界而不對光標進行顯 示。最厄,從第二行第一個字符開始的顯示日期,再從第三行第一個字符開始時分鐘 的顯示。調整按鍵顯示設覚備設背顯示字符的首地址顯示當前時間判斷按鍵修改吋間返回時間顯示圖4-4時間調整顯示流程圖4.5按鍵調整模塊流程圖調試時間是宥按鍵調整程序的模塊來控制的,當我們按鍵按卜*時問調整界面的時 候,隨盾就立刻的適時的調整一些參數。在選擇好了調整的位的時候然后再按卜p3.5, 這樣就會出現相應的位加一的情況。整個調整結束之盾,按下p3.4可以返回到顯示 界面,從調整好的時間開始計時。
44、流程圖如圖4-5。閣4-5按鍵凋整模塊流程閣4.6通信模塊流程圖主機程序和從機程序是通信模塊的兩個主耍兩部分。主程序是在電腦上運行的, 在很遠的地方就可控制時鐘,并且還能夠對當前的時間進行讀寫和調整的操作。另一 個程序從機是在單一的操作,通過終端命令,接收來自上位機的命令,發(fā)送到電腦。 其流程圖分別如圖4-6, 4-7所示。i割4-7從機端通信子程序流程閣第五章實驗與調試實踐是驗證理論的最好的方法,所以我們要通過實踐來進行檢驗此次設計。一般 的情況下,我們都是通過仿真來進行驗證的,不過,我覺得這樣還是會有一些誤差。 基丁此,為了能夠將這次的檢驗做到足夠的精確,決定還是選擇實物來對此次的設計 進
45、行檢驗。所以為了更好的檢驗此次設計,所以本次設計將會采用實物來進行驗證。5.1硬件測試我全部按照上述的理論來焊接此次設計的硬件的驗證電路。焊接實物閣如閣5-1。 由丁此次設計的這個電路比較簡單,所以焊接起來就沒冇遇到什么很大的麻煩,不過 也遇到一些問題,比如就是在焊接電路時,耍解決地線和電源線排布的問題冇些困難。 由于這個電路的電源線和地線的連接點比較多,所以在實際屮,地線一般會是環(huán)繞板 子并且比較粗的一些銅線,基于這個思路,我就把電源線和地線分別的布置在電路板 的兩邊上。閣5-1整體電路實物閣當我們把電路板焊接完成之后,還要測試各個連接的線路冇沒冇什么m題,電路 是不是通路,冇沒冇短路、短路
46、等。我們用萬用表的來對此次的設計進行測試,方法 是將萬用表的兩個表筆來測試連線的兩端,如果萬用表顯示是零,則說明連接是對的, 如果不是零,就說明冇的地方連接肯定是出了叫題。比如會出現虛焊,以及冇的焊接 點離的比較近,所以如果焊接的不小心就會造成短路。因此,要仔細檢查是否冇兩相 鄰節(jié)點短路。5.2軟件調試此次設計用的編譯軟件是偉福編譯軟件,這個軟件是目前單片機開發(fā)軟件中應用 最廣泛的軟件,它將源程序編輯和程序調試集成于一體,同吋也支持匯編語言的編譯,還可以翻譯c語言和pl/m語言。編寫源程序:開始先將新建一個文件,然盾再從文件中選擇所用的單片機的型號, 同時將語言設置為偉福匯編器;確定盾新的文件
47、就建立完成了。然u再進行編輯、修 改等操作。編譯:必須先加載編譯文件,然找到編譯按鈕,可以在工具欄的右上角,然 盾按下一個按鈕,幵始編譯。編譯好了就會提示你編譯是否通過,如果通過就能夠對 程序進行下載了。實驗:如果出現編譯沒宥通過,這就說明所編寫的程序宥問題,如 圖5-3。此時就要雙擊錯誤提示,這樣軟件就會將光標u動移到宥錯誤的地方方便與 修改。如果編譯通過就會顯示編譯成功。5.3實物調試如果耍進行實物調試,那么就可能會遇到軟件問題或者是硬件問題,所以就耍制 定一個調試原則。此次設計在調試的時候最先遇到的問題是液品顯示器不能夠顯示, 這樣我就先用一個原木可以正常運行的程序來檢測電路能否正常顯示
48、,結果可以,如 圖5-2,這就可以說明電路沒宥問題。我立即檢測軟件是否宥問題,到最石發(fā)現是程 序中杳洵口歷芯片地址賦值錯誤,排除錯誤就可以顯示了。如圖5-3。圖5-2測試柷序顯示結果圖5-3正確權序從示結果等到可以姑示了之后就能夠對子程序進行調試了,這個時候還要檢測按鍵的效果 和功能是否完好。因為計時跳轉比較麻煩,所以就有了一點小問題(按鍵調整之后不 能夠正常的返冋界面),最后經過排查是因為返冋顯示程序的跳轉標號寫錯了,改正 之后,最終成功了。如圖5-4o圖5-4按鍵調整k示總結此次的畢業(yè)設計讓自己學到y許多知識,收獲也很大。讓我們木科生做畢業(yè)設計 吋為y把我們大學四年學的理論知識和實踐緊密的
49、聯系在一起。梳理y我們大學四年 在書木上學的知識,又能夠提高我們的實際動手能力。為我們以后參加工作打下基礎 從而能夠更好的適應以后的工作。這次設計主要用到了木科學習的c語言程序設計和單片機原理及應用這w門課 的主要知識,同吋又涉及了許多關于接u技術等許多其他的領域。是對我以前所學的 知識的一種總結同吋又讓我增加y許多以前沒有學過的知識點。所以,這次的畢業(yè)設 計對我的幫助很大,有著很重要的意義。為了完成此次的畢業(yè)設計,我到圖書館查閱了很多關于此次設計的資料,認真的 研究y各個方面的細節(jié)知識從而成功的設計y此次所用的數字吋鐘電路。這讓我明白 丫以后考慮問題要全面的道理,從而鞏固y我所學的知識同吋也鍛煉y我對信息的取 舍能力。木次所設計的數字吋鐘電路讓我知道y要完
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 吳家窯11號線施工方案
- 路基堆土預壓施工方案
- 提灌站維護施工方案
- 福建海鮮冷庫施工方案
- 鉆空施工方案
- 年加工300萬噸尾礦廢料改擴建及技術改造項目環(huán)評報告表
- 一級建造師瀝青施工方案
- 海南汽車變速箱保稅維修項目環(huán)評報告表
- 蒼南縣二模數學試卷
- 洛陽戶外兒童游樂施工方案
- 一年級下冊語文課件《2-我多想去看看》人教部編版-20
- TIAC 27-2019《機動車保險車聯網數據采集規(guī)范》
- 2016-2023年株洲師范高等專科學校高職單招(英語/數學/語文)筆試歷年參考題庫含答案解析
- 項目成本管控要素清單
- 歌唱二小放牛郎 金巍 女聲合唱譜
- 基層公職人員禁毒知識講座
- 中小學生綜合實踐基地(學校)考核指標體系評分標準
- 創(chuàng)新素養(yǎng)的培養(yǎng)
- 2024深海礦產資源開采系統技術指南
- 一+《展示國家工程++了解工匠貢獻》(教學課件)-【中職專用】高二語文精講課堂(高教版2023·職業(yè)模塊)
- 重視心血管-腎臟-代謝綜合征(CKM)
評論
0/150
提交評論