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

正文內(nèi)容

基于labview的溫度檢測系統(tǒng)設計畢業(yè)論文(參考版)

2025-06-22 12:33本頁面
  

【正文】 } }附錄 II 下位機電路圖附錄 II 上位機程序圖襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞。t++)Disp(tmp2())。for(t=0。send_data_s3,3)。send_data_s2,3)。send_data_s1,3)。wendushuju3(tmp2())。wendushuju1(tmp())。 //溫度轉(zhuǎn)換tmp2change2()。while(1) { tmpchange()。}////////////////////////////////////void main() //主函數(shù) { uint t。send_data_s3[1]=bcd_value/100。send_data_s2[2]=bcd_value%100。}void wendushuju2(uint bcd_value){ send_data_s2[0]=2。send_data_s1[1]=bcd_value/100。j){。while(delay){for(j=125。}ES=1。i++){Send_SCI(*send_data_tmp)。//////////////////////////////////發(fā)送數(shù)據(jù)for (i=0。ES=0。ES=1。//用 T1 做波特率發(fā)生器時,必須禁止定時中斷使 ET1=0TR1=1。//讓 T1 工作在自動裝入時間常數(shù)的定時方式 2EA=1。TL1=0XFd。//接受中斷標志位PCON=0。//允許接受控制為TI=0。//方式 3 時波特率由定時器 1 決定 //SM2=0。}///////////////////////////////////////////函數(shù)名稱:URAT1_Init()//參量:無//函數(shù)功能:串口初始化//void SCI_Init(void){////////////////////SM0=0。 while(TI==0)。}///////////////////////////////////////////////////////////////void Send_SCI(unsigned char p){SBUF =p 。num[2]=((bcd_value%1000)%100)/10。 } }////////////////////////////////////////////////數(shù)據(jù)分離函數(shù) ///////////////////////void Bcd(uint bcd_value){ num[0]=bcd_value/1000。 P2=0XFF。 //點亮第二位的小數(shù)點 P2=led_point[i]。 if(i==1)P0=P0amp。i4。Bcd(disp_value)。 //放大十倍,這樣做的目的將小數(shù)點后第一位 return temp。 //得到真實十進制溫度值,因為 DS18B20 //可以精確到 度,所以讀回數(shù)據(jù)的最低位代表的是 temp=tt*100+。 temp=a|b8。 //發(fā)送讀取數(shù)據(jù)命令 a=readbyte()。if(dsreset()){writebyte(0xcc)。 //發(fā)送溫度轉(zhuǎn)換命令 }} //////////獲取溫度值//////////////////////////////////////////uint tmp() //get the temperature 獲得溫度 { float tt。if(dsreset()) //初始化 DS18B20 {writebyte(0xcc)。 //從最低位寫起 dat=1。i++) { writebit(datamp。 for(i=0。 _nop_()。//延時 60us,等待 ds18b20 采樣讀取 DS=1。//延時 15us,滿足讀時隙的時間長度要求 DS=i。 //數(shù)據(jù)線置高電平 DS=0。}} return dat。//最低位在前if(readbit()) dat|=0x80。i8。 //返回讀取到的數(shù)據(jù) } /////////////讀一個字節(jié) /////////////////////////////////////// uchar readbyte(void) //read a byte date 讀一個字節(jié) { uchar i,dat。 _nop_()。//延時 60us,滿足讀時隙的時間長度要求 DS=1。//讀時隙產(chǎn)生 7 us 后讀取總線數(shù)據(jù)。_nop_()。 _nop_()。 //總線拉低大于 1us DS=1。 //*數(shù)據(jù)線拉低置 0*/ _nop_()。 DS=1。 //495usreturn ~dat。 //讀數(shù)據(jù)線值DS=1。 //*數(shù)據(jù)線置高電平 1*/ Delay(4)。 //*數(shù)據(jù)線拉低置 0*/Delay(32)。 DS=1。 //放大十倍,這樣做的目的將小數(shù)點后第一位 return temp1。 //得到真實十進制溫度值,因為 DS118B20 //可以精確到 度,所以讀回數(shù)據(jù)的最低位代表的是 temp1=tt*100+。 temp1=a1|b18。 //發(fā)送讀取數(shù)據(jù)命令 a1=readbyte1()。if(DS1reset()){writebyte1(0xcc)。 //發(fā)送溫度轉(zhuǎn)換命令 }} //////////獲取溫度值//////////////////////////////////////////uint tmp1() //get the temp1erature 獲得溫度 { float tt。if(DS1reset()) //初始化 DS118B20 {writebyte1(0xcc)。 //從最低位寫起 dat=1。i++) { writebit1(datamp。 for(i=0。 _nop_()。//延時 60us,等待 DS118b20 采樣讀取 DS1=1。//延時 15us,滿足讀時隙的時間長度要求 DS1=i。 //數(shù)據(jù)線置高電平 DS1=0。}} return dat。//最低位在前if(readbit1()) dat|=0x80。i8。 //返回讀取到的數(shù)據(jù) } /////////////讀一個字節(jié) /////////////////////////////////////// uchar readbyte1(void) //read a byte date 讀一個字節(jié) { uchar i,dat。 _nop_()。//延時 60us,滿足讀時隙的時間長度要求 DS1=1。//讀時隙產(chǎn)生 7 us 后讀取總線數(shù)據(jù)。_nop_()。 _nop_()。 //總線拉低大于 1us DS1=1。 //*數(shù)據(jù)線拉低置 0*/ _nop_()。 DS1=1。 //495usreturn ~dat。 //讀數(shù)據(jù)線值DS1=1。 //*數(shù)據(jù)線置高電平 1*/ Delay(4)。 //*數(shù)據(jù)線拉低置 0*/Delay(32)。 DS1=1。 //放大十倍,這樣做的目的將小數(shù)點后第一位 return temp2。 //得到真實十進制溫度值,因為 DS218B20 //可以精確到 度,所以讀回數(shù)據(jù)的最低位代表的是 temp2=tt*100+。 temp2=a2|b28。 //發(fā)送讀取數(shù)據(jù)命令 a2=readbyte2()。if(DS2reset2()){writebyte2(0xcc)。 //發(fā)送溫度轉(zhuǎn)換命令 }} //////////獲取溫度值//////////////////////////////////////////uint tmp2() //get the temp2erature 獲得溫度 { float tt。if(DS2reset2()) //初始化 DS218B20 {writebyte2(0xcc)。 //從最低位寫起 dat=1。i++) { writebit2(datamp。 for(i=0。 _nop_()。//延時 60us,等待 DS218b20 采樣讀取 DS2=1。//延時 15us,滿足讀時隙的時間長度要求 DS2=i。 //數(shù)據(jù)線置高電平 DS2=0。}} return dat。//最低位在前if(readbit2()) dat|=0x80。i8。 //返回讀取到的數(shù)據(jù) } /////////////讀一個字節(jié) /////////////////////////////////////// uchar readbyte2(void) //read a byte date 讀一個字節(jié) { uchar i,dat。 _nop_()。//延時 60us,滿足讀時隙的時間長度要求 DS2=1。//讀時隙產(chǎn)生 7 us 后讀取總線數(shù)據(jù)。_nop_()。 _nop_()。 //總線拉低大于 1us DS2=1。 //*數(shù)據(jù)線拉低置 0*/ _nop_()。 DS2=1。 //495usreturn ~dat。 //讀數(shù)據(jù)線值DS2=1。 //*數(shù)據(jù)線置高電平 1*/ Delay(4)。 //*數(shù)據(jù)線拉低置 0*/Delay(32)。 DS2=1。 _nop_()。_nop_()。 } _nop_()。_nop_()。_nop_()。////////////////////// void Delay(uint t) //(15t+15)us { while(t) { t。uchar send_data_s2[3]。bit uart_flag=1。uint cmd。//,receive_tmp1。uchar receive_data_tmp。uchar uart_r_data。uint temp,temp1,temp2。 //define interface 定義 DS18B20 接口 sbit DS1=P1^1。uchar data led_point[4]={0xfe,0xfd,0xfb,0xf7}。uchar code LED_Val[] = {0xC0,0xF9,0xA4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x98,0xbf}。uchar readbyte(void)。void writebyte(uchar dat)。void Delay(uint t)。bit readbit(void)。//不聲明調(diào)用出錯void Delay_ms(uint delay)。2022.[12] 施雅婷,郭前崗, LabVIEW 串口通信系統(tǒng)的實現(xiàn)[J].電子 年 08 [13] 王立新,楊少卿,鄭紅軍,學報 12 卷第一期,1999 年 1 月.附錄 I 源代碼//include include includedefine uchar unsigned char define uint unsigned int void Disp(uint disp_value)。最后我要感謝各位老師和學校的各個領導。其次我也要感謝班級里的各位同學,完成的畢業(yè)設計的道路上少不了你們的指導。致 謝首先我要感謝我的指導老師,張磊老師,是你孜孜不倦的教導讓我在做畢業(yè)設計的道路上披荊斬棘,克服種種困難。但是,介于所掌握知識的局限性,本系統(tǒng)在功能和精度上和先進的測溫儀器相比仍有一段差距。經(jīng)過這半年的調(diào)研和編程,我對 LabVIEW 的興趣大增,它讓我感覺到了 G語言的便捷和容易入手。DS18B20,AT89C51 單片機方便好用,操作簡便,本系統(tǒng)總體成本較低,簡單可靠。我在完成老師給我的任務書的幾個指標外還多加了幾項功能。為了方便觀察,歷史數(shù)據(jù)的顯示方式就由下而上刷新,這樣更一目了然。圖 56 實時溫度顯示,如圖 57圖 57 歷史數(shù)據(jù)顯示圖這樣能更好的將三點
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1