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

正文內(nèi)容

數(shù)字式溫濕度傳感器的應(yīng)用設(shè)計(jì)畢業(yè)設(shè)計(jì)-閱讀頁

2025-07-02 16:58本頁面
  

【正文】 關(guān)閉狀態(tài)。如此循環(huán)下去,就可以使各位顯示出將要顯示的字符,雖然這些字符是在不同時(shí)刻出現(xiàn)的,而且同一時(shí)刻,只有一位顯示,其它各位熄滅,但由于人眼有視覺暫留現(xiàn)象,只要每位顯示間隔時(shí)間足夠短,則可造成多位同時(shí)亮的假象,達(dá)到顯示的目的。LED不同位顯示的時(shí)間間隔可以通過定時(shí)中斷完成。上述保持1ms的時(shí)間應(yīng)根據(jù)實(shí)際情況而定。但也不能太大,因?yàn)楫吘挂芟抻谂R界閃爍頻率,而且此時(shí)間越長,占用CPU時(shí)間也越多。 單片機(jī)控制接口部分 報(bào)警燈和蜂鳴器單片機(jī)不但實(shí)現(xiàn)對溫濕度傳感器SHT71數(shù)據(jù)的采集和處理,并且LED顯示,而且承擔(dān)著對環(huán)境溫濕度進(jìn)行實(shí)時(shí)監(jiān)測和控制的任務(wù)。所以設(shè)置一個(gè)合適的溫濕度范圍,并且利用單片機(jī)進(jìn)行編成控制,如果溫度或濕度超出這個(gè)范圍,那么單片機(jī)會(huì)控制蜂鳴器來報(bào)警。在與設(shè)定值比較過程中,如果傳送值與設(shè)定值相比起來在其范圍之內(nèi)則視為正常,如果傳送值超出其設(shè)定范圍之外,則視為不正常。單片機(jī)給通信口產(chǎn)生高電平使發(fā)光二極管接通,從而使發(fā)光二極管閃爍而達(dá)到顯示的目的。圖411 發(fā)光控制接口圖412 蜂鳴器控制接口 制冷片制冷片也叫熱電半導(dǎo)體制冷組件,帕爾貼等。a)珀?duì)柼?yīng)應(yīng)用   半導(dǎo)體致冷器是由半導(dǎo)體所組成的一種冷卻裝置,于1960左右才出現(xiàn),然而其理論基礎(chǔ)Peltier effect可追溯到19世紀(jì)。   通上電源之後,冷端的熱量被移到熱端,導(dǎo)致冷端溫度降低,熱端溫度升高,這就是著名的Peltier effect。到了1834年,一位法國表匠,同時(shí)也是兼職研究這現(xiàn)象的物理學(xué)家Jean Peltier,才發(fā)現(xiàn)背後真正的原因,這個(gè)現(xiàn)象直到近代隨著半導(dǎo)體的發(fā)展才有了實(shí)際的應(yīng)用,也就是[致冷器]的發(fā)明。N型材料有多余的電子,有負(fù)溫差電勢。相反,當(dāng)電子從N型流至P型材料時(shí),結(jié)點(diǎn)的溫度就會(huì)升高。   這樣,半導(dǎo)體元件可以用各種不同的連接方法來滿足使用者的要求。   在上面的接頭處,電流方向是從N至P,溫度下降并且吸熱,這就是冷端;而在下面的一個(gè)接頭處,電流方向是從P至N,溫度上升并且放熱,因此是熱端。 半導(dǎo)體制冷片作為特種冷源,在技術(shù)應(yīng)用上具有以下的優(yōu)點(diǎn)和特點(diǎn):不需要任何制冷劑,可連續(xù)工作,沒有污染源沒有旋轉(zhuǎn)部件,不會(huì)產(chǎn)生回轉(zhuǎn)效應(yīng),沒有滑動(dòng)部件是一種固體片件,工作時(shí)沒有震動(dòng)、噪音、壽命長,安裝容易。因此使用一個(gè)片件就可以代替分立的加熱系統(tǒng)和制冷系統(tǒng)。半導(dǎo)體制冷片熱慣性非常小,制冷制熱時(shí)間很快,在熱端散熱良好冷端空載的情況下,通電不到一分鐘,制冷片就能達(dá)到最大溫差。半導(dǎo)體制冷片的單個(gè)制冷元件對的功率很小,但組合成電堆,用同類型的電堆串、并聯(lián)的方法組合成制冷系統(tǒng)的話,功率就可以做的很大,因此制冷功率可以做到幾毫瓦到上萬瓦的范圍。通過以上分析,半導(dǎo)體溫差電片件應(yīng)用范圍有:制冷、加熱、發(fā)電,制冷和加熱應(yīng)用比較普遍,有以下幾個(gè)方面:軍事方面:導(dǎo)彈、雷達(dá)、潛艇等方面的紅外線探測、導(dǎo)行系統(tǒng)。實(shí)驗(yàn)室裝置方面:冷阱、冷箱、冷槽、電子低溫測試裝置、各種恒溫、高低溫實(shí)驗(yàn)儀片。日常生活方面:空調(diào)、冷熱兩用箱、飲水機(jī)、電子信箱等。本設(shè)計(jì)所選用的冷卻片參數(shù)如下:型號 電堆數(shù)最大工作電壓(V) 最大電流(A)最大溫差ΔTmax(℃) 最大產(chǎn)冷功率Qm外形尺寸(mm) (LWH) 電阻范圍R(Ω) TEC112703T1251273674040表41 冷卻片參數(shù)表由于制冷片所需要的工作電流達(dá)3A,單片機(jī)的供電電源不足以滿足供電要求,所以在這里使用獨(dú)立的電源VCC2。圖413 繼電器接線圖如圖49所示,制冷片的兩個(gè)接線端口分別接到兩個(gè)繼電器上的JD1和JD2上。第五章 軟件設(shè)計(jì)第五章 軟件設(shè)計(jì) SHT71傳感器的控制 SHT71傳感器的基本工作原理SHT71的基本工作原理是單片機(jī)向SHT71發(fā)出命令,SHT71利用兩只傳感器分別產(chǎn)生相對濕度、溫度的信號,然后經(jīng)過放大,分別送至其內(nèi)部的A/D轉(zhuǎn)換器進(jìn)行模/數(shù)轉(zhuǎn)換、校準(zhǔn)和糾錯(cuò),最后通過二線串行接口將相對濕度及溫度的數(shù)據(jù)送至單片機(jī)處理。 SHT71傳感器數(shù)據(jù)測量過程a)發(fā)送一個(gè)命令:在發(fā)送命令之前,應(yīng)先發(fā)送一個(gè)“傳輸開始”序列,該序列組成如圖所示。其5條命令即是上面已經(jīng)提到過的:測量濕度(00101)、測量溫度(00011)、寫狀態(tài)寄存器(00110)、讀狀態(tài)寄存器(00111)和軟件復(fù)位(11110)命令。在第9個(gè)SCK時(shí)鐘結(jié)束后DATA恢復(fù)高電平。圖51 傳輸開始序列圖52 命令時(shí)序啟動(dòng)傳輸指令的程序如下,時(shí)序圖如圖51// 啟動(dòng)傳輸指令// _____ ________// DATA: |_______|// ___ ___// SCK : ___| |___| |______{ DATA=1。 //開始狀態(tài) _nop_()。 _nop_()。 _nop_()。 _nop_()。_nop_()。 _nop_()。 _nop_()。 }b)測量時(shí)序:在AT89C52發(fā)出一個(gè)測量命令(00000101為濕度測量命令,00000011為溫度測量命令)后,微處理器等待SHT71測量,大約需要210ms,這個(gè)時(shí)間由SHT71內(nèi)部的振蕩器確定。如果8位CRC校驗(yàn)和不用,控制器可愛測量數(shù)據(jù)的LSB位后將ACK變高。在CRC數(shù)據(jù)的回答位傳輸結(jié)束后,SHT71自動(dòng)返回空閑狀態(tài),等待下次開始。復(fù)位時(shí)序如圖53所示圖53 復(fù)位時(shí)序程序如下://軟復(fù)位傳感器 { unsigned char error=0。 //復(fù)位通訊 error+=Write_Byte(RESET)。 //當(dāng)傳感器沒有應(yīng)答的時(shí)候error=1}d)狀態(tài)寄存器與讀寫時(shí)序:SHT71的狀態(tài)寄存器是一個(gè)8位的寄存器,其中5位是有用的,三位未用。當(dāng)D6=0時(shí)。D2:加熱控制位。D1:再裝校準(zhǔn)存儲(chǔ)器控制位。當(dāng)D1=1時(shí),表示再裝。當(dāng)D0=0時(shí),表示12位濕度/14位溫度測量。為了將SHT71輸出的數(shù)字量轉(zhuǎn)換成實(shí)際物理量需進(jìn)行相應(yīng)的數(shù)據(jù)處理。SORH+c3106 8位SORH:c1=4 ;c2= ;c3= RHtrue=(T℃25)SORH)+RHlinear (52) 當(dāng)SORH為12位時(shí)t1=;t2=,當(dāng)SORH為8位時(shí),t2= c)溫度變換 由設(shè)計(jì)決定的SHT71溫度傳感器的線性非常好,故可用下列公式將溫度數(shù)字輸出轉(zhuǎn)換成實(shí)際溫度值: 溫度=d1+d2以上幾點(diǎn)的程序如下:// 計(jì)算溫度[攝氏度]和濕度[%RH] // 輸入: 濕度 [數(shù)字輸出] (12 位) // 溫度 [數(shù)字輸出] (14 位)// 輸出: 濕度 [%RH]// 溫度 [攝氏度]{ const float C1=。 // for 12 Bit const float C3=。 // for 14 Bit 5V const float T2=+。 // rh: 濕度 [數(shù)字輸出] 12 Bit float t=*p_temperature。 // rh_lin: 線性化的濕度 float rh_true。 // t_C : 溫度 [攝氏度] t_C=t* 40。 //把數(shù)字輸出轉(zhuǎn)換成相對濕度[%RH] rh_true=(t_C25)*(T1+T2*rh)+rh_lin。 //砍掉超過物理可能范圍的值 if(rh_true)rh_true=。 //返回的溫度(攝氏度) *p_humidity=rh_true。 logEx=+*t/(+t)+(log10(h)2)。 return dew_point。定義鍵盤功能程序如下:sbit StartSet=P0^0。 //設(shè)置位左移一位sbit Plus=P0^2。 //設(shè)置溫度值減一sbit Right=P0^4。 //退出設(shè)置模式鍵盤操作流程圖如下:圖54 鍵盤操作流程圖圖中的其他操作為執(zhí)行按鍵的功能,下面我就舉一個(gè)例子來說明一下。 //左移按鍵按下if(Left==0){n。=0x03。i4。 //把“設(shè)定溫度”值放到顯示緩沖區(qū)while(StartSet==0)Display()。 LED數(shù)碼管顯示數(shù)碼管顯示的程序如下:define LED P2define LED_Section P1unsigned char DispBuffer[8]={0,0,0,0,0,0,0,0}。 }void Display(){unsigned char i=0。 //數(shù)碼管碼表 unsigned char addr[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff}。i8。Delay(20)。 //顯示數(shù)字 }else{ LED_Section=tab[DispBuffer[i]]0x08。//打開數(shù)碼管對應(yīng)的位 Delay(400)。程序中有一個(gè)公共顯示緩沖區(qū),數(shù)據(jù)由緩沖區(qū)發(fā)送至碼表。 控制部分控制接口部分的程序:sbit HeatA=P3^5。sbit Beeper=P3^4。以上為設(shè)置控制端口函數(shù)void HeatUp(){ //制冷片加熱 HeatA=1。}以上為制冷片加熱函數(shù)void CoolDown(){ //制冷片制冷 HeatA=0。}以上為制冷片制冷函數(shù)void Init_Timer0(){ TMOD=0x01。 //定時(shí)器隔50毫秒進(jìn)一次中斷 TL0=(6553650000)%256。 ET0=1。}unsigned char Tcount=0。 //定時(shí)器隔50毫秒進(jìn)一次中斷 TL0=(6553650000)%256。 if(Tcount==20) //定時(shí)器第20次進(jìn)中斷(1s) { MeasureFlag=1。 Tcount=0。還有就是為了恒溫,確保溫度不超過設(shè)定值允許超過的范圍,有以下一段程序:Display()。 //轉(zhuǎn)換設(shè)定溫度為一個(gè)浮點(diǎn)數(shù)。 //LED燈隔250ms閃一次 Beeper=~Beeper。 //制冷片制冷}else if(){ if(Tcount%5==0) // { SignalLED=~SignalLED。 //蜂鳴器每隔250ms響一次 } HeatUp()。第五章 (標(biāo)題)結(jié)束語歷時(shí)三個(gè)月的畢業(yè)設(shè)計(jì)終于完成了,為了讓本設(shè)計(jì)盡可能完美,在這段時(shí)間里我努力的學(xué)習(xí)了許多單片機(jī)的知識。設(shè)計(jì)的內(nèi)容不多,主要是單片機(jī)和傳感器主體部分的電路設(shè)計(jì)和軟件編程,除此以外還有鍵盤和顯示部分,以及蜂鳴器、報(bào)警燈和制冷片這些外部控制部分。雖然內(nèi)容不多,但是本設(shè)計(jì)適用于很多場合,使用的時(shí)候只需按要求做適當(dāng)調(diào)整即可。在完成軟件設(shè)計(jì)后,本設(shè)計(jì)也接近完成,反觀整個(gè)設(shè)計(jì),感到自己三個(gè)月以來的付出還是值得的。sbit DATA=P3^1。define noACK 0define ACK 1 //地址 指令 讀/寫define STATUS_REG_W 0x06 //000 0011 0define STATUS_REG_R 0x07 //000 0011 1define MEASURE_TEMP 0x03 //000 0001 1define MEASURE_HUMI 0x05 //000 0010 1define RESET 0x1e //000 1111 0typedef union { unsigned int i。} value。 //進(jìn)入設(shè)置模式的標(biāo)志 bit MeasureFlag=1。 for (i=0x80。i/=2) { //8位數(shù)據(jù),按從高位到低位的順序?qū)懭霐?shù)據(jù)線 if (i amp。 }else{ DATA=0。 //時(shí)鐘線輸入下降沿信號 _nop_()。_nop_()。 } DATA=1。 //等待SHT傳感器在數(shù)據(jù)線輸入ACK信號 error=DATA。 return error。{ unsigned char i,val=0。 //釋放數(shù)據(jù)線 for (i=0x80。i/=2) { SCK=1。 //讀一位 SCK=0。 //當(dāng)ack==1拉低數(shù)據(jù)線 SCK=1。_nop_()。 SCK=0。 //釋放數(shù)據(jù)線 return v
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1