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

正文內(nèi)容

數(shù)字式紅外測(cè)速系統(tǒng)設(shè)計(jì)_畢業(yè)設(shè)計(jì)-資料下載頁(yè)

2025-08-19 13:25本頁(yè)面

【導(dǎo)讀】本文提出了基于單片機(jī)的紅外測(cè)速系統(tǒng)的硬件電路和軟件實(shí)現(xiàn)。計(jì)數(shù)和速度顯示的功能。在文章的最后給出了系統(tǒng)流程圖和程序,并對(duì)程序進(jìn)行。了仿真,通過(guò)仿真證明本次設(shè)計(jì)方案切實(shí)可行。該系統(tǒng)具有成本低,體積小,運(yùn)。行穩(wěn)定,硬件電路簡(jiǎn)單,功能強(qiáng),可靠性高等特點(diǎn)。

  

【正文】 , T1 寄存器中的值便是被測(cè)頻率,通過(guò)計(jì)算便可得到 被測(cè)系統(tǒng)運(yùn)行速度。 其結(jié)構(gòu)如圖 41 所示 : 圖 41 主程序流程圖 數(shù)字式紅外測(cè)速系統(tǒng) 設(shè)計(jì) 29 數(shù)字紅外測(cè)速系統(tǒng)主程序編寫(xiě)如下 : void main(void) { P0=0X00。 P1=0X00。 P2=0X00。 TMOD=0x51。 //定時(shí)器 T1工作于計(jì)數(shù)模式 1,定時(shí)器 T0 工作于計(jì)時(shí)模式 1; TH0=(6553646083)/256。 //定時(shí)器 T0高 8位初值,每 50ms 一次中斷 TL0=(6553646083)%256。 //定時(shí)器 T0低 8位初值,每 50ms 一次中斷 EA=1。 //開(kāi)總中斷 ET0=1。 //定時(shí)器 T0中斷允許 TR0=1。 //啟動(dòng)定時(shí)器 T0 times=0。 //將 T0中斷次數(shù)初始化為 0 while(1) //無(wú) 限循環(huán) { TR1=1。 //定時(shí)器 T1啟動(dòng) TH1=0。 //定時(shí)器 T1高 8位賦初值 0 TL1=0。 //定時(shí)器 T1低 8位賦初值 0 flag1=0。 //時(shí)間還未滿 1秒鐘 while(flag1==0) //時(shí)間未滿等待 。 v=(TH1*256+TL1)*60。 //計(jì)算速度 display(v)。 //顯示速度 } } 延時(shí)函數(shù) 30 在程序中很多情況都要用到延遲,比如本系統(tǒng)的顯示延時(shí)。因此專門(mén)編寫(xiě)一個(gè)延遲函數(shù),它是一個(gè)循環(huán)嵌套,讓 CPU 空運(yùn)轉(zhuǎn)。其延時(shí)函數(shù)編寫(xiě)如下: void delay(uchar x) { uchar i。 while(x) { for(i=0。i125。i++) {。} } } 數(shù)碼顯示函數(shù) 因?yàn)橐獙?shí)時(shí)顯示當(dāng)前轉(zhuǎn)速,此系統(tǒng)采用靜態(tài)顯示。第一個(gè)數(shù)碼管顯示轉(zhuǎn)速個(gè)位, 第二個(gè)數(shù)碼管顯示轉(zhuǎn)速十位,第三個(gè)數(shù)碼管顯示轉(zhuǎn)速百位。其中 j=x/100。 k=(x%100)/10。l=x%10。三函數(shù)是將所測(cè)得的轉(zhuǎn)速處理,以方便數(shù)碼管顯示。為了使顯示更人性化,顯示設(shè)計(jì)進(jìn)行了滅零處理,該模塊函數(shù)如下: void display(unsigned int x) { unsigned char j,k,l。 //j,k,l 分別儲(chǔ)存溫度的百、十和個(gè)位 j=x/100。 //取百位 k=(x%100)/10。 //取十位 l=x%10。 //取個(gè)位 if(j==0) P1=0xff。 //將百位數(shù)字不顯示 else P1=shuzu[j]。 //將百位數(shù)字的字符常量送數(shù)碼管顯示 if(j==0amp。amp。k==0) 數(shù)字式紅外測(cè)速系統(tǒng) 設(shè)計(jì) 31 P1=0xff。 //將百位數(shù)字不顯示 else P1=shuzu[k]。 //將百位數(shù)字的字符常量送數(shù)碼管顯示 P2=shuzu[l]。 //將個(gè)位數(shù)字的字符常量送數(shù)碼管顯示 } 51 單片機(jī)的 定時(shí)器 定 時(shí)器寄存器配置 定時(shí)器,其作用主要包括產(chǎn)生各種時(shí)標(biāo)間隔、記錄外部事件的數(shù)量等,是微機(jī)中最常用、最基本的部件之一。 805l 單片機(jī)有 2個(gè) 16位的定時(shí)器/計(jì)數(shù)器:定時(shí)器 0(T0)和定時(shí)器 1(T1)。 T0 由 2個(gè)定時(shí)寄存器 TH0 和 TL0構(gòu)成, T1則由 TH1 和 TL1 構(gòu)成,它們都分別映射在特殊功能寄存器中,從而可以通過(guò)對(duì)特殊功能寄存器中這些寄存器的讀寫(xiě)來(lái)實(shí)現(xiàn)對(duì)這兩個(gè)定時(shí)器的操作。作定時(shí)器時(shí),每一個(gè)機(jī)器周期定時(shí)寄存器自動(dòng)加 l,所以定時(shí)器也可看作是計(jì)量機(jī)器周期的計(jì)數(shù)器。由于每個(gè)機(jī)器周期為 12個(gè)時(shí)鐘振蕩周期,所以定時(shí)的分辨 率是時(shí)鐘振蕩頻率的 1/ 12。作計(jì)數(shù)器時(shí),只要在單片機(jī)外部引腳 T0(或 T1)有從 1 到 0 電平的負(fù)跳變,計(jì)數(shù)器就自動(dòng)加 1。計(jì)數(shù)的最高頻率一般為振蕩頻率的 l/ 24。 控制寄存器 定時(shí)器/計(jì)數(shù)器 T0 和 T1 有 2 個(gè)控制寄存器 TMOD 和 TCON,它們分別用來(lái)設(shè)置各個(gè)定時(shí)器/計(jì)數(shù)器的工作方式,選擇定時(shí)或計(jì)數(shù)功能,控制啟動(dòng)運(yùn)行,以及作為運(yùn)行狀態(tài)的標(biāo)志等。其中, TCON 寄存器中另有 4 位用于中斷系統(tǒng)。 定時(shí)器方式控制寄存器 TMOD TMOD 在特殊功能寄存器中,字節(jié)地址為 89H,無(wú)位地址。 TMOD 的格式如圖42所 示。 32 圖 42定時(shí)器方式控制寄存器 TMOD 由圖可見(jiàn), TMOD 的高 4位用于 T1,低 4使用于 T0, 4 種符號(hào)的含義如下: GATE: 門(mén)控制位。 GATE 和軟件控制位 TR、外部引腳信號(hào) INT 的狀態(tài) ,共同控制定時(shí)器/計(jì)數(shù)器的打開(kāi)或關(guān)閉。 C/ T: 定時(shí)器/計(jì)數(shù)器選擇位。 C/T= 1,為計(jì)數(shù)器方式; C/ T= 0,為定時(shí)器方式。 M1M0: 工作方式選擇位,定時(shí)器/計(jì)數(shù)器的 4種工作方式由 M1M0 設(shè)定。 M1M0= 00:工作方式 0(13 位方式 )。 M1M0= 01:工作方式 1(16 位方式 )。 M1M0= 10:工作方式 2(8 位自 動(dòng)裝入時(shí)間常數(shù)方式 )。 MlM0=11:工作方式 3(2 個(gè) 8位方式 僅對(duì) T0)。 2.定時(shí)器控制寄存器 TCON TCON在特殊功能寄存器中,字節(jié)地址為 88H,位地址 (由低位到高位 )為 88H~8FH,由于有位地址,十分便于進(jìn)行位操作。 TCON 的格式如圖 43所示。其中, TFl, TRl, TF0 和 TR0 位用于定時(shí)器/計(jì)數(shù)器; IEl, ITl, IE0和 IT0 位用于中斷系統(tǒng)。 圖 43定時(shí)器控制寄存器 TCON 數(shù)字式紅外測(cè)速系統(tǒng) 設(shè)計(jì) 33 TFl、 TRl 用于定時(shí)器 T1; TF0、 TR0 用于定時(shí)器 T0。兩組符號(hào)有相同的含義。 TF: 定時(shí)器/計(jì)數(shù)器中斷請(qǐng)求標(biāo)志位。當(dāng)定時(shí)器計(jì)滿回零時(shí), TF= 1,并可申請(qǐng)中斷;當(dāng) CPU響應(yīng)中斷并進(jìn)入中斷服務(wù)程序后, TF自動(dòng)清零。如對(duì) TF查詢,定時(shí)器回零后,要用指令將 TF 清零。 TR: 定時(shí)器/計(jì)數(shù)器開(kāi)閉控制位。 IEl, ITl 用于外部中斷 1(1NTl); IE0, IT0 用于外部中斷 0(1NT0)。兩組符號(hào)的含義相同。 IT: 下跳沿/低電平引起外部中斷請(qǐng)求的選擇位。 IT=1,由下跳沿引起; IT= 0,由低電平引起。 IE:外部中斷的中斷申請(qǐng)標(biāo)志。 IE= 0,表明無(wú)外部中斷請(qǐng)求; IE= 1,表明有外部中斷請(qǐng)求。當(dāng)有外 部中斷請(qǐng)求時(shí), IE 自動(dòng)為 1,單片機(jī) CPU 響應(yīng)此中斷后, IE自動(dòng)清零 。 定時(shí)/計(jì)數(shù)初值的求取方法 8051 單片機(jī)的定時(shí)器/計(jì)數(shù)器采用增量式計(jì)數(shù)。也就是說(shuō),當(dāng)運(yùn)行于定時(shí)器方式時(shí),每隔一個(gè)機(jī)器周期定時(shí)器自動(dòng)加 1;當(dāng)運(yùn)行于計(jì)數(shù)器方式時(shí),每當(dāng)引腳出現(xiàn)下跳沿,計(jì)數(shù)器自動(dòng)加 1。無(wú)論是作定時(shí)用還是計(jì)數(shù)用,當(dāng) T0 或 Tl加滿回零后,定時(shí)器回零標(biāo)志置 1。而當(dāng)允許中斷時(shí), TF可以申請(qǐng)中斷進(jìn)而在中斷服務(wù)程序中作相應(yīng)的操作; TF也可用程序判斷定時(shí)到或計(jì)數(shù)滿的標(biāo)志位。 確定定時(shí)或計(jì)數(shù)初值 方法如下: 設(shè) T0(或 T1)運(yùn)行于計(jì)數(shù)器方式, 要求計(jì)數(shù) X 個(gè)外部脈沖后 T0(或 T1)回零,則計(jì)數(shù)初值 C的求取方法如下: 因?yàn)榛亓愕暮x是指加滿到計(jì)數(shù)器的模值,即 X+ C=模 所以 C=模 X=模 + (X)= (X)求補(bǔ) 由此可見(jiàn),計(jì)數(shù)初值的大小等于需要計(jì)數(shù)的個(gè)數(shù) X求補(bǔ)運(yùn)算后的結(jié)果。 34 又若 T0(或 T1)運(yùn)行于定時(shí)器方式,需定時(shí) T,則計(jì)數(shù)脈沖數(shù)為 Y。其中,MC為機(jī)器周期 ,( T=Y*MC) 同理可知,定時(shí)初值為 Y 求補(bǔ) 。 需要 指出的是,對(duì)于定時(shí)器 /計(jì)數(shù)器的 4種不同工作方式, T0或 T1的位數(shù)不同,模值也因而不同,求補(bǔ)運(yùn)算要按相應(yīng)位數(shù)的長(zhǎng)度來(lái)求。 定時(shí)器相關(guān)控制函數(shù)設(shè)計(jì) 此紅外測(cè)速系統(tǒng)通過(guò)定時(shí)器 T1( )對(duì)外部轉(zhuǎn)速頻率信號(hào)采集,設(shè)置定時(shí)器 T0 每 50ms 產(chǎn)生一次中斷,滿 20 次即為一秒,定時(shí)器 T0 啟動(dòng)時(shí)計(jì)數(shù)器 T1隨即啟動(dòng),當(dāng)外部信號(hào)出現(xiàn)一個(gè)由“ 1”到“ 0”的負(fù)跳變時(shí)計(jì)數(shù)器 T1 計(jì)數(shù)加一。當(dāng)定時(shí)到一秒時(shí)停止計(jì)數(shù),計(jì)算顯示被測(cè)系統(tǒng)運(yùn)行速度。 void main(void) { P0=0X00。 P1=0X00。 P2=0X00。 TMOD=0x51。 //定時(shí)器 T1 工作于計(jì)數(shù)模式 1,定時(shí)器 T0 工作于計(jì)時(shí)模式 1; TH0=(6553646083)/256。 //定時(shí)器 T0 高 8 位初值,每 50ms 一次中斷 TL0=(6553646083)%256。 //定時(shí)器 T0 低 8 位初值,每 50ms 一次中斷 EA=1。 //開(kāi)總中斷 ET0=1。 //定時(shí)器 T0 中斷允許 TR0=1。 //啟動(dòng)定時(shí)器 T0 times=0。 //將 T0 中斷次數(shù)初始化為 0 while(1) //無(wú)限循環(huán) { TR1=1。 //定時(shí)器 T1 啟動(dòng) TH1=0。 //定時(shí)器 T1 高 8 位賦初值 0 TL1=0。 //定時(shí)器 T1 低 8 位賦初值 0 flag1=0。 //時(shí)間還未滿 1 分鐘 while(flag1==0) //時(shí)間未滿等待 數(shù)字式紅外測(cè)速系統(tǒng) 設(shè)計(jì) 35 v=(TH1*256+TL1)*60/16。 //計(jì)算速度,每周產(chǎn)生 16 個(gè)脈沖 display(v)。 //顯示速度 } } 36 第五章 軟件 調(diào)試 與系統(tǒng)仿真 經(jīng)過(guò)兩個(gè)月的努力,數(shù)字式紅外測(cè)速系統(tǒng)的設(shè)計(jì)終于完成。 通過(guò) keil 軟件對(duì)程序的編譯調(diào)試,結(jié)果如圖 51 所示。從調(diào)試結(jié)果中可以看出本系統(tǒng)軟件部分調(diào)試通過(guò),整個(gè)軟件部分共有零個(gè)警告,零個(gè)錯(cuò)誤。 圖 51 軟件調(diào)試效果圖 通過(guò)軟件調(diào)試后,接下來(lái)的工作便是系統(tǒng)仿真。由于系統(tǒng)采用的是 38KHz專用紅外接收頭,所以紅外發(fā)射部分必須調(diào)制在 38KHz 左右。發(fā)射采用 NE555芯片進(jìn)行調(diào)制后連續(xù)發(fā)射。通過(guò)仿真證明該方案切實(shí)可行。其仿真效果如圖 52所示。從示波器可以看出,示波器中每柵格代表 5us,其一個(gè)發(fā)送周期占 5 個(gè)柵格多點(diǎn),發(fā)送周期在 26us 左右,即發(fā)送頻率為 38KHz。 符合接收頭頻率帶寬要求。 數(shù)字式紅外測(cè)速系統(tǒng) 設(shè)計(jì) 37 圖 52 發(fā)射部分仿真效果圖 經(jīng)過(guò)以上的工作,整機(jī)的調(diào)試便可準(zhǔn)備就緒。由于整機(jī)仿真頻率信號(hào)輸入部分難以用真實(shí)的電機(jī)進(jìn)行測(cè)量。所以此系統(tǒng)采用一片 51 單片機(jī)發(fā)射一定頻率的方波信號(hào)模擬紅外接收頭采集到的頻率信號(hào),將該信號(hào)送至該系統(tǒng)單片機(jī)定時(shí)器T1 進(jìn)行計(jì)數(shù)來(lái)檢測(cè)系統(tǒng)工作狀態(tài)。其效 果如圖 53 所示。通過(guò)整機(jī)的仿真證明該方案切實(shí)可行。達(dá)到設(shè)計(jì)題目的要求。 圖 53 系統(tǒng)總體仿真效果圖 38 結(jié)束語(yǔ) 隨著現(xiàn)代電力電子技術(shù)、微處理器和控制技術(shù)的發(fā)展,對(duì)紅外測(cè)速系統(tǒng)的全數(shù)字化和性能的提高提供了堅(jiān)實(shí)的基礎(chǔ)。本文以 AT89S52 為控制核心,在紅外測(cè)速技術(shù)、軟硬件設(shè)計(jì)等方面對(duì)全數(shù)字紅外測(cè)速系統(tǒng)進(jìn)行了深入的研究,取得了一些有意義的成果。 本課題的研究中主要完成以下工作: (1)從紅外測(cè)速系統(tǒng)的特性出發(fā),分析了測(cè)速系統(tǒng)的數(shù)學(xué)模型。制定了基于AT89S52 的全數(shù)字測(cè)速方案,完成了以 AT89S52 為核心的測(cè) 速電路設(shè)計(jì)。 (2)在軟件實(shí)現(xiàn)方面,對(duì)主程序、定時(shí)器計(jì)數(shù)器、數(shù)據(jù)顯示和中斷處理等環(huán)節(jié)進(jìn)行了分析,給出了相應(yīng)的流程圖。 (3) 利用單片機(jī)實(shí)現(xiàn)了基于紅外技術(shù)的數(shù)字測(cè)速系統(tǒng)的設(shè)計(jì)、制作、調(diào)試。通過(guò)調(diào)試和仿真,該系統(tǒng)能長(zhǎng)時(shí)間可靠的工作,基本上達(dá)到了預(yù)期的實(shí)驗(yàn)效果,為后續(xù)研究工作提供了實(shí)驗(yàn)基礎(chǔ)。 通過(guò)本次設(shè)計(jì),加強(qiáng)了我對(duì)單片機(jī)應(yīng)用知識(shí)的掌握,同時(shí)了解了目前工業(yè)生產(chǎn)中數(shù)字化系統(tǒng)的重要性,使我對(duì)使用
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1