版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 單片機(jī)課程設(shè)計(jì)</b></p><p> 題目 基于單片機(jī)的電子鐘設(shè)計(jì) </p><p><b> 目 錄</b></p><p> 一、設(shè)計(jì)任務(wù)與要求2</p><p><b> 1.設(shè)計(jì)的目的2</b></p>
2、<p><b> 2.設(shè)計(jì)的指標(biāo)2</b></p><p><b> 3.設(shè)計(jì)的要求2</b></p><p> 二、總體方案設(shè)計(jì)2</p><p><b> 1.設(shè)計(jì)的思路2</b></p><p> 2. 電路的結(jié)構(gòu)特征3</p>
3、<p> 3. 數(shù)據(jù)輸入輸出(I/O)3</p><p> 三、單元電路分析與設(shè)計(jì)4</p><p> 1. 顯示部分?jǐn)?shù)碼管(LED)4</p><p><b> 2. 鍵盤部分4</b></p><p> 四、總原理圖及元器件清單4</p><p><b&g
4、t; 1. 總程序圖4</b></p><p> 2. 時(shí)間產(chǎn)生流程圖5</p><p> 3. 按鍵控制流程圖6</p><p> 4. 電子鐘軟件系統(tǒng)程序6</p><p> 5. 元器件清單9</p><p><b> 五、軟件仿真9</b></p&
5、gt;<p> 六、結(jié)論與心得10</p><p><b> 七、參考文獻(xiàn)11</b></p><p><b> 一、設(shè)計(jì)任務(wù)與要求</b></p><p><b> 1. 設(shè)計(jì)的目的</b></p><p> 設(shè)計(jì)一個(gè)帶有年月日、時(shí)分秒及星期顯示的
6、電子鐘。</p><p> 電子鐘的主要功能是給人們提供時(shí)間和日期信息,無(wú)論其形式如何,從外部都可分為顯示和校準(zhǔn)兩部分。為使電子日歷協(xié)調(diào)工作,整個(gè)系統(tǒng)從功能上可分為實(shí)時(shí)時(shí)鐘、顯示和鍵盤三個(gè)模塊,分別完成時(shí)間和日期的計(jì)算以及人機(jī)交互的管理等。</p><p><b> 2. 設(shè)計(jì)的指標(biāo)</b></p><p> 電子鐘是一套完整的時(shí)間顯示系
7、統(tǒng),采用單片機(jī)等控制設(shè)計(jì)作為核心控制器,并能實(shí)時(shí)顯示當(dāng)前的日期,能夠設(shè)置時(shí)間等操作。</p><p><b> 3. 設(shè)計(jì)的要求</b></p><p> 本電子鐘能動(dòng)態(tài)顯示年、月、日、星期、小時(shí)、分鐘、秒。</p><p><b> 二、總體方案設(shè)計(jì)</b></p><p> 按照系統(tǒng)設(shè)計(jì)
8、功能的要求,初步確定系統(tǒng)由主控模塊、時(shí)控模塊、及顯示模塊和鍵盤接口模塊共4個(gè)模塊組成。主控芯片使用51系列STC89C52RC單片機(jī),時(shí)鐘芯片使用美國(guó)DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘DS1302。采用DS1302作為計(jì)時(shí)芯片,可以做到計(jì)時(shí)準(zhǔn)確。更重要的是,DS1302可以在很小電流的后備電源(2.5~5.5V電源,再2.5V時(shí)耗電小于300nA),而且DS1302可以編程選擇多種充電電流來(lái)為后備電源進(jìn)行慢速充
9、電,可以保證后備電源基本不耗電。顯示模塊采用普通的共陽(yáng)極四位一體八段LED數(shù)碼管。</p><p><b> 1. 設(shè)計(jì)的思路</b></p><p> 圖1 電子鐘的系統(tǒng)框圖</p><p> 2. 電路的結(jié)構(gòu)特征</p><p> 1. DS1302的結(jié)構(gòu)及工作原理
10、 </p><p> DS1302 是美國(guó)DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路,它可以對(duì)年、月、日、周日、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功能,工作電壓為2.5V~5.5V。DS1302是DS1202的升級(jí)產(chǎn)品,與DS1202兼容,但增加了主電源/后背電源雙電源引腳,同時(shí)提供了對(duì)后背電源進(jìn)行涓細(xì)電流充
11、電的能力。</p><p> 2. 引腳功能及結(jié)構(gòu) 圖2所示出DS1302 的引腳排列,其中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.768k
12、Hz 晶振。RST 是復(fù)位/片選線,通過把RST 輸入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送。RST 輸入有兩種功能:首先,RST 接通控制邏輯,允許地址/命令序列送入移位寄存器;上電運(yùn)行時(shí),在Vcc≥2.5V 之前,RST 必須保持低電平。只有在SCLK 為低電平時(shí),才能將RST 置為高電平。I/O 為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說明。SCLK 始終是輸入端。</p><p> 圖2 DS1302 引腳圖
13、</p><p> 3. 數(shù)據(jù)輸入輸出(I/O)</p><p> 在控制指令字輸入后的下一個(gè)SCLK 時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0 開始。同樣,在緊跟8 位的控制指令字后的下一個(gè)SCLK 脈沖的下降沿讀出DS1302 的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位0 位到高位7。</p><p> 三、單元電路分析與設(shè)計(jì)</p>&l
14、t;p> 1. 顯示部分?jǐn)?shù)碼管(LED)</p><p> 七段數(shù)碼管一般由8個(gè)發(fā)光二極管組成,其中由7個(gè)細(xì)長(zhǎng)的發(fā)光二極管組成數(shù)字顯示,另外一個(gè)圓形的發(fā)光二極管顯示小數(shù)點(diǎn)。</p><p> 當(dāng)發(fā)光二極管導(dǎo)通時(shí),相應(yīng)的一個(gè)點(diǎn)或一個(gè)筆畫發(fā)光??刂葡鄳?yīng)的二極管導(dǎo)通,就能顯示出各種字符,盡管顯示的字符形狀有些失真,能顯示的數(shù)符數(shù)量也有限,但其控制簡(jiǎn)單,使有也方便。發(fā)光二極管的陽(yáng)極連在
15、一起的稱為共陽(yáng)極數(shù)碼管,陰極連在一起的稱為共陰極數(shù)碼管。</p><p><b> 2. 鍵盤部分</b></p><p> 時(shí)鐘的設(shè)置雖包含數(shù)字,但是我們不建議使用數(shù)字鍵盤,應(yīng)為數(shù)字鍵盤將增加系統(tǒng)的復(fù)雜程度。為使系統(tǒng)盡可能簡(jiǎn)化,鍵盤部分的設(shè)計(jì)在能夠完成系統(tǒng)要求的前提下,越簡(jiǎn)單越好。所以,時(shí)鐘系統(tǒng)的鍵盤可以設(shè)置四個(gè)鍵:功能選擇鍵、加1鍵、減1鍵,鬧鐘鍵。</
16、p><p> 四、總原理圖及元器件清單</p><p><b> 1. 總程序圖</b></p><p><b> 圖3 系統(tǒng)主流程圖</b></p><p> 圖3為單片機(jī)電子日歷的主流程圖。其具體的工作流程如下:系統(tǒng)通電后,對(duì)系統(tǒng)進(jìn)行復(fù)位初始化處理,然后控制主機(jī)AT89C51單片機(jī)從時(shí)鐘芯片
17、DS1302中讀取時(shí)間,存儲(chǔ)到單片機(jī)中,并顯示到LED數(shù)碼管上。顯示的時(shí)間如果與實(shí)際時(shí)間一樣,則結(jié)束,如果不一樣,則進(jìn)行下一步操作。系統(tǒng)一直掃描是否有鍵按下,當(dāng)有按鍵S1按下后,系統(tǒng)進(jìn)入時(shí)間設(shè)定模式,并對(duì)不準(zhǔn)確的時(shí)間進(jìn)行設(shè)定和調(diào)整,直到設(shè)定完成后,則將設(shè)定后的時(shí)間顯示在LED數(shù)碼管上。</p><p> 2. 時(shí)間產(chǎn)生流程圖</p><p> 圖4 DS1302操作流程圖</p&
18、gt;<p> 圖4為電子日歷的時(shí)間產(chǎn)生流程圖,即DS1302操作流程圖。其具體的工作流程為:系統(tǒng)通電后,開始初始化操作,使得DS1302不具備寫保護(hù)的模式,同時(shí)當(dāng)復(fù)位端產(chǎn)生一個(gè)高電平時(shí),對(duì)DS1302進(jìn)行寫地址,并延遲一段時(shí)間,向該地址寫數(shù)據(jù),同時(shí)地址增加,如果數(shù)據(jù)寫完沒有寫完,則繼續(xù)對(duì)DS1302進(jìn)行寫地址操作,否則進(jìn)行下一步操作,當(dāng)給復(fù)位端一個(gè)高電平后,對(duì)DS1302寫地址,同時(shí)延遲一段時(shí)間后,將該地址的數(shù)據(jù)讀出來(lái)
19、,同時(shí)地址增加,如果數(shù)據(jù)沒有讀完,則繼續(xù)對(duì)DS1302進(jìn)行寫地址操作,否則即數(shù)據(jù)已經(jīng)讀完,則將讀取出來(lái)的數(shù)據(jù)顯示出來(lái),并進(jìn)行返回操作。</p><p> 3. 按鍵控制流程圖</p><p> 圖5 按鍵控制流程圖</p><p> 圖5為系統(tǒng)按鍵控制電路流程圖。其具體的工作流程如下:系統(tǒng)一直掃描,當(dāng)按鍵S1按下后,系統(tǒng)進(jìn)入時(shí)間設(shè)定界面,否則系統(tǒng)沒反應(yīng),即使按
20、下其他的按鍵也沒有反應(yīng)。按下S1后,開始進(jìn)行時(shí)間設(shè)置,當(dāng)顯示的時(shí)間比實(shí)際的時(shí)間小時(shí),按下按鍵S3,進(jìn)行時(shí)間的加操作,當(dāng)顯示時(shí)間比實(shí)際時(shí)間大時(shí),則按下按鍵S4,進(jìn)行時(shí)間的減操作,如果顯示的時(shí)間與實(shí)際的一樣,則按下按鍵S2進(jìn)行移位,對(duì)下一個(gè)時(shí)間進(jìn)行設(shè)定,如果與實(shí)際時(shí)間不相同,則重復(fù)操作按鍵S3、S4,對(duì)時(shí)間進(jìn)行加減操作,直到設(shè)定的時(shí)間也實(shí)際時(shí)間相同為止,如果完成了設(shè)定,則通過按鍵S1的操作對(duì)修改和設(shè)定的時(shí)間進(jìn)行保存,最后退出時(shí)間設(shè)定。<
21、;/p><p><b> 偽指令定義。</b></p><p> 4. 電子鐘軟件系統(tǒng)程序 </p><p> SEC EQU 30H</p><p> MINEQU 31H</p><p> HOUREQU 32H</p><
22、;p> SECGEEQU 7FH</p><p> SECSHIEQU 7EH</p><p> MINGEEQU 7CH</p><p> MINSHIEQU 7BH</p><p> HOURGE EQU 79H</p><p>
23、; HOURSHIEQU 78H</p><p> ;系統(tǒng)起始程序區(qū) </p><p> ORG 0000H</p><p> START: LJMP MAIN</p><p> ORG 000BH</p><p><b> LJMP TC0&
24、lt;/b></p><p><b> ;顯示子程序</b></p><p> ;入口:77H,78H,79H,7AH,7BH,7CH,7DH,7EH,7FH,</p><p> DISP: PUSHDPH</p><p><b> PUSHDPL</b></p>
25、<p><b> PUSHACC</b></p><p><b> PUSHPSW</b></p><p> CLR RS1 ;改變當(dāng)前寄存器組為組1</p><p> SETB RS0</p><p> MOV R
26、1, #78H ;顯示緩沖存儲(chǔ)單元首地址</p><p> MOV R2, #0FEH ;從右至左顯示,共陽(yáng)極</p><p> DISP1:MOVA, @R1</p><p> MOVDPTR, #TAB</p><p> MOVC A,
27、 @A+DPTR</p><p> MOV P0, A ;送段控</p><p> MOV P2, R2 ;送位控</p><p> LCALL DL ;延時(shí)2毫秒 為什么這里要延時(shí)</p><p> MOV A, R2&l
28、t;/p><p> JNB ACC.7, DISP2 ;為0轉(zhuǎn)移;</p><p><b> RL A</b></p><p><b> INC R1</b></p><p> MOV R2, A</p><p> LJMP DISP1
29、</p><p> DISP2:POP PSW ;恢復(fù)當(dāng)前寄存器組的組號(hào)</p><p><b> POP ACC</b></p><p><b> POP DPL</b></p><p><b> POP DPH</b&
30、gt;</p><p><b> RET</b></p><p><b> 加1子程序</b></p><p> SEC_:INCSEC</p><p> MOV A,SEC</p><p> MOV B,#10</p>&l
31、t;p><b> DIV AB</b></p><p> MOV SECSHI,A</p><p> MOV SECGE,B</p><p> MOV A, SEC</p><p> CJNE A, #60,EXI</p><p>
32、 MOV SEC, #0</p><p> MOV SECGE,#0</p><p> MOV SECSHI,#0</p><p> LJMP EXI</p><p> MIN_:INC MIN</p><p> MOV A,MIN</p>&
33、lt;p> MOV B,#10</p><p><b> DIV AB</b></p><p> MOV MINSHI,A</p><p> MOV MINGE,B</p><p> MOV A,MIN</p><p> CJNE A
34、,#60,EXI</p><p> MOV MIN, #0</p><p> MOV MINGE,#0</p><p> MOV MINSHI,#0</p><p> LJMP EXI</p><p> HOUR_:INC HOUR</p><
35、;p> MOV A,HOUR</p><p> MOV B,#10</p><p><b> DIV AB</b></p><p> MOV HOURSHI, A</p><p> MOV HOURGE, B</p><p> MOV
36、 A,HOUR</p><p> CJNE A,#24,EXI</p><p> MOV HOUR, #0</p><p> MOV HOURGE, #0</p><p> MOV HOURSHI, #0</p><p><b> EXI:RET</b&
37、gt;</p><p><b> 5. 元器件清單</b></p><p><b> 表1 元器件清單</b></p><p><b> 五、軟件仿真</b></p><p> 基本顯示原理:時(shí)鐘開始顯示為0時(shí)0分0秒,也就是數(shù)碼管顯示000000,然后每秒秒位加1 ,
38、到9后,10秒位加1,秒位回0。10秒位到5后,即59秒 ,分鐘加1,10秒位回0。依次類推,時(shí)鐘最大的顯示值為23小時(shí)59分59秒。這里只要確定了1秒的定時(shí)時(shí)間, 其他位均以此為基準(zhǔn)往上累加。 同時(shí)時(shí)鐘達(dá)到最大值的時(shí)候天數(shù)也增加一位,知道顯示了7后再變?yōu)?,同時(shí)陰歷和陽(yáng)歷的天數(shù)也加1,根據(jù)不同的月份顯示的天數(shù)陽(yáng)歷有28,29,30,31天,陰歷就要經(jīng)過計(jì)算得到,到了12個(gè)月后,年數(shù)自動(dòng)增加1,以此類推,顯示萬(wàn)年歷的現(xiàn)實(shí)。</p&
39、gt;<p><b> 圖6 仿真圖</b></p><p><b> 六、結(jié)論與心得</b></p><p> 在整個(gè)設(shè)計(jì)過程中,發(fā)揮團(tuán)隊(duì)精神,分工合作,自主學(xué)習(xí),通過對(duì)以前知識(shí)的補(bǔ)充和學(xué)習(xí)。較好的完成了作品,完成了本次課程設(shè)計(jì)的要求。在最初的設(shè)計(jì)中,,對(duì)于52單片機(jī)進(jìn)行了充分的了解,并與51相比較,了解了兩種單片機(jī)的不同,
40、并相互學(xué)習(xí)、相互討論、最終決定使用89C52單片機(jī)制作。電路的布局在軟件中進(jìn)行了期間排布,使得期間在板子上盡可能合理分配。程序編寫中,由于思路不清晰,開始時(shí)遇到了很多的問題,通過和同組員的討論,以及對(duì)大量書籍資料和論壇中成功的品進(jìn)行借鑒,明白了編程中的主要算法和實(shí)現(xiàn),從而解決的大部分問題在本次單片機(jī)課程設(shè)計(jì)中對(duì)于單片機(jī)功能及應(yīng)用有了充分了認(rèn)識(shí)。充分了解了單片機(jī)的應(yīng)用。并對(duì)只是進(jìn)行了補(bǔ)充學(xué)習(xí)在大量閱讀文獻(xiàn)資料后,感覺對(duì)單片機(jī)的了解還很少。
41、以后將及時(shí)補(bǔ)充相關(guān)知識(shí),對(duì)單片機(jī)進(jìn)行系統(tǒng)學(xué)習(xí)。</p><p><b> 七、參考文獻(xiàn)</b></p><p> 1.李建忠.單片機(jī)原理及應(yīng)用.西安電子科技大學(xué)出版2006.02</p><p> 2.張俊謨.單片機(jī)中級(jí)教程.北京航空航天大學(xué)出版2006.03</p><p> 3.余發(fā)山.單片機(jī)原理及及應(yīng)用技術(shù)
42、.中國(guó)礦業(yè)大學(xué)出版社2003.12</p><p> 4.楊凌霄.微型計(jì)算機(jī)原理及應(yīng)用.中國(guó)礦業(yè)大學(xué)出版社2004.08</p><p> 5.何立民.單片機(jī)應(yīng)用技術(shù)選編.北京航空航天大學(xué)出版社2000.08</p><p> 6.萬(wàn)光毅.單片機(jī)實(shí)驗(yàn)與實(shí)踐教程.北京航空航天大學(xué)出版社2005.01</p><p> 7.周航慈.單片機(jī)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《單片機(jī)技術(shù)》電子鐘課程設(shè)計(jì)---數(shù)字電子鐘
- 單片機(jī)電子鐘課程設(shè)計(jì)---數(shù)字電子鐘
- 電子鐘單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--電子鐘
- 單片機(jī)課程設(shè)計(jì)(電子鐘)
- 基于單片機(jī)的電子鐘課程設(shè)計(jì)
- 基于單片機(jī)的電子鐘課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)——數(shù)字電子鐘
- 單片機(jī)課程設(shè)計(jì)--數(shù)字電子鐘
- 單片機(jī)課程設(shè)計(jì)--數(shù)字電子鐘
- 單片機(jī)課程設(shè)計(jì)--數(shù)字鐘電子鐘
- 單片機(jī)課程設(shè)計(jì)---智能電子鐘
- 單片機(jī)原理課程設(shè)計(jì)--電子鐘
- 單片機(jī)數(shù)字電子鐘課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--簡(jiǎn)單電子鐘設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--數(shù)字電子鐘
- 單片機(jī)課程設(shè)計(jì)-智能電子鐘
- 單片機(jī)課程設(shè)計(jì)---電子鐘的設(shè)計(jì)
- 課程設(shè)計(jì)--基于單片機(jī)的電子鐘的設(shè)計(jì)
- 單片機(jī)電子鐘課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論