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

正文內(nèi)容

紅外線測(cè)溫儀—畢業(yè)設(shè)計(jì)(編輯修改稿)

2025-01-06 16:29 本頁面
 

【文章內(nèi)容簡介】 紅外接收電路為紅外接收專門集成電路,當(dāng)收到 38KHz調(diào)制紅外光線時(shí),輸出端為‘ 0’, 平時(shí)為‘ 1’ 。正可與單片機(jī)串口發(fā)送接收端 RXD配接。 ( 7)實(shí)際電路 最終通過 Protel 99 SE軟件將以上各個(gè)部分電路及元器件組合在一起,得到一個(gè)完整的電路圖,如圖 13和圖 14。然后對(duì)各個(gè)元器件進(jìn)行合理的封裝,對(duì)封裝后的 PCB進(jìn)行排版以得到最好的布局,為接下來焊接元器件有一定的幫助,而且合理的布局也能使完成后的實(shí)物更美觀。 由于本設(shè)計(jì)兩部分電路都有紅外發(fā)射和接收部分,而區(qū)別在于遠(yuǎn)端有一個(gè)測(cè)溫電路而手持端沒有,所以在設(shè)計(jì)電路圖時(shí)將兩部分設(shè)計(jì)成一樣的結(jié)構(gòu),即在手持端也有設(shè)計(jì)了測(cè)溫芯片的接口 ,只要對(duì)手持端的程序稍加修改也能實(shí)現(xiàn)測(cè)溫的功能。這樣在后期制作時(shí)便于對(duì)電路的安裝與調(diào)試,而且也有利于電路的功能擴(kuò)展。 下面給出了兩部分的電路圖。 圖 13 測(cè)溫端電路圖 圖 14 手持端電路圖 3 軟件部分 軟件用 C語言進(jìn)行編程,采用模塊化設(shè)計(jì)方法。 開始 開始 圖 15 手持端與測(cè)溫端的框圖 軟件模塊的劃分 該系統(tǒng)的控制軟件主要可以分為測(cè)溫和紅外兩個(gè)大的部分,其中具體有單片機(jī)初 始化程序、定時(shí)中斷服務(wù)程序 、 DS18B20接口程序 、 紅外發(fā)射編碼和紅外接收解碼程序等模塊。 定時(shí) /計(jì)數(shù)器應(yīng)用 (1)定時(shí) /計(jì)數(shù)器功能簡介 AT89C51單片機(jī)內(nèi)部設(shè)有兩個(gè) 16位可編程的定時(shí) /計(jì)數(shù)器,簡稱定時(shí)器 0和定時(shí)器 1,分別用 T0和T1表示。其功能同一般定時(shí)計(jì)數(shù)器,主要作用是:第一,作為一段特定時(shí)間長短的定時(shí);第二,可以計(jì)算由 T1或 T0引腳輸入的脈沖數(shù),前者在應(yīng)用上可以產(chǎn)生正確的時(shí)間延遲及定時(shí)去執(zhí)行中斷服務(wù)程序,而后者則是計(jì)數(shù)器或者計(jì)頻器的設(shè)計(jì)。在本設(shè)計(jì)中這兩種作用都用到了。 這兩個(gè)定時(shí)器本 身有四種工作模式可供使用,如表 3所示。 表 3 四種工作模式 M1 MO 工作方式 功能說明 0 0 模式 0 13位計(jì)數(shù)器 0 1 模式 1 16位計(jì)數(shù)器 1 0 模式 2 8位自動(dòng)重裝計(jì)數(shù)器 1 1 模式 3 定時(shí)器 0:分成兩個(gè) 8位計(jì)數(shù)器 定時(shí)器 1:停止計(jì)數(shù) (2)定時(shí)器相關(guān)的控制寄存器 TMOD為模式控制寄存器,主要用來設(shè)置定時(shí) /計(jì)數(shù)器的操作模式; TCON為控制寄存器,主要用來控制定時(shí)器的啟動(dòng)與停止。兩個(gè) 16位的定時(shí) /計(jì)數(shù)器 T0和 T1均可以分成 2個(gè)獨(dú)立的 8位計(jì)數(shù) 器即 TH0、TL0、 TH TL1,它們用于存定時(shí)或計(jì)數(shù)的初值。 接收數(shù)據(jù) 發(fā)送信號(hào) 顯示 接收信號(hào) 顯示 發(fā)送數(shù)據(jù) 測(cè)溫 ① 模式控制寄存器 TMOD TMOD是一個(gè)專用寄存器,用于控制 T1和 T0的操作模式及工作方式,其各位定義如下: D7 D6 D5 D4 D3 D2 D1 D0 GATE C/T M1 M0 GATE C/T M1 M0 定時(shí)器 1 定時(shí)器 0 GATE:門控位。當(dāng) GATE= 0,定時(shí)器只由軟件控制位 TR0或 TR1來控制啟停。 iTR 位為 1,定時(shí)器啟動(dòng)開始工作;為 0時(shí),定時(shí)器停止工作。當(dāng) GATE= 1時(shí),定時(shí)器的啟動(dòng)要由外部中斷引腳和 iTR 位共同控制。只有當(dāng)外部中斷引腳 0INT 或 1INT 為高時(shí), iTR 置 1才能啟動(dòng)定時(shí)器工作。 C/T :功能選擇位。當(dāng) C/T = O時(shí)設(shè)置為定時(shí)器工作方式;計(jì)數(shù)脈沖由內(nèi)部提供,計(jì)數(shù)周期等于機(jī)器周期。當(dāng) C/T = 1時(shí)設(shè)置為計(jì)數(shù)器工作方式,計(jì)數(shù)脈沖為外部引腳 T0或 T1的引入的外部脈沖信號(hào)。 M M0:操作模式控制位, 2位可形成 4種編碼,對(duì)應(yīng)于 4種操作模式。 TMOD 模式控制寄存器不能進(jìn)行位尋址,只能用字節(jié)傳送指令設(shè)置定時(shí)器的工作方式及操作模式,低 4位用于定義定時(shí)器 0,高 4位用于定義定時(shí)器 1。系統(tǒng)復(fù)位時(shí) TMOD所有 位均為 0。 模式控制字的設(shè)置舉例: 若設(shè)置定時(shí)器 1 為定時(shí)器工作方式,由軟件啟動(dòng),選擇操作模式 2;定時(shí)器 0為計(jì)數(shù)方式,由軟件啟動(dòng),選擇操作模式 1。則 TMOD各位設(shè)置為: 0 0 l 0 0 1 O l 25H 用 MOV TMOD,# 25H指令寫入 TMOD中。 ② 控制寄存器 TCON TCON的作用是用于控制定時(shí)器的啟動(dòng)、停止及定時(shí)器的溢出標(biāo)志和外部中斷觸發(fā)方式等。 各位定義如下: 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TF1和 TF0;分別為定時(shí)器 1和定時(shí)器 0溢出標(biāo)志。當(dāng)定時(shí)器計(jì)滿產(chǎn)生溢出時(shí),由硬件自動(dòng)置“ 1”,并可申請(qǐng)中斷。進(jìn)人中斷服務(wù)程序后,由硬件自動(dòng)清 0。這兩位也可作為程序查詢的標(biāo)志位,在查詢方式下應(yīng)由軟件來清 0。 TR1和 TR0:為定時(shí)器 1和定時(shí)器 0的啟動(dòng)控制位。當(dāng)由軟件使 iTR 清 0而停止定時(shí)器的工作。定時(shí)器啟動(dòng)時(shí)該位應(yīng)置“ 1”。 定時(shí)器的啟動(dòng)與門控位和外部中斷引腳有關(guān)。當(dāng) GATE設(shè)置為 0,定時(shí)器的啟動(dòng)由 iTR = 1控制;而當(dāng) GATE設(shè)置為 1時(shí),定時(shí)器啟動(dòng)除了 iTR = 1外,還要求外部中斷引腳 INTi = 1時(shí)定時(shí)器方可啟動(dòng)工作。 IE1 和 IE0:為外部中斷 1 1INT 和外部 0 0INT 的中斷請(qǐng)求標(biāo)志位。當(dāng)外部中斷源有請(qǐng)求時(shí)其對(duì)應(yīng)的中斷標(biāo)志位置“ 1”。其復(fù)位由觸發(fā)方式來設(shè)置。 IT1 和 IT0:為外部中斷 1 和外部中斷 0 的觸發(fā)方式選擇位 。 iIT 設(shè)置為“ 0”時(shí)為電平觸發(fā)方式;設(shè)置為“ 1”時(shí)為邊沿觸發(fā)方式。 TCON中低 4位是與外部中斷有關(guān)的位,高 4位為定時(shí)器控制位。它是一個(gè)可以進(jìn)行位尋址的寄存器。當(dāng)系統(tǒng)復(fù)位時(shí)所有位均為 0。若要啟動(dòng)定時(shí)器可以使用位操作指令 SETB iTR 來啟動(dòng)。 (3)定時(shí)計(jì)數(shù)器的操作模式 ① 模式 0 模式 0是一個(gè) 13 位的定時(shí) /計(jì)數(shù)器, 16位的寄存器只用了高 8位 ( iTH )和低 5位 ( iTL 的 D4-D0位 ), iTL 的高 3位未用。 計(jì)時(shí)工作脈沖 定時(shí)器的工作時(shí)鐘可以由內(nèi)部或是外部來提供,由 C/T 位來決定,當(dāng) C/T = 1時(shí),由外部引腳T0來供給,作為計(jì)數(shù)器使用,當(dāng) C/T = 0時(shí),則由內(nèi)部時(shí)鐘來提供,作為一般的定時(shí)器使用,而定時(shí)器的時(shí)鐘為系 統(tǒng)工作時(shí)鐘除以 12,在 AT89C51中,石英振蕩晶體使用 ,所以定時(shí)器每一個(gè)計(jì)數(shù)時(shí)間脈沖寬為: 12/= ( ) 若石英振蕩晶體改為 12MHz,定時(shí)器每一個(gè)計(jì)數(shù)時(shí)間脈沖寬為: 12/12MHz= ( ) 激活定時(shí)器 定時(shí)器動(dòng)作的必要條件有: GATE=0時(shí), TR0= 1,定時(shí)器 0就會(huì)工作; GATE= 1時(shí),除了 TR0= 1, INT0還須是高電平。 若使用定時(shí)器內(nèi)部時(shí)鐘工作 C/T = 0, GATE=0,在模式 0操作下,用命令: MOV TMOD,00H 便可設(shè)置定時(shí)器 0 于模式 0做計(jì)時(shí)工作,將 TR0設(shè)為 1,定時(shí)器便會(huì)開始工作了。 定時(shí)時(shí)間長短設(shè)置 在模式 0 工作下,計(jì)數(shù)器最多可計(jì)數(shù)個(gè)數(shù)為 M=132 = 8192,由 0 到 8192 便產(chǎn)生溢出而引發(fā)中斷信號(hào),引 起定時(shí)器 0 的中斷 (TF0= 1)。可能只要計(jì)數(shù) 100 個(gè)脈沖便產(chǎn)生中斷,只要將初值8092(8192100)加載計(jì)數(shù)器即可,一旦激活計(jì)數(shù)器后,計(jì)數(shù)變?yōu)?809 809??一直到 8192 則產(chǎn)生中斷,這樣就計(jì)數(shù) 100次了,而時(shí)間長度為: *100= ( ) 也就是經(jīng)過 。 在定時(shí)器 0中,加載定時(shí)器的初值,匯編語言指令為: TL0=(8192C). ( ) TH0=(8192C)/32 ( ) 其中 C為所要計(jì)數(shù)的值,“ MOD”為取余數(shù)的運(yùn)算,除以 32后取余數(shù)部分?!?/”為除法運(yùn)算,在做完除法后取整數(shù)部分。 計(jì)時(shí)溢出 當(dāng)計(jì)時(shí)終了產(chǎn)生溢出,定時(shí)器應(yīng)用兩種方法可知道系統(tǒng)產(chǎn)生定時(shí)器中斷了: 檢查其中斷控制寄存器 TCON中的 TF0及 TF1,若為 1則表示產(chǎn)生計(jì)時(shí)溢出了。 執(zhí)行對(duì)應(yīng)的中斷服務(wù)程序。 ② 模式 1 在模式 1 工作下, 計(jì)數(shù)器最多可計(jì)數(shù)個(gè)數(shù)為 M= 162 = 65536,計(jì)時(shí)時(shí)間最長為 *65536= 72ms ( ) 而計(jì)數(shù)初值的加載方法為: TL0= (65536C). ( ) TH0= (65536C)/256 ( ) 其中 C為所要計(jì)數(shù)的值,計(jì)數(shù) 時(shí)間長度為: *C ( ) ③ 模式 2 模式 2有自動(dòng)重新加載初值的功能,使定時(shí)器做更精確的計(jì)時(shí)。在模式 2 工作下,計(jì)數(shù)器最多可計(jì)數(shù)個(gè)數(shù)為 M= 82 = 256,計(jì)時(shí)時(shí)間最長為: *256= ( ) 而計(jì)數(shù)初值的加載方法為: TH0= 256C ( ) 其中 C為所要計(jì)數(shù)的值,計(jì)數(shù) 時(shí)間長度為: *C ( ) ④ 模式 3 在模式 3中,定時(shí)器 1停止計(jì)時(shí)工作,而定時(shí)器 0分為 兩個(gè)獨(dú)立的 8位定時(shí)器。其計(jì)數(shù)初值加載方法同模式 2。 中斷控制應(yīng)用 (1)中斷源 AT89C51 單片機(jī)的中斷源: 2 個(gè)外部輸人中斷源 0INT ()和 1INT (); 3 個(gè)內(nèi)部中斷源T0和 T1的溢出中斷源及串行口發(fā)送 /接收中斷源。在本系統(tǒng)中只使用了 3個(gè)內(nèi)部中斷源: TF0和 TF1:定時(shí)器 0和定時(shí)器 1的溢出中斷。當(dāng) T0或 T1計(jì)數(shù)器加 1,計(jì)數(shù)產(chǎn)生溢出時(shí),則將TCON中的 TF0或 TF1置 1,向 CPU申請(qǐng)中斷。 RI和 TF1:串行口的接收和發(fā)送中斷。當(dāng)串行口接收或發(fā)送完一幀數(shù)據(jù)時(shí),將 TCON中的 RI或TI位置 1,向 CPU申請(qǐng)中斷。 當(dāng)某中斷源的中斷請(qǐng)求被 CPU響應(yīng)之后, CPU將自動(dòng)把此中斷源的中斷入口地址 (又稱中斷矢量地址 )裝入 PC,中斷服務(wù)程序即從此地址開始執(zhí)行。因此一般在此地址單元中存放一條絕對(duì)跳轉(zhuǎn)指令,可以跳至用戶安排的中斷服務(wù)程序的入口處。 AT89C51 單片機(jī)各中斷源的矢量地址是固定的。見表 4。 表 4 單片機(jī)中斷源的矢量地址表 中斷源 矢量地址 自然優(yōu)先級(jí) 0INT 外部中斷 0 中斷 0003H 最高 最低 T0定時(shí)器 0 中斷 000BH 1INT 外部中斷 1 中斷 0013H T1定時(shí)器 1 中斷 002BH R1 或 T1串行口中斷 0023H (2)中斷請(qǐng)求標(biāo)志 SCON的中斷標(biāo)志 串行口的中斷請(qǐng)求標(biāo)志由串行口控制寄存器 SCON的 D0和 D1位來設(shè)置。 RI()為接收中斷標(biāo)志位; TI()為發(fā)送中斷標(biāo)志位。其中斷申請(qǐng)信號(hào)的產(chǎn)生過程為: 發(fā)送過程:當(dāng) CPU將一個(gè)數(shù)據(jù)寫入發(fā)送緩沖器 SBUF時(shí),就啟動(dòng)發(fā)送。 每發(fā)送完一幀數(shù)據(jù)。由硬件自動(dòng)將 TI位置 1。但 CPU響應(yīng)中斷時(shí),并不能清除 TI位,所以必須由軟件清除。 接收過程:在串行口允許接收時(shí).即可串行接收數(shù)據(jù),當(dāng)一幀數(shù)據(jù)接收完畢,由硬件自動(dòng)將 RI位置 1。同樣 CPU響應(yīng)中斷時(shí)不能清除 RI位,必須由軟件清除。 AT89C51單片機(jī)系統(tǒng)復(fù)位后, TCON和 SCON中各位均清 0,應(yīng)用時(shí)要注意各位的初始狀態(tài)。 (3)中斷允許控制 ① 中斷的開放和屏蔽 AT89C51單片機(jī)中的專用寄存器 IE稱為中斷允許寄存器,其作用是用來對(duì)各中斷源進(jìn)行開放或屏 蔽的控制。其各位的定義如下: AFH AEH ADH ACH ABH AAH A9H A8H EA — ET2 ES ET1 EX1 ET0 EX0 — : EA0。 CPU中斷允許位。 EA= 1, CPU開放中斷; EA
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1