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

正文內(nèi)容

基于51單片機(jī)的多功能電子鐘設(shè)計(jì)(已改無錯(cuò)字)

2023-01-18 02:32:43 本頁面
  

【正文】 38 DS18B20 外接電源圖 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 18 液晶顯示屏 LCD1602 (一) LCD1602 特點(diǎn)說明 [12] [13] 液晶顯示模塊由于具有低功耗、壽命長(zhǎng)、體積小、顯示內(nèi)容豐富、價(jià)格低、接口控制方便等優(yōu)點(diǎn),因此在各類電子產(chǎn)品中被極廣泛地推廣和應(yīng)用。字符型液晶顯示模塊是一類專門用于顯示字母、數(shù)字、符號(hào)等點(diǎn)陣式液晶顯示模塊。本系統(tǒng) 設(shè)計(jì)采用字符型液屏顯示模塊 LCD1602 作為顯示器件,這樣不僅簡(jiǎn)化了系統(tǒng)的硬件設(shè)計(jì),而且極大地提高了系統(tǒng)的可靠性。字符型液晶顯示模塊 LCD1602是單片機(jī)應(yīng)用設(shè)計(jì)中最常用的信息顯示器件。LCD1602 可以顯示兩行,每行 16 個(gè)字符,采用+ 5V 電源供電,外圍電路配置簡(jiǎn)單,價(jià)格便宜,具有很高的性價(jià)比 [14]。 (二) LCD1602 功能介紹 LCD1602 各引腳功能如表 37所示。 表 37 LCD1602管腳功能表 ( 1)基本操作時(shí)序: LCD1602 讀寫操作時(shí)序總體上來說是比較 簡(jiǎn)單的,掌握其有兩種方法:一種是直接看時(shí)序圖,另外一種方法是直接記憶和總結(jié)讀寫時(shí)電平高低和變化。很顯然第二種更簡(jiǎn)單、直接,下面就列出典型讀寫的時(shí)序要求,以方便編寫程序。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 19 讀狀態(tài) 輸入: RS=L, R/W=H, E=H 輸出: D0D7=狀態(tài)字 寫指令 輸入: RS=L, R/W=L, D0D7=指令碼, E=高脈沖 輸出:無 讀數(shù)據(jù) 輸入: RS=H, R/W=H, E=H 輸出: D0D7=數(shù)據(jù) 寫數(shù)據(jù) 輸入: RS=H, R/W=L, D0D7=數(shù)據(jù), E=高脈沖 輸出:無 ( 2)狀態(tài)字說明: 表 38 狀態(tài)字表 對(duì)控制器每次進(jìn)行讀寫操作之前,都必須進(jìn)行讀寫檢測(cè),確保 STA7為 0 ( 3) 指令說明: 表 39 顯示模式設(shè)置表 表 310 顯示開 /關(guān)及背光燈設(shè)置表 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 20 ( 4) 數(shù)據(jù)控制 控制器內(nèi)部有一個(gè)數(shù)據(jù)地址指針,用戶可通過它們來訪問內(nèi)部的全部 80字節(jié) RAM ( 5) 數(shù)據(jù)指針設(shè)置 表 311 數(shù)據(jù)指針設(shè)置表 ( 6) 其他設(shè)置 表 312 其他設(shè)置指令表 (三) LCD1602 初始化過程 (1)延時(shí) 15ms (2)寫指令 38H(不檢測(cè)忙信號(hào) ) (3)延時(shí) 5ms (4) 寫指令 38H(不檢測(cè)忙信號(hào) ) (5)寫指令 5ms (6) 寫指令 38H(不檢測(cè)忙信號(hào) ) (7)之后每次寫指令、讀 /寫數(shù)據(jù)操作之前均需檢測(cè)忙信號(hào) (8)寫指令 38H:顯示模式設(shè)置 (9)寫指令 08H:顯示關(guān)閉 (10) 寫指令 01H:顯示清屏幕 (11) 寫指令 06H:顯示光標(biāo)移動(dòng)設(shè)置 (12) 寫指令 0CH:顯示及光標(biāo)設(shè)置 系統(tǒng)硬件 架構(gòu) 本設(shè)計(jì)以模塊化的方式來進(jìn)行硬件電路的設(shè)計(jì)和調(diào)試。單片機(jī)的模塊化就是把系統(tǒng)分成各個(gè)具有獨(dú)立功能又可以互相銜接的簡(jiǎn)單模塊,將復(fù)雜難懂的指令、語法、編程及其電基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 21 路分解,使設(shè)計(jì)簡(jiǎn)單化 [15]。本設(shè)計(jì)的電路模塊可以分為單片機(jī)最小系統(tǒng)模塊,時(shí)鐘模塊,溫度傳感器模塊,液晶顯示模塊,按鍵模塊,蜂鳴器報(bào)警模塊。 單片機(jī)最小系統(tǒng) 本設(shè)計(jì)的單片機(jī)最小系統(tǒng)主要包括 STC89C52芯片,晶振電路和復(fù)位電路。 (一)晶振電路 最小系統(tǒng)晶振電路如圖 39 所示。 圖 39 晶振電路圖 STC89C52內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,引腳 XTAL0和 XTAL1分別是此放大器的輸入端和輸出端。時(shí)鐘可以由內(nèi)部方式產(chǎn)生或外部方式產(chǎn)生。內(nèi)部方式的時(shí)鐘電路如圖 39所示,在 XTAL0和 XTAL1引腳上外接定時(shí)元件,內(nèi)部振蕩器就產(chǎn)生自激振蕩。定時(shí)元件通常采用石英晶體和電容組成的并聯(lián)諧振回路。晶體振蕩頻率可以在 ~12MHz之間選擇,電容值在 5~ 30pF之間選擇,電容值的大小可對(duì)頻率起微調(diào)的作用。 單片機(jī)晶振兩個(gè)電容的作用:這兩個(gè)電容叫晶振的負(fù)載電容,分 別接在晶振的兩個(gè)腳上和對(duì)地的電容,一般在幾十 pf。它會(huì)影響到晶振的諧振頻率和輸出幅度。晶振的負(fù)載電容 =[(Cd*Cg)/(Cd+Cg)]+Cic+△ C式中 Cd, Cg為分別接在晶振的兩個(gè)腳上和對(duì)地的電容, Cic(集成電路內(nèi)部電容) +△ C( PCB上電容)經(jīng)驗(yàn)值為 3至 5pf。 (二)復(fù)位電路 最小系統(tǒng)復(fù)位電路如圖 310 所示。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 22 圖 310 復(fù)位電路圖 無論使用哪種類型的單片機(jī),總要涉及到單片機(jī)復(fù)位電路的設(shè)計(jì).而單片機(jī)復(fù)位電路設(shè)計(jì)的好壞,直接影響 到整個(gè)系統(tǒng)工作的可靠性.許多用戶在設(shè)計(jì)完單片機(jī)系統(tǒng),并在實(shí)驗(yàn)室調(diào)試成功后,在現(xiàn)場(chǎng)卻出現(xiàn)了“死機(jī)”、“程序走飛”等現(xiàn)象,這主要是單片機(jī)的復(fù)位電路設(shè)計(jì)不可靠引起的 [16]。 復(fù)位電路的基本功能是:系統(tǒng)上電時(shí)提供復(fù)位信號(hào),直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號(hào)。為可靠起見,電源穩(wěn)定后還要經(jīng)過一定的延時(shí)才撤銷復(fù)位信號(hào),以防電源開關(guān)或電源插頭分 合過程中引起的抖動(dòng)而影響復(fù)位。單片機(jī)復(fù)位電路參數(shù)的選定須在振蕩穩(wěn)定后保證復(fù)位高電平持續(xù)時(shí)間大于 2 個(gè)機(jī)器周期。 單片機(jī)復(fù)位電路主要有四種類型:微分型復(fù)位電路;積分型復(fù)位電路;比較器型復(fù)位 電路;看門狗型復(fù)位電路[17]。 (三)最小系統(tǒng)整體圖 最小系統(tǒng)整體電路如圖 311 所示。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 23 圖 311 最小系統(tǒng)電路圖 時(shí)鐘模塊 本設(shè)計(jì)中的 DS12887 芯片 AD0AD7 引腳與 STC89C52 芯片的 P2口相連接。 MOT 引腳接地,為 INTEL 總線時(shí)序方式。因此 R/W 和 DS 引腳也為對(duì)應(yīng) INTEL 的操作模式。 時(shí)鐘模塊電路如圖 312 所示。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 24 圖 312 時(shí)鐘模塊電路圖 溫度傳感器模塊 溫度傳感器 DS18B20 的接法很 簡(jiǎn)單,它的 DQ 引腳與 STC89C52 芯片的 引腳相連接。這里只用到一個(gè)溫度傳感器,若要使用多個(gè)則只需將所有的 DS18B20 的 I/O 口接在一起即可,在具體操作時(shí),通過讀取每個(gè)芯片的內(nèi)部序列號(hào)來識(shí)別 [18]。 溫度傳感器模塊電路如圖 313 所示。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 25 圖 313 溫度傳感器模塊 液晶顯示模塊 液晶 LCD1602的 D0D7引腳與 STC89C52芯片的 P2口相接,而控制引腳 RS, R/W, CS則分別接 , , 。引腳 3接 一個(gè) 1K的電位器 來 調(diào)整對(duì)比度 , 從而達(dá)到合適的背光燈對(duì)比度。 液晶顯示模塊電路如圖 314 所示。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 26 圖 314 液晶顯示模塊 按鍵模塊 74LS21 芯片 為兩組 4 輸入與門(正邏輯) 。 本設(shè)計(jì)中的四個(gè)按鍵分別接到 74LS21 芯片的 1A, 1B, 1C, 1D,即 4 輸入與門的 4 個(gè)輸入。而 74LS21 的輸出 1Y 則接到 STC89C52芯片的 (INT0)引腳,由于該引腳為低電平有效,當(dāng)警報(bào)發(fā)生時(shí)按下四個(gè)按鍵中任意一個(gè)都會(huì)使輸出 1Y 變?yōu)榈碗娖?,則芯片發(fā)生中斷,報(bào)警停止。同時(shí),四個(gè)按鍵 key1key4也接到 STC89C52 芯片的 起到調(diào)節(jié)時(shí)間日 期等功能。四個(gè)按鍵中 S1 為切換鍵,S2 為設(shè)定鍵, S3 為上調(diào)鍵, S4 下調(diào)鍵。 按鍵模塊電路如圖 315所示。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 27 圖 315 按鍵模塊 蜂鳴器報(bào)警模塊 蜂鳴器報(bào)警模塊的作用:當(dāng)定時(shí)鬧鐘時(shí)間到時(shí),蜂鳴器發(fā)出預(yù)設(shè)的聲音,而發(fā)光二極管則會(huì)隨著音樂閃爍。本模塊采用 PNP三極管為蜂鳴器放大電流,基極通過 片機(jī) STC89C52的閑置引腳 ,集電極直接接地,發(fā)射極接發(fā)光二極管和蜂鳴器。 報(bào)警模塊電路如圖 316所示。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 28 圖 316 報(bào)警模塊 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 29 第四章 軟件設(shè)計(jì) 軟件設(shè)計(jì)總體說明 本系統(tǒng)的程序采用 C 語言編寫,為了便于修改和調(diào)試,系統(tǒng)軟件采用模塊化設(shè)計(jì),程序的編寫編譯在 WAVE6000 軟件中完成。 首先對(duì) STC89C5 DS1288 LCD160 DS18B20 進(jìn)行初始化,日歷和溫度信息通過 LCD1602 顯示出來,當(dāng)當(dāng)前時(shí)間與設(shè)定的鬧鐘時(shí)間相同后, LCD1602 上顯示的時(shí)間停止,但,實(shí)際上芯片內(nèi)部的時(shí)間仍然在走。時(shí)鐘芯片向單片機(jī)發(fā)出中斷請(qǐng)求,單片機(jī)通過報(bào)警模塊進(jìn)行 警報(bào),此時(shí),若按下四個(gè)按鍵中的任意一個(gè),報(bào)警停止, LCD1602 顯示的時(shí)間繼續(xù)精確顯示。 [20] 系統(tǒng)中有四個(gè)按鍵,即:設(shè)置鍵 S切換鍵 S上調(diào)鍵 S下調(diào)鍵 S4。 ( 1)按下 S1 鍵,系統(tǒng)進(jìn)入設(shè)置狀態(tài),再按下 S2 鍵可在除了溫度外的項(xiàng)目,如年、月、日、時(shí)、分、秒、星期、鬧鐘上停留,此時(shí)再按下上調(diào)鍵 S3 即可進(jìn)行加一操作,按下下調(diào)鍵 S4 即可進(jìn)行減一的操作。 ( 2)同時(shí)按下 S1 鍵和 S2 鍵會(huì)將當(dāng)前的時(shí)間恢復(fù)到程序中設(shè)定的默認(rèn)時(shí)間。 ( 3)同時(shí)按下 S3 鍵和 S4 鍵可對(duì)鬧鐘進(jìn)行開啟和關(guān)閉的操作。 主程序軟件實(shí)現(xiàn) 主程序流程圖 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 30 圖 41 主程序流程圖 主程序代碼 void main() { lcd_init()。 //LCD 初始化 Start_calendar ()。 //日歷開啟 initial_irq ()。 //中斷開啟 enable_set = F。 //設(shè)置禁止 while(1) { if ( enable_play_song ) //鈴聲使能 { play_song()。 //播放鈴聲 enable_play_song = F。 //禁止鈴聲 } 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 31 update_display_data ()。 //更新顯示數(shù)據(jù) display_calender_and_temp ()。 //顯示日歷及溫度 if (enable_set) //設(shè)置使能 { delay (100)。 //延時(shí) 100ms update_set_display (cur_set_pos)。 //更新設(shè)置的信息 display_calender_and_temp ()。 //顯示日歷及溫度信息 delay (100)。 //延時(shí) 100ms date_time[TIME_SIGN_POS] = 39。:39。 //時(shí)間的時(shí)和分之間顯示 ‘: ’ continue。 //繼續(xù)循環(huán) } delay (200)。 //延時(shí) 200ms flash_time_sign ()。 //‘: ’閃爍 } } 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 32 DS18B20 模塊軟件實(shí)現(xiàn) DS18B20 模塊子程序流程圖 圖 42 DS18B20子程序流程圖 DS18B20 模塊子程序代碼 include include include include include sbit dq= P1^7。 基于 51 單片機(jī)的多功能電子鐘設(shè)計(jì) 33 void delay_t
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1