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

正文內(nèi)容

電子信息技術(shù)畢業(yè)設(shè)計論文(文件)

2025-07-15 15:17 上一頁面

下一頁面
 

【正文】 計數(shù)脈沖加1計數(shù),此時不占用CPU時間,CPU的工作與計數(shù)器的計數(shù)是同時進行的且互不影響,直到定時/計數(shù)器計滿溢出才向CPU發(fā)出中斷請求信號,CPU通過中斷或軟件查詢方式處理溢出后的服務(wù)。由于計數(shù)器至少需要用兩個機器周期來判斷一個計數(shù)脈沖(計數(shù)脈沖的高電平和低電平的持續(xù)時間在一個機器周期以上),所以從外部輸入的計數(shù)脈沖的最高頻率為晶振產(chǎn)生的時鐘脈沖頻率的24分頻(),否則將會產(chǎn)生計數(shù)誤差。例如,為便于計算,本設(shè)計中的單片機系統(tǒng)采用12MHz的晶振,一個機器周期由12個振蕩脈沖組成,則計數(shù)脈沖的頻率為振蕩頻率的12分頻,即12MHz/12=1MHz,計數(shù)周期為1ms,如果計數(shù)器的初始值為零,則最長定時時間為65536ms。我們可以通過設(shè)置定時器工作方式寄存器TMOD來決定定時/計數(shù)器的啟動方式、計數(shù)脈沖源的選擇(從而可以決定使其工作于計數(shù)功能或定時功能)、工作方式,可通過設(shè)置定時器控制寄存器TCON來控制定時/計數(shù)器的啟動與停止。表312 定時器工作方式寄存器TMOD的各位功能說明位號D7D6D5D4D3D2D1D0位名稱GATEM1M0GATEM1M0高4位控制定時/計數(shù)器T1低4位控制定時/計數(shù)器T0由表312可知。此時,若TRX=1,接通定時/計數(shù)器的輸入脈沖,啟動定時/計數(shù)器工作;若TRX=0,則切斷定時/計數(shù)器的輸入脈沖來源,使定時/計數(shù)器停止工作。當(dāng)=0時,定時/計數(shù)器的計數(shù)脈沖來源于單片機內(nèi)部時鐘脈沖的十二分頻(即機器周期),此時,由于計數(shù)周期是固定的,計數(shù)就轉(zhuǎn)化為定時,定時/計數(shù)器工作在定時功能模式。T0和T1,每個定時/計數(shù)器都有四種工作方式,由M1和M0來設(shè)定。值得注意的是,單片機復(fù)位時,TCON的各位也均被清0。在工作方式0下,兩個定時/計數(shù)器的最大計數(shù)值為=8192,最長定時時間也只有8192個機器周期。(3) 工作方式2(M1M0=10)T0和T1在工作方式2下都是作為8位的定時/計數(shù)器來使用的,定時/計數(shù)器的低8位負責(zé)計數(shù)。在工作方式2下,由于只有低8位參與計數(shù),故最大計數(shù)為=256,最長定時時間為256個機器周期。此時T0被分為兩個獨立的8位的定時/計數(shù)器來使用。在這種情況下,T1仍然既可以工作在定時功能,又可以工作在計數(shù)功能,但計滿溢出時不能置位溢出標志,不能申請中斷,其計滿溢出信號可以送給串行口,此時T1作為波特率發(fā)生器。例如:已知系統(tǒng)晶振頻率為=12MHz,在方式1下,T0的最大定時時間為而在方式2下,T0的最大定時時間為如果在方式1下要定時50ms,晶振頻率不變,則T0應(yīng)賦的初始值的計算方法為:由于晶振頻率為12MHz,則機器周期為1,若定時50ms,即50000,則計數(shù)初始值應(yīng)為6553650000=15536,將15536/256賦與定時/計數(shù)器的高8位THX,將15535%256賦與定時/計數(shù)器的低8位TLX。 TR0=ET0=EA=1。 //重新給定時器T0賦初值 n++。 //變量num為全局變量,用以統(tǒng)計定時中斷的次數(shù)是否達到20次 if(num==20) //若定時中斷次數(shù)達到20次,則1秒時間到 { num=0。 if(minu==60) //如果分鐘達到60,則分鐘歸零,向小時進位 { minu=0。 if(day28){if((month==2amp。day29))||(day31amp。(month==4||month==6||month==9||month==11))) { day=1。} //若月份達到最大,則月份歸一,向年份進位 } } } } } }} DS18B20概述DS18B20是美國DALLAS 半導(dǎo)體公司的數(shù)字化溫度傳感器,它也是世界上第一片支持“一線總線”接口的溫度傳感器。C。DS18B20 的性能是新一代產(chǎn)品中最好的,性價比也非常出色。單總線接口引腳。 只要求 1 根口線即可實現(xiàn)通信。 實際應(yīng)用中不需要外接任何元器件即可實現(xiàn)測溫。C之間。 內(nèi)部有溫度上、下限報警設(shè)置。64位光刻ROM的排列是:開始8位(28H)是產(chǎn)品類型標號,接著的48位是該DS18B20自身的唯一序列號,最后8 位是前面56位的循環(huán)冗余校驗碼(CRC)。第三和第四個字節(jié)分別是TH、TL的易失性拷貝,第五個字節(jié)是結(jié)構(gòu)寄存器的易失性拷貝,這三個字節(jié)的內(nèi)容在每一次上電復(fù)位時被刷新,第六、七、八個字節(jié)用于內(nèi)部計算。在 DS18B20出廠時該位被設(shè)置為 0,用戶不要去隨意改動,R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),即設(shè)置分辨率,如表315 所示(DS18B20 出廠時分辨率被設(shè)置為 12位)。分辨率的位數(shù)設(shè)置得多并不具有多少實際意義,而且設(shè)定的分辨率越高,所需要的溫度轉(zhuǎn)換時間也越長,可以說“得不償失”,故在本設(shè)計中,將其分辨率設(shè)置為9位即可。C,這5 位都為0,;如果溫度低于0 186。 DS18B20與單片機的接口電路DS18B20 與單片機的典型接口電路如圖39 所示,DS18B20 的正電源3腳接+5V,1腳接地,2腳接。 (4) CRC 的產(chǎn)生 在64位光刻 ROM的最高字節(jié)中存儲有循環(huán)冗余校驗碼(CRC)。如表316 所示。因此,在實際應(yīng)用中要在分辨率和轉(zhuǎn)換時間兩者之間權(quán)衡考慮。 表 314 DS18B20 字節(jié)定義寄存器內(nèi)容字節(jié)地址溫度低字節(jié)0溫度高字節(jié)1高溫限制2低溫限制3保留4保留5計數(shù)剩余值6每度計數(shù)值7每度計數(shù)值8配置寄存器為高速緩存存儲器中的第 5個字節(jié),其內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率,DS18B20 工作時按此寄存器中的分辨率將溫度轉(zhuǎn)換為相應(yīng)精度的數(shù)值。 (2) 高速緩存存儲器 高速緩存存儲器包含了 9個連續(xù)字節(jié),如表3-14所示。圖 38 DS18B20 內(nèi)部結(jié)構(gòu)圖下面具體介紹DS18B20每一部分的結(jié)構(gòu)和作用。 用戶可通過編程為數(shù)字溫度傳感器設(shè)定9~12 位的分辨率。 測量溫度范圍在-55186。 每個DS18B20器件上都有獨一無二的序列號。當(dāng)工作于寄生電源時,該引腳必須接地。DS18B20 的引腳及底視圖如圖37 所示。DS18B20可通過編程設(shè)定9~12位的分辨率,精度為177。DS18B20的測溫范圍為-55186。 if(month==13) {month=1。(month==1||month==3||month==5||month==7||month==8||month==10||month==12))||(day30amp。(!leap(year)||leap(year)amp。 if(hour==24) //如果小時達到24,則小時歸零,向日期進位 { hour=0。 //每隔1秒,秒加1 if(sec==60) //如果秒達到60,則秒歸零,向分鐘進位 { sec=0。 ReadTempFlag=1。 /*定義兩個靜態(tài)局部變量,用來統(tǒng)計定時中斷的次數(shù),每夠1秒秒鐘加1,每夠3秒測一次溫度*/ TH0=15536/256。 //使用模式1,16位定時器,工作在定時模式下 TH0=15536/256。根據(jù)上面的討論可以知道,定時器的定時時間的長短與定時器的位數(shù)、計數(shù)初始值、時鐘頻率密切相關(guān)。在方式3下,TH0也是作為不能自動重載初始值的8位定時器來使用,但它只能用于定時功能,不能用于計數(shù)功能,因此沒有選擇位控制;TH0的啟動也僅受原來T1的啟動位TR1來控制;當(dāng)TH0計滿溢出時,直接將TF1置位從而向CPU申請中斷;此時,TH0的中斷服務(wù)程序入口地址占用原來T1的中斷服務(wù)程序入口地址,中斷序號也同樣使用T1的中斷序號。需要強調(diào)的是:在工作方式0和工作方式1下,定時/計數(shù)器的計數(shù)初始值是不能自動重載的,需要我們在程序中用相應(yīng)的賦值語句重載;如果在程序中缺少了相應(yīng)的重載計數(shù)初始值語句,則定時/計數(shù)器溢出后將從0開始計數(shù)。每當(dāng)?shù)?位計滿溢出時,直接將計滿溢出標志位TFX(X=0,1)為1,向CPU發(fā)出中斷請求,若CPU響應(yīng)中斷,由系統(tǒng)硬件自動將TFX復(fù)位。高8位產(chǎn)生進位時,即計滿溢出,置計滿溢出標志位TFX(X=0,1)為1,向CPU申請中斷,若CPU響應(yīng)中斷,由系統(tǒng)硬件自動將TFX復(fù)位。(1) 工作方式0(M1M0=00)T0和T1的工作方式0是完全相同的,都是作為13位的定時/計數(shù)器來使用的,由THX(X=0,1)的8位和TLX的低5位構(gòu)成,TLX的高3位未用,TLX的低5位產(chǎn)生進位時,直接進到THX上。表313 定時/計數(shù)器的4種工作方式選擇表M1 M0工作方式功能說明0 0 方式0僅作為13位的定時/計數(shù)器使用0 1方式1作為16位的定時/計數(shù)器使用1 0方式2作為8位定時/計數(shù)器使用,初始值可自動重載1 1方式3僅適用于T0,分成兩個8位的計數(shù)器使用,T1停止工作定時器控制寄存器TCON是一個可位尋址的8位特殊功能寄存器。GATE與對定時/計數(shù)器的控制作用(以T0為例)如圖36所示。此時,若TRX和(X=0,1)均為高電平,則接通定時/計數(shù)器的輸入脈沖,啟動定時/計數(shù)器工作;若TRX和不全為高電平,則切斷定時/計數(shù)器的輸入脈沖來源,使定時/計數(shù)器停止工作。該位影響定時/計數(shù)器的啟動控制方式。單片機復(fù)位時,TMOD的各位均被清0。如果所需定時時間大于定時器所能定時的最長時間,可采用多次定時法以達到要求。由于機器周期是非常穩(wěn)定的,計數(shù)值也就對應(yīng)一個固定的時間,定時/計數(shù)器的功能也就轉(zhuǎn)化為定時模式。T0和T1都有定時和計數(shù)兩種功能,這兩種功能的主要區(qū)別在于計數(shù)脈沖來源不同。比如先放入2000滴,再滴8000滴就可以把瓶子滴滿。當(dāng)定時/計數(shù)器的計數(shù)脈沖來自單片機外部((T0)、(T1)輸入)時,由于外部輸入脈沖的周期不固定性,此時定時/計數(shù)器工作于計數(shù)狀態(tài);如果定時/計數(shù)器的計數(shù)脈沖來自單片機內(nèi)部(對機器周期進行加法計數(shù),一個機器周期等于12個時鐘周期,即機器周期脈沖是時鐘脈沖的十二分頻)時,由于晶振產(chǎn)生的時鐘脈沖的周期是非常穩(wěn)定的,所以當(dāng)計數(shù)值一定時,計數(shù)的時間也隨之而定,此時定時/計數(shù)器工作于定時狀態(tài)。需要注意的是:51單片機中的定時/計數(shù)器系統(tǒng)是單片機內(nèi)部一個獨立的硬件部分,它與CPU和晶振通過內(nèi)部某些控制線連接并相互作用,一旦CPU啟動計數(shù)器工作時,計數(shù)器便在輸入脈沖的作用下開始計數(shù),計數(shù)器的計數(shù)與CPU的工作是同時進行的,直到計數(shù)器計滿溢出將相應(yīng)的溢出標志位置1,向CPU發(fā)出中斷請求,CPU在允許中斷的情況下才暫停當(dāng)前程序的執(zhí)行,轉(zhuǎn)去執(zhí)行相應(yīng)的中斷服務(wù)程序。定時/計數(shù)器的實質(zhì)就是計數(shù)器,它是由若干個觸發(fā)器組成的一個計數(shù)系統(tǒng),其功能是能對輸入脈沖進行計數(shù)。因此,為了適應(yīng)控制領(lǐng)域的這一要求,單片機內(nèi)部都集成了定時/計數(shù)器。}中斷處理函數(shù)不會返回任何值,故其函數(shù)類型為void型,函數(shù)類型名void后緊跟中斷處理程序的函數(shù)名,函數(shù)名可以任意命名,只要合乎C51中對標識符的規(guī)定即可;中斷處理函數(shù)不帶任何參數(shù),所以中斷函數(shù)名后面的括號內(nèi)為空;interrupt即“中斷”的意思,是為區(qū)別于普通自定義函數(shù)而設(shè);中斷序號是編譯器識別不同中斷源的唯一符號,它對應(yīng)著中斷服務(wù)程序入口地址,因此在寫中斷函數(shù)時一定要把中斷序號寫準確,否則中斷程序?qū)⒌貌坏竭\行。當(dāng)然,我們也可以用位操作指令來實現(xiàn):EA=1,ET0=1。ET1:定時/計數(shù)器1的中斷允許位。當(dāng)EA=0時,則所有中斷均被禁止;當(dāng)EA=1時,全局中斷允許打開,在此條件下,由各個中斷源的中斷控制位確定相應(yīng)的中斷允許或禁止。IE也是一個可位尋址的8位特殊功能寄存器,即可以對其每一位單獨進行操作,當(dāng)然也可以進行整體字節(jié)操作。TF1:定時/計數(shù)器1(T1)的溢出中斷標志位。當(dāng)定時/計數(shù)器0計滿溢出時,由硬件自動將TF0置1,并向CPU發(fā)出中斷請求,當(dāng)CPU響應(yīng)該中斷進入中斷服務(wù)程序后,由硬件自動將該位清0,不需用專門的語句將該位清0。單片機復(fù)位時,TCON的全部位均被清0。(3) 中斷標志TCON即定時/計數(shù)器控制寄存器,這是一個可位尋址的8位特殊功能寄存器,即可以對其每一位單獨進行操作。51單片機內(nèi)部有2個16位的定時/計數(shù)器,分別是T0和T1。引起中斷的事件稱為中斷源。中斷功能的存在,在很大程度上提高了單片機的實時處理能力,是單片機學(xué)習(xí)者必須掌握的重要內(nèi)容。i16。i16。 // 清屏,清除DDRAM中原有內(nèi)容,AC復(fù)位至第一行首地址。 //由于現(xiàn)只對液晶模塊進行寫操作,故將LCD模塊的讀寫控制端置低電平write_cmd(0x38)。 //將使能端置高電平使其有效,以便向液晶模塊寫入數(shù)據(jù)delay(10)。 //將使能端復(fù)位至低電平狀態(tài),為下次操作做準備 }(3) 向1602液晶顯示模塊寫數(shù)據(jù)函數(shù):void write_dat(unsigned char dat) //形式參數(shù)dat為要寫入的數(shù)據(jù){ RS=1。 //將要寫入的指令送到指令總線上以便寫入液晶模塊delay(10)。 //*定義液晶模塊的數(shù)據(jù)/指令存儲器選擇位*/sbit RW=P2^5。30x06輸入方式設(shè)置指令,設(shè)置地址計數(shù)器AC為增量計數(shù)方式,即自動加1計數(shù),光標右移,顯示畫面不移動。10D7D6D5D4D3D2D1D0寫數(shù)據(jù)指令:將數(shù)據(jù)寫入地址計數(shù)器AC當(dāng)前所指向的DDRAM存儲單元中。
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1