freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于at89c51單片機的多功能電子萬年歷的設計的所有專業(yè)-資料下載頁

2025-05-12 13:25本頁面

【導讀】本文介紹了基于AT89C51單片機的多功能電子萬年歷的硬件結構和軟硬件設計方法。對年、月、日、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能。萬年歷采用直觀的數(shù)。字顯示,可以在LED上同時顯示年、月、日、周日、時、分、秒,還具有時間校準等功能。

  

【正文】 // ***************************// void LCD_Cursor_Off(void) { LCD_WriteControl(LCD_ON); // ********************// // ***關閉 LCD***// // *************殺 ******// void LCD_Display_Off(void) { LCD_WriteControl(LCD_OFF); } // *******************// // ***打開 LCD***// // ******************// void LCD_Display_On(void) { LCD_WriteControl(LCD_ON); } MAIN. C include”includes. h” define WDR() asm(”wdr”) unsigned char alarm _1_set, alarm_2_set, alarm_3_set; __flash unsigned char test[ ]=”DSl302 time is: ”; void main(void) { unsigned char hour, min, sec; unsigned char date, month。 unsigned char flag; flag=1; PORTB=0x00; DDRB=0x00; DDRD=0x7f; 本科 畢業(yè)設計 (論文 ) 25 PORTD=0xFF。 Init_LCD(); LCD_DisplayString(0,1, ”Initialize OK!”); delay_nms(500)。 LCD_WriteControl(LCD_CLEAR); WDR(); writebyte(w_protect, 0x00); //設置時間 // writebyte(sec_w, 0x09); // writebyte(min_w, 0x09); // writebyte(hour_w, 0x09)。 while(1) { sec =readbyte(sec_r); //讀秒 min =readbyte(min_r); //讀分 hour =readbyte(hour_r); //讀小時 month =readbyte(month_r); date =readbyte(date_r); WDR(); LCD_DisplayString_F(1, 1, test); if(flag) { LCD_Cursor(2, 1); LCD_DisplayCharacter(~+hour/ 10); LCD_DisplayCharacter(~+hour% lO); LCD_DisplayCharacter(’:, ); WDR(); LCD_DisplayCharacter(~+m~/ 10)} LCD_DisplayCharacter(~+min% 10); LCD_DisplayCharacter(39。: ’); WDR(); LCD_DisplayCharacter(d~+s~/ 10); LCD_DisplayCharacter(~+sec% 10): LCD_Cursor(2, ii); WDR(); LCD_DisplayCharacter(~Y+month/ 10); LCD DisplayCharacter(dY+month% 10); LCD_DisplayCharacter/ 0; WDR(); LCD_DisplayCharacter(~+date/ 10); LCD_DisplayCharacter(~+date% 10): WDR(); } } } usart. c 本科 畢業(yè)設計 (論文 ) 26 define USART_C include”includes. h” void usart_putchar(char c) { if(c==飛 rr) usart_putchar@f); while(UCSRAamp。(15)); UDR=c: ) void init—usart(void) { // USART initialization // Communication Parameters: 8 Data, 1 Stop。 No Parity // USART Receiver: Off // USART Transmitter: On // USART Mode: Asynchronous // USART Baud rate: 19200 UCSRA=Ox00; UCSRB=Ox08; UCSRC=0x86; UBRRH=0x00; UBRRL=0x0C; 本科 畢業(yè)設計 (論文 ) 27 第五章 PROTEUS 使用 編程環(huán)境 PROTEUS PROTEUS 軟件是由英國 LabCenter Electronics 公司開發(fā)的 EDA 工具軟件,由 ISIS和 ARES 兩個軟件構成,其中 ISIS 是一款便捷的電子系統(tǒng)仿真平臺軟件, ARES 是一款高級的布線編輯軟件,它集成了高級原理 布線圖、混合模式 SPICE 電路仿真、 PCB 設計以及自動布線來實現(xiàn)一個完整的電子設計。 用 PROTEUS ISIS 對 電子萬年歷 的硬件電路設計 通過 PROTEUS ISIS 軟件的 VSM(虛擬仿真技術),用戶可以對模擬電路、數(shù)字電路、模數(shù)混合電路,以及基于微控制器的系統(tǒng)連同所有外圍接口電子元器件一起仿真。 用 PROTEUS ISIS 設計硬件電路的過程 ① 選擇設計圖紙的到小 根 據(jù)設計所使用到元器件的多少,選擇合適大小的設計圖紙,操作是單擊菜單欄上的System→ Set Sheet Size ,然后彈出如圖 51所示的對話框,從中選擇合適大小的圖紙,也可以選擇 User 進行圖紙的自定義設置。在設計過程中也可以通過此方法調整圖紙的大小。 圖 51 ② 選取仿真所需的元器件 選取元器件的方式是,單擊如圖 52 所示的按鈕“ P”。會彈出如圖 53所示的窗口。 本科 畢業(yè)設計 (論文 ) 28 圖 52 圖 53 從此窗口的左上角的“ Keywords”中輸入 電子萬年歷 設計用到的器件,如輸入“ AT89C51”,在中間會列出帶有輸入關鍵字的元器件,選擇合適的元器件并雙擊它,則已經選擇好了該元器件。然后再在“ Keywords”中輸 入其他所需的元器件,用同樣的方法進行操作。最后選擇好所有的元器件如圖 54所示。 本科 畢業(yè)設計 (論文 ) 29 圖 54 所用器件 其中 74LS174 表示 三個串行接口 , AT89C51 代表單片機會 , DS1302 代表時鐘芯片 ,RESPACK8代表八排電阻 。 ③ 把元器件放到圖紙的合適位置,進行布線 單擊如圖 54 所示的元器件 AT89C51,再在右邊圖紙上單擊,就把元器件放入到了圖紙上。再用同樣的方法把 ds1302 放入到圖紙的合適位置。如果元器件放置錯誤,這可通過兩次右擊刪除所放置的元器件,如果位置放得不理想,可以先右擊該器件,然 后按住左鍵進行移動。在布線之前,如果覺得元器件的引腳的方向不好布線,則可以通過單擊這四個按鈕進行調整,這四按鈕的意思分別是:順時針旋轉 90176。,逆時針旋轉 90176。,沿 Y軸對稱,沿 X軸對稱。通過這樣的調整,可以使整個布局合理一些。接著進行布線,由于 PROTEUS ISIS 有自動布線的功能,比如要把 AT89C51 的 P2口連到 74LS164的 OUT8 口,只要先在 P2引腳上單擊一下,再在 OUT8 引腳上單擊,則 ISIS 自動將兩個引腳連上線。 本科 畢業(yè)設計 (論文 ) 30 圖 55 at89c51與 ds1302的連接 ISIS 還提供了網(wǎng)絡布 線,即不使用線連接也可以把兩個引腳虛擬的連接了起來。具體操作是:單擊要連線的一個引腳,連出適當?shù)木嚯x后雙擊,另一個引腳也同樣操作,在單擊如圖 65所示的“ LBL”按鈕,再在圖中 引腳的 A 處單擊,在彈出的窗口中的“ String”中填入名稱,如“ A” ,對 OUT7 引腳進行同樣的操作,在“ String”中也填入名稱“ A”,這樣就完成了 引腳與 RES 引腳的網(wǎng)絡連接,這個好處避免兩個距離比較遠的器件進行真實線的連接,使布線美觀。 ④ 編輯窗口連接端子 要讓最后的設計成功仿真時,必須放置并連接端子。選擇 , 從中可以選擇電路原理中的兩個通用的端子,一個是接地,一個是電源。 如圖 56所示。 圖 56 連接端子 本科 畢業(yè)設計 (論文 ) 31 在 PROTEUS ISIS 中的最終設計圖如圖 57所示 圖 57仿真圖 最后分別對各元器件的屬性值進行設置,單擊 按鈕,進行電氣檢測,查看接線是否合理,說明硬件電路已經順利的完成。 用 PROTEUS ISIS 進行 電子萬年歷 的仿真測試 ① 添加 Keil 中編寫的代碼文件 單擊工具欄中的 Source→ Add/Remove Source files...,彈出一個對話框,分別單擊“ New” ,然 后選擇在 Keil 中編寫的數(shù)字電壓表 .ASM 匯編語言程序 ,單擊“ OK” ,完成添加代碼文件。 ② 編譯源程序,生成 .HEX 目標代碼文件 單擊 Source→ Build All。如果編譯結果沒有錯誤,會出現(xiàn)如圖 58 所示的結果。 本科 畢業(yè)設計 (論文 ) 32 圖 58 ③ 加載 .HEX 目標代碼文件 通過如圖 59所示的對話框,選擇剛才編譯生成的 .HEX 文件。設置使單片機的運行頻率為 6MHz 。 圖 59 ④ 單擊 按鈕,進行對 電子萬年歷 的仿真測試, 運行結果如圖 510 所示。 本科 畢業(yè)設計 (論文 ) 33 圖 510仿真測試 ⑤ PROTEUS 的調試功 能 由于使用的是匯編語言編寫的程序,如果 在測量的時候測量值顯示錯誤,說明程序中存在問題,這個問題只用在仿真測量的時候才能被發(fā)現(xiàn),這時可以使用 PROTEUS 對程序進行調試。 單擊 按鈕,再單擊菜單欄中的 Debug,可以在最下面選擇打開內存觀察窗口,寄存器值觀察窗口,匯編語言源代碼窗口等等。在匯編語言源代碼窗口中,也可以在所需要設置斷點的語句前雙擊設置斷點,當設置斷點的時候,程序運行到所設斷點處停止,從而可以在內存、寄存器等的值的變化,從而找出程序出錯的地方。 本科 畢業(yè)設計 (論文 ) 34 結論 本課題從理論到實際應用,用 AT89C51 單片 機與 8 位模數(shù)轉換芯片 74LS164 等一些電路的組合,成功的設計出了一個 電子萬年歷。而且 所設計的 電子萬年歷 設計也按當初要求的能夠在 PROTEUS 中進行仿真,并且能夠很精確的顯示 年歷 。 可以說該電子萬年歷具有很高的實用價值。 在軟件設計的過程中,利用了 Keil 這個軟件在程序錄入和調試的時候的優(yōu)越性,讓我能夠在編寫軟件的時候很方便的發(fā)現(xiàn)軟件中的錯誤,現(xiàn)在已經能夠使用 Keil 對所設計的程序進行調試。對于 PROTEUS 這款軟件,也能熟練掌握電路設計仿真。由于平時沒有接觸過這兩個軟 件 ,加上畢業(yè)設計的時間有限,對于他們的連 接調試程序,未能熟練掌握,但以后有機會的話會再好好學習的。 本次設計的 電子萬年歷 也存在的不足的地方, 有待于以后的改進。 本科 畢業(yè)設計 (論文 ) 35 致謝 經過三個多月的時間,畢業(yè)設計按照預期完成了,由于本人的知識水平有限,論文和設計中有遺漏和缺陷的地方懇請指正。 感謝我的導師高玉芹 老師給了我莫大的幫助,在她悉心的指導和嚴格的要求下,作品和論文順利完成了。論文從選題和最終完成,凝結著導師的辛勤的汗水,她不辭勞苦的教導、嚴謹?shù)淖黠L使我終生受益。在此畢業(yè)設計完成之際,謹向導師和所有幫助過我的老師致以崇高的敬意和衷心的感謝。 還有感謝家人、 朋友還有宿舍里所有的室友,是他們給我創(chuàng)造了良好的學習氛圍,在學習和生活中給了我支持和幫助。在以后的學習生活中我會 時時敦促自己更加努力,不辜負師長、親人、朋友對我的期望。 本科 畢業(yè)設計 (論文 ) 36 參考文獻 [1] 趙長德 .微型計算機原理與接口技術 [M].北京:機械工業(yè)出版社, 1999: 98350. [2] 蘇平 .單片機的原理與接口技術 [M].北京
點擊復制文檔內容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1