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

正文內(nèi)容

電子萬年歷及溫度計設(shè)計畢業(yè)設(shè)計-wenkub

2022-12-13 04:46:08 本頁面
 

【正文】 ional calendar, and more and more people are wele. This design microcontroller to STC89C52 as the main chip temperature sensor DS18B20 temperature measurement, the clock chip DS1302 realtime clock function, and LCD12864 LCD screen displays realtime clock, the current temperature and other information. Can develop students39。 liquid crystal display。 隨著人們生活水平的提高,智能產(chǎn)品將會越來越受到人們的歡迎,前景非常廣闊。 DALLAS 公司推出的 具有 低功耗 性能的 實時時鐘電路 DS1302, 它可以對 秒、分鐘、小時、星期、日、月份、年份 進行 準確 計時 ,同時 還具有 補償 閏年 等 好 多種 不同 功能 ,DS1302 使用很長時間也不會壞 ,誤差 相對 小 。 電子萬年歷及電子溫度計具有精度高、顯示美觀的優(yōu)點,在 商場、 家 庭、賓館、銀行、車站等場合都有應(yīng)用。 整個系統(tǒng) 共 由 6 部分組成:( 1) STC89C52 單片機 作為主控芯片 ; ( 2) DS18B20 溫度測量模塊; ( 3) LCD12864液晶屏顯示模塊; ( 4) DS1302 實時 時鐘模塊; ( 5) 鍵盤 模塊 ; ( 6) USB 電源模塊 ; 系統(tǒng)框圖如圖 所示。因為 8 位 CPU 和 Flash 存儲器組合在單個芯片中,因此STC89C52 是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性好、價格低廉的方案。其引腳排列如圖 所示。它作為一個反相放大器的輸入端存在于單片機的內(nèi)部, 這個 片內(nèi)振蕩器 就是由這個放大器構(gòu)成的 。在接 擴展 I/O 口 或 接 片外存儲器 時, P0 口作為地址總線和 數(shù)據(jù)總線 復(fù)用 。 P3 口 (10~17 腳 ): ~ 統(tǒng)稱為 P3 口。 —(12 腳 ) 0INT :外部中斷 0 請求端,低電平有效。 —(16 腳 )WR :外部數(shù)據(jù)存儲器寫選通,低電平有效。 單片機的最小系統(tǒng) 單片機的最小系統(tǒng)是智能化儀器的基礎(chǔ),也是測控、監(jiān)控的重要組成部分。因此,復(fù)位是對單片機 的工作來說非常重要。 由于 電容的充電效應(yīng),高電平會被保持一段時間以使單片機有足夠的時間來復(fù)位。 此外晶振還有一個非常重要的參數(shù)— 負載電容值,如果選擇與負載電容值相等的并聯(lián)電容時,就會得到晶振標稱的諧振頻率 [7]。編碼鍵盤的優(yōu)點是接口簡單、使用方便、響應(yīng)速度快,但是其所用到的硬件電路非常復(fù)雜。如最先按下的鍵為系統(tǒng)的有效按鍵,或者把按下時間最長的按鍵作為有效按鍵,除此之外也可以將最后按下或釋放的按鍵作為系統(tǒng)的有效按鍵。等按鍵釋放后再轉(zhuǎn)去執(zhí)行相應(yīng)的程序,以防止連擊的發(fā)生。如果按鍵時抖動則濟南大學(xué)畢業(yè)設(shè)計 7 會引起一次按鍵被認為是輸入了多次即 CPU 多次響應(yīng)指令。當按鍵的數(shù)目比較少的時候可以用硬件的方法消除抖動。獨立式鍵盤 的 按鍵 是 相互獨立 的 ,每個按鍵有一根線接到對應(yīng)的 I/O 口,每根與 I/O 口相連的線上的按鍵相互之間都不影響 。 矩陣式鍵盤又叫行列式鍵盤。 雖然矩陣鍵盤操作較為復(fù)雜,但會節(jié)省大量的 I/O 口 資 源。通常,鍵盤的工作方式有兩種,即循環(huán)掃描和中斷掃描。 ( 2)中斷工作方式 采用掃描 工作方式時,雖然能夠響應(yīng)按鍵輸入的數(shù)據(jù)或命令,但是 該 方式不管是否有鍵盤按下, CPU 總要 不斷的 掃描鍵盤;而當計算機 在工作時,并不需要經(jīng)常有按鍵輸入,因此 CPU 常??諕呙琛1驹O(shè)計 通過熱敏電阻與 DS18B20 進行對比,發(fā)現(xiàn) DS18B20 具有很多熱敏電阻所不具有的特性與優(yōu)點,更符合設(shè)計要求且操作相對簡單,最終 采用 DS18B20 溫度傳感器。 濟南大學(xué)畢業(yè)設(shè)計 9 圖 DS18B20 驅(qū)動電路 顯示模塊 本設(shè)計 通過 LCD1602 與 LCD12864 的對比發(fā)現(xiàn) LCD12864 具有 很多 LCD1602 不具有的優(yōu)點,比如可以顯示漢字等等。 圖 LCD12864 的引腳 LCD12864 各引腳說明如下表 所示: 濟南大學(xué)畢業(yè)設(shè)計 10 表 12864 各管腳說明 實時時鐘 模塊 本設(shè)計采用 DS1302慢速充電時鐘芯片,它通過一個串行接口與單片機進行通信,與時鐘 /RAM 通信只需要三根線:( 1) SCLK(串行時鐘),( 2) I/O(數(shù)據(jù)線),( 3)RST (復(fù)位)。時鐘可以采用帶 AM/PM 的 12 小時格式 或24 小時 格式 運行。 引腳號 引腳名稱 方向 功能說明 1 VSS LCD12864 的電源地 2 VDD LCD12864 的電源正極 3 V0 LCD12864 調(diào)整背光的電壓輸入端 4 RS(CS) H/L 串行模式為片選端;并行模式為數(shù) 據(jù) /指令選擇端 5 R/W(SID) H/L 串行模式為數(shù)據(jù)口;并行讀 /寫選擇信號端 6 E(CLK) H/L 串行模式為同步時鐘;并行模式為使能信號 7 DB0 H/L 數(shù)據(jù) 0 8 DB1 H/L 數(shù)據(jù) 1 9 DB2 H/L 數(shù)據(jù) 2 10 DB3 H/L 數(shù)據(jù) 3 11 DB4 H/L 數(shù)據(jù) 4 12 DB5 H/L 數(shù)據(jù) 5 13 DB6 H/L 數(shù)據(jù) 6 14 DB7 H/L 數(shù)據(jù) 7 15 PSB H/L 串 /并行接口選擇端口 16 NC 空腳 17 /RET H/L 復(fù)位 18 NC 空腳 19 LED_A 背光源的正極( LED+5V) 20 LED_K 背光源的負極( LEDOV) 濟南大學(xué)畢業(yè)設(shè)計 11 VCC11X12X23GND4RST5I/O6CLK7VCC28U*1DS1302+5V12Y132768BT13V10KR310KR2+5VSCLSDARST 圖 DS1302 工作電路 DS1302 外接 晶振,為芯片提供計時脈沖。 DS1302 讀 /寫時序圖如下 圖 和 所示 : 單字節(jié)讀 單 字節(jié)寫 濟南大學(xué)畢業(yè)設(shè)計 12 4 系統(tǒng)軟件 設(shè)計 軟件總體設(shè)計 在 進行 軟件的詳細設(shè)計之前 應(yīng)該首先站在全局高度上進行總體設(shè)計,選擇合理恰當?shù)能浖Y(jié)構(gòu),從而開發(fā)出高質(zhì)量的軟件系統(tǒng)。 (3)程序設(shè)計結(jié)構(gòu)化,各功能程序模塊化,編為子程序的形式。 (6)增強軟件的抗干擾能力,提高軟件的可靠性 [9]。在程序設(shè)計中采用模塊化設(shè)計思想,能使程序可讀性加強,而且編寫時很方便,將要 實現(xiàn)的功能分成幾部分,由于某些功能使用不 僅僅 只 有 一次,將它編成一個子程序,既可隨時 隨意的 多次調(diào)用 已經(jīng)編寫好的子程序 , 而且 修改時也不會影響其他程序 的編寫與運行 [10]。 陽歷程序框圖如下 圖所示 。 濟南大學(xué)畢業(yè)設(shè)計 17 圖 鍵盤程序流程圖 12864 液晶顯示流程圖 液晶顯示模塊程序框圖如下 圖所示 。 我 在 調(diào)試 電子萬年歷的 過程 中遇到了 這 些問題。 ﹙ 2﹚ 在 修改 電子萬年歷的 日期 、時間 時,有時 會出現(xiàn) LCD 亂碼 的 現(xiàn)象。要檢查各器件的性能是否符合要求 在搭接實物之前 就要進行好 。這樣可以避免 由于要連接很多導(dǎo)線 , 某一部分電路 出現(xiàn)多連接或少連接的現(xiàn)象 。 調(diào)試軟件的 過程中 遇到的問題 主要有一下幾個 : ﹙ 1﹚ 在 程序 下載已 后, LCD 顯示屏 出現(xiàn) 不亮 的問題 。 軟、硬件綜合調(diào)試 一個完整 的電子萬年歷系統(tǒng) 的設(shè)計 是一 個 比較 復(fù)雜的過程。 通常采用的方法是通過編制一些 簡單 的調(diào)試程序 對相應(yīng)各硬件單元電路的功能 分別 進行 獨立的 檢查。 ( 3) 軟硬件 綜合 調(diào)試。將 所顯示的結(jié)果 與 電壓表測得的結(jié)果 相比較 可以 發(fā)現(xiàn)本次設(shè)計存在一些誤差。 為了 得 到精確的結(jié)果 , 我們可以通過多次測量取平均 值 的方法。單片機是集 CPU 、 RAM 、ROM 、定時、 計數(shù)和多種接口于一體的微 型 控制器。因為它有很好的開放性和開發(fā) 性,因此對作者的要求比較高,不僅考察了對單片機的掌握能力,更加強調(diào)了對 單片機擴展的應(yīng)用。同時在軟件的編程方面得到 提高,編程能力得到加強, 并且鞏固了所學(xué)的知識。 在此謹向 王 老師表示最誠摯的謝意 ! 同時,也要感謝設(shè)計完成期間 幫助過我的 各位同學(xué) 特別是實驗室的各位同學(xué) 給予我的極大幫助 ,我 通過他們 學(xué)習到了理論知識以及具體的實踐經(jīng)驗, 受 益匪淺, 可以說本次設(shè)計的完成和他們的幫助息息相關(guān)。 總之,這 學(xué)期 的畢業(yè)設(shè)計真的讓我成長很多,我也要盡可能的 在 今后的工作中多學(xué) 知識 , 努力 使自己 不斷完善 。 sbit LCD_RS=P3^2。 //并 /串方式控制 sbit s1=P2^2。 uchar t,exist,flash,wshi,wge,shif,baif。 uchar code dis[]={39。,39。,39。,39。,39。,39。,39。 uchar code dis2[]=溫度: 。x) 濟南大學(xué)畢業(yè)設(shè)計 26 for(y=110。} void write_cmd(uchar cmd) { LCD_RS = 0。 delayms(5)。 } void write_data(dat) { LCD_RS = 1。 delayms(5)。 } void LCD_pos(uchar X,uchar Y) { uchar pos。 else if(X==3) X=0x98。 //12864 上電后 ,需要等一會,才能進行操作 LCD_PSB=1。//顯示開,關(guān)光標 delayms(5)。 delay(8)。 濟南大學(xué)畢業(yè)設(shè)計 28 delay(8)。 } void write_18b20byte(uchar dat) { uchar i。 DQ=datamp。 dat=1。i8。 //釋放總線,為 18b20 輸出電平做準備 if(DQ) value|=0x80。 init_18b20()。 //跳過 ROM write_18b20byte(0x44)。 //跳過 ROM write_18b20byte(0xbe)。 temp=8。 } } void wdisplay() { LCD_pos(1,3)。 write_data(dis[shif])。 } /****1302***/ void write_ds1302_byte(uchar dat) { uchar i。 io=datamp。 } } uchar read_ds1302_byte() { uchar i,value。 sck=0。 濟南大學(xué)畢業(yè)設(shè)計 31 } void write_ds1302(uchar add,uchar dat) { rst=0。 rst=1。 rst=0。 } uchar read_ds1302(uchar add) { uchar a。 _nop_()。 a=read_ds1302_byte()。 _nop_()。 } void read_time() { year=read_ds1302(0x8d)。 hour=read_ds1302(0x85)。 LCD_pos(0,0)。) { write_data(dis1[i])。 濟南大學(xué)畢業(yè)設(shè)計 33 while(dis2[i]!=39。 } year1=year/16。 day1=day/16。 hour1=hour/16。 sec1=second/16。 write_data(dis[0])。 write_data(dis[11])。 濟南大學(xué)畢業(yè)設(shè)計 34 write_data(dis[11])。 write_data(dis[week1])。 write_data(dis[hour2])。 write_data(dis[min2])。 write_data(dis[sec2])。 LCD_pos(3,add)。 shi=dat/10。 write_data(dis[ge])。 while(!s1)。 write_cmd(0x0d)。 write_cmd(0x0d)。 write_cmd(0x0d)。 s1num=0。
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1