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

正文內(nèi)容

基于at89c51電子萬年歷的設(shè)計(jì)及論文(編輯修改稿)

2025-07-23 06:08 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 。如下圖38所示。圖38 按鍵的設(shè)計(jì) 顯示模塊的設(shè)計(jì)本設(shè)計(jì)中由于要對(duì)時(shí)間、溫度進(jìn)行顯示所以選擇液晶顯示屏1602模塊作為輸出。如圖39所示。圖39 LCD 1602實(shí)物圖1.LCD1602 主要技術(shù)參數(shù)①顯示容量:162 個(gè)字符 ②芯片工作電壓:—③工作電流:() ④模塊最佳工作電壓: ⑤字符尺寸:(WH)mm 2.引腳功能說明 LCD 1602采用標(biāo)準(zhǔn)的 14 腳(無背光)或 16 腳(帶背光)接口,各引腳接口說明如下表所示。表34引腳接口說明編號(hào)符號(hào)引腳說明編號(hào)符號(hào)引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號(hào)14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極LCD1602主要管腳介紹:V0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過高時(shí)會(huì)產(chǎn)生鬼影使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對(duì)比度。RS為寄存器選擇端,高電平時(shí)選擇數(shù)據(jù)寄存器,低電平時(shí)選擇指令寄存器。R/W為讀寫信號(hào)線端,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址;當(dāng)RS為高電平R/W 為低電平時(shí)可以寫入數(shù)據(jù)。E為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。,R/, E ,當(dāng)RS=0時(shí),對(duì)LCD1602寫入指令;當(dāng)RS=1時(shí),對(duì)LCD1602寫入數(shù)據(jù)。當(dāng)R/W端接高電平時(shí)芯片處于讀數(shù)據(jù)狀態(tài),反之處于寫數(shù)據(jù)狀態(tài),E端為使能信號(hào)端。當(dāng)R/W為高電平,E端也為高電平,RS為低電平時(shí),液晶顯示屏顯示需要顯示的示數(shù)。圖310為1602液晶顯示屏與單片機(jī)的硬件連接圖。圖310 1602液晶顯示屏與單片機(jī)的硬件連接圖 總硬件設(shè)計(jì)本章主要介紹了系統(tǒng)硬件設(shè)計(jì),其中對(duì)時(shí)鐘芯片DS1301602液晶顯示屏、DS18B20溫度傳感器和AT89C51最小系統(tǒng)的設(shè)計(jì)做了詳細(xì)闡述。此外還介紹了各模塊和單片機(jī)的連接方法、其特性及電路原理最后確定系統(tǒng)的整體硬件設(shè)計(jì)方案。圖311 總硬件設(shè)計(jì)電路圖第四章 軟件設(shè)計(jì) 軟件設(shè)計(jì)方案軟件設(shè)計(jì)是本設(shè)計(jì)的關(guān)鍵,軟件程序編寫的好壞直接影響著系統(tǒng)運(yùn)行情況的良好。因本程序涉及的模塊較多,所以程序編寫也采用模塊化設(shè)計(jì),C語言具有編寫靈活、移植方便、便于模塊化設(shè)計(jì)的特點(diǎn),所以本系統(tǒng)的軟件采用C51編寫。 電子萬年歷的程序主要包括3個(gè)方面的內(nèi)容:一是DS1302從單片機(jī)中讀取數(shù)據(jù)進(jìn)行計(jì)數(shù),二是利用按鍵進(jìn)行時(shí)間和溫度的調(diào)整,三是LCD從單片機(jī)中讀取數(shù)據(jù)顯示時(shí)間和溫度。 各模塊分析主函數(shù)是整個(gè)程序運(yùn)行的開始,主函數(shù)的內(nèi)容并不復(fù)雜,就是不斷的循環(huán)調(diào)用子函數(shù),把各個(gè)子函數(shù)的功能均實(shí)現(xiàn),最后主函數(shù)實(shí)現(xiàn)的功能就是我們?cè)O(shè)計(jì)、萬年歷的要求和目的。主程序流程圖如下圖41所示。由于LCD1602,DS18B20,DS1302的數(shù)據(jù)讀取及指令寫入函數(shù)均已在各自的頭文件中完成,在主程序中只須引用即可。主函數(shù)是軟件設(shè)計(jì)的核心,它是把各個(gè)模塊函數(shù)連接起來的橋梁。把各個(gè)功能通過模塊在主函數(shù)里實(shí)現(xiàn)。圖41主程序流程圖流程圖分析:首先系統(tǒng)初始化,系統(tǒng)開始運(yùn)行,當(dāng)有設(shè)置鍵按下時(shí)進(jìn)入修改時(shí)間模式,無按鍵按下時(shí)讀取時(shí)間、溫度等數(shù)據(jù)送入液晶屏顯示;在修改時(shí)間模式下設(shè)置時(shí)間完成后再送數(shù)據(jù)到液晶屏顯示。時(shí)鐘流程圖如圖42所示。流程圖分析:DS1302開始計(jì)時(shí)時(shí),首先進(jìn)行初始化,當(dāng)有中斷信號(hào)時(shí),讀取時(shí)鐘芯片的數(shù)據(jù)送入液晶屏顯示。這時(shí)若有設(shè)置鍵按下時(shí),進(jìn)行時(shí)間修改,完成后將數(shù)據(jù)送入時(shí)鐘芯片;若沒有按鍵按下,則直接存入EPROM,送入液晶屏顯示。圖42時(shí)鐘流程圖溫度采集流程圖如圖43所示。流程圖分析:開始進(jìn)入初始化DS18B20,就是通過主線拉低單線產(chǎn)生復(fù)位脈沖然后釋放該線,如果有應(yīng)答脈沖,即發(fā)起ROM命令,當(dāng)成功的執(zhí)行操作命令后,就開始進(jìn)行溫度轉(zhuǎn)換,當(dāng)轉(zhuǎn)換完成后又開始初始化DS18B20是否有應(yīng)答脈沖,若有就發(fā)起命令,即能同時(shí)讀出數(shù)據(jù)。圖43溫度采集流程圖顯示程序流程圖如圖44。流程圖分析:首先對(duì)1602顯示屏進(jìn)行初始化(初始化大約持續(xù)10ms左右),然后檢查忙信號(hào),若BF=0,則獲得顯示RAM的地址,寫入相應(yīng)的數(shù)據(jù)顯示;若BF=1,則代表模塊正在進(jìn)行內(nèi)部操作,不接受任何外部指令和數(shù)據(jù),直到BF=0為止。圖44顯示程序流程圖鍵盤模塊流程圖如圖45。在這里采用是獨(dú)立式按鍵,按鍵掃描其實(shí)很簡(jiǎn)單,也就是按鍵消抖,只需三步,一步是判斷按鍵按下,是哪個(gè)按鍵按下;二步是延時(shí),大約10MS左右就可以了,三步是檢測(cè)是否還是剛才按鍵按下。按鍵處理是先檢測(cè)秒按鍵是否按下,秒按鍵如果按下,秒就加1;如果沒有按下,就檢測(cè)分按鍵是否按下,分按鍵如果按下,分就加1;如果沒有按下,就檢測(cè)時(shí)按鍵是否按下,時(shí)按鍵如果按下,時(shí)就加1;如果沒有按下,就把時(shí)間顯示出來。 判斷有鍵按下的標(biāo)志為:讀取的鍵值取反后不全為0,if(test( ))。而判斷按鍵是否釋放的標(biāo)志是:讀取的鍵值取反后為0。圖45鍵盤模塊流程圖 值得注意的是,軟件延時(shí)去抖動(dòng)這一步不要省略,否則對(duì)按鍵的判斷可能會(huì)產(chǎn)生誤判斷。在使用動(dòng)態(tài)掃描顯示的程序中,一般采用動(dòng)態(tài)掃描顯示程序作為去抖動(dòng)的延時(shí)。如圖46所示。圖46按鍵抖動(dòng)信號(hào)波形第五章 系統(tǒng)調(diào)試 本系統(tǒng)已符合設(shè)計(jì)課程基本要求,即可用LCD1602液晶顯示屏顯示年、月、日、時(shí)、分、秒以及溫度等信息。可使用按鍵開關(guān)可實(shí)現(xiàn)時(shí)間和日期的調(diào)整。系統(tǒng)調(diào)試分為硬件調(diào)試、軟件調(diào)試和軟硬件聯(lián)調(diào)。調(diào)試時(shí)按模塊調(diào)試,各模塊逐個(gè)調(diào)試通過后再聯(lián)調(diào)。 硬件調(diào)試 (1)按鍵調(diào)試對(duì)于按鍵電路我們?cè)赑ROTEUS上先進(jìn)行了仿真,仿真圖如圖51所示,通過給按鍵電路一段簡(jiǎn)單的程序,去測(cè)試按鍵電路是否正常。 程序如下:includesbit ks=P3^0。void delay(void)。void left(void)。void main(void){ unsigned char i,t。 P3=0xff。 while(1) { if(ks==0) { for(i=0。ii++) for(t=0。t5。t++)。 if(ks==0) left()。 } else P1=0x00。 }}void delay(void){ unsigned char a,b。 a=255。 while(a) { b=255。 while(b)。 }}/**/void left(void){ unsigned char i=8,a=1。 while(i) { P1=~a。 a=a1。 delay()。 }}圖51 按鍵在PROTEUS測(cè)試通過給按鍵電路一段的程序,看當(dāng)按鍵按下時(shí),LED燈是不是左移。如果左移說明按鍵正常,沒有太靈敏,也沒有太遲鈍。(2) 1602顯示檢測(cè)圖52 1602顯示第一列程序圖53 1602顯示第一列顯示第一列正常。圖54 1602顯示兩列列程序圖55 1602顯示兩列顯示兩列正常。圖56 1602完整顯示程序圖57 1602完整顯示經(jīng)檢測(cè)1602顯示正常。(3) DS18B20精度檢測(cè)圖58溫度顯示程序當(dāng)前的溫度圖59溫度顯示當(dāng)前溫度加1后模擬的溫度顯示圖510顯示加1后的溫度有一定的誤差。 軟件仿真聯(lián)調(diào) 本次課題,選用Keil 軟件來調(diào)試程序,仿真部分采用Proteus Professional軟件,此軟件功能強(qiáng)大且操作較為簡(jiǎn)單,可以很容易的實(shí)現(xiàn)各種系統(tǒng)的仿真。首先在Keil設(shè)置聯(lián)機(jī)調(diào)試,在Project Workspace窗口中Target1右擊,選擇Options for Target’Target1’,點(diǎn)擊Debug,選擇Proteus VSM Simulator會(huì)出現(xiàn)如圖511所示:
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1