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

正文內(nèi)容

基于gprs的水庫監(jiān)測系統(tǒng)——水位信號采集及傳輸設(shè)計畢業(yè)論文(參考版)

2025-06-21 15:43本頁面
  

【正文】 }。 receivedata1 = 39。 Delay100ms()。)。 SendData1(39。O39。 SendData1(Temperature)。W39。 //發(fā)送距離數(shù)據(jù)的高位 SendData1(tempDistance)。)。 SendData1(39。F39。 } } if(receivebit1) { receivebit1 = 0。 LCD1602_write_char(2,13,Temperature%10+0x30)。 Temperature = receivedata2 45。)。 SendData2(39。 } Delay100ms()。 } else LCD1602_write_string(1,9, TooFar)。 39。 LCD1602_write_char(1,10,Distance%10+0x30)。)。 LCD1602_write_char(1,11,39。 Distance = Distance / 10。 Distance = Distance / 10。)。 LCD1602_write_char(1, 9,39。)。 if(Distance==0) LCD1602_write_char(1,10,39。 LCD1602_write_char(1,11,Distance%10+0x30)。)。 LCD1602_write_char(1,12,39。 if(Distance1000)//小于1米 { LCD1602_write_string(1,14,cm)。 if(counttemp==2) { Distance = Distance + receivedata2。 counttemp++。 counttemp = 0。)。 SendData2(39。 while(1) { Delay100ms()。 IT1 = 1。 InitUART()。 LCD1602_write_string(1,0,Distance: . mm)。 unsigned char Temperature。 //計數(shù)變量 unsigned int Distance。 } while (i)。 do { do { while (k)。 j = 52。 _nop_()。 }}main函數(shù)include void Delay100ms() //{ unsigned char i, j, k。 } else { measuring_distance = S。 S = (time * )/100。 TH0 = 0。 unsigned long S = 0。} } ConutDistance()。0x80){flag = 1。 break。 break。 } if(TH0amp。 TR0 = 1。 while(1) //檢測到高電平時定時器0開始計時 { if(ECHO==1) { TH0 = 0。}//超聲波讀取數(shù)據(jù)void DealUltrasonicData(void){ begin = 0。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。i0。 TRIG = 1。 TL0 = 0。 TR0 = 1。 LCD_cls()。 LCD_write_instruction(LCD_DISPLAY_ON|LCD_CURSOR_OFF)。 LCD_write_data(dat)。 //第幾行 y = x+y。 }}// 函數(shù)名稱: void LCD1602_write_char(unsigned x,unsigned char y,unsigned char dat )// 功能描述: 寫入字符到第x(1,2)行y(0,15)列void LCD1602_write_char(unsigned x,unsigned char y,unsigned char dat ){ unsigned char i = 0。 while(s[i] != 0x00) //寫入字符串值 { LCD_write_data(s[i])。 //第幾行 y = x+y。void LCD1602_write_string(unsigned x,unsigned char y,unsigned char *s){ unsigned char i = 0。 LCD_1602_EN = 0。 LCD_1602_DATA = LCD_data。 LCD_1602_RS = 1。 LCD_1602_EN = 1。 LCD_1602_RW = 0。}// 函數(shù)名稱: void LCD_write_instruction(unsigned char LCD_instruction)// 功能描述: 寫指令到LCD1602void LCD_write_instruction(unsigned char LCD_instruction) { LCD_check_busy()。 LCD_1602_DATA = 1。 LCD_1602_RS = 0。 } LCD_1602_EN = 0。 LCD_1602_EN = 1。 // 1:數(shù)據(jù)寄存器;0:命令寄存器 LCD_1602_RW = 1。 }}LCD1602程序include // 函數(shù)名稱: void LCD_check_busy(void)// 功能描述: 檢測LCD狀態(tài),看它是不是還在忙void LCD_check_busy(void) { while(1) { LCD_1602_EN = 0。 temperature_flag = 1。//得到溫度的小數(shù)部分 zhengshu = tpmsb + tplsb。 xiaoshutemp = xiaoshu *。 //把得到的溫度數(shù)據(jù)進(jìn)行下列處理 tpmsb = tpmsb4。 //復(fù)位溫度傳感器 xiaoshu = tplsbamp。 unsigned int xiaoshutemp。 //讀入溫度數(shù)據(jù)高字節(jié) tplsb=temp_buff[0]。i++) { temp_buff[i] = ReadOneChar()。 for(i=0。 WriteOneChar(0xcc)。 delay_ds18b20(50000)。 //程序說明里已經(jīng)說過,不在多說。 while(Init_DS18B20())。 } return(dat)。 // 給脈沖信號 if(DQ) dat|=0x80。 // 給脈沖信號 dat=1。i0。 unsigned char dat = 0。 // 給脈沖信號 dat=1。 // 數(shù)據(jù)寫入 delay_ds18b20(5)。 // 給脈沖信號 DQ = datamp。 i0。 } }}//寫一個字節(jié),void WriteOneChar(unsigned char dat) { unsigned char i=0。 while(temp == 1) { temp = Init_DS18B20()。}void Ds18b20Init(){ bit temp = 1。 //如果x=0則初始化成功 x=1則初始化失敗 delay_ds18b20(20)。 //拉高電平 delay_ds18b20(10)。 //降級電平 delay_ds18b20(100)。 //拉高電平 delay_ds18b20(8)。 } //以下是初始化程序bit Init_DS18B20(void) { bit x=0。沒有他們的幫助我的畢業(yè)設(shè)計會面對很大的困難。他們不厭其煩的回答我不明白的地方,和我討論我們需要怎么去做。在此,我對兩位老師表示我深深的感謝。從開始我對硬件方便的一竅不通,到如今能做出物品出來。在大四下學(xué)期的時間里非常感謝胡華老師和嚴(yán)青老師對我設(shè)計的指導(dǎo)。對于做硬件,在做的過程中,不確定性很多,而且遇到的也不知道在什么情況下,但是這種不確定行不是阻礙前進(jìn)的原因,做起來遠(yuǎn)比想象中的容易一些。我所希望的論文也從這點(diǎn)出發(fā),所以用了大量的章節(jié)來說到一些東西,他們都是必要的,同時對于像我這樣不了解的人來說,這些又完全沒有必要。但是無法逃避這種無關(guān)緊要。里邊有這么一個道理,在你學(xué)習(xí)的知識里邊20%的才是會用到的,另外的80%一輩子都可能用不到。硬件部分主要是把寫好的程序?qū)懭雴纹瑱C(jī)進(jìn)行驗(yàn)證。還有就是超聲波探頭,超聲波探頭有一層金屬網(wǎng)膜,這層金屬網(wǎng)膜距離大約有五毫米,但是真正發(fā)送信號的部分是在圓形的中間部分,這個距離無法控制,并且具體的發(fā)送部分到超聲波探頭前端距離不知道多少,雖然很少,但是會導(dǎo)致錯誤。無法實(shí)現(xiàn)的原因有,首先在本設(shè)計中很少使用到電容,導(dǎo)致能量供給不足,電容在實(shí)踐操作中有是難點(diǎn),和花錢的地方。圖64 超聲波測距儀發(fā)送到電腦上的數(shù)據(jù)圖65 超聲波測距儀發(fā)送到電腦上的數(shù)據(jù) 最終電路實(shí)物圖最終電路圖如圖66,67所示。十六進(jìn)制的1B對應(yīng)十進(jìn)制的27。十六進(jìn)制的1C對應(yīng)十進(jìn)制的28。其中53,57,4F,4B,分別是S,W,O,K。圖63 下載程序到芯片本設(shè)計的超聲波測距儀,通過串口發(fā)送到電腦上的數(shù)據(jù)顯示如64,65圖所示。對于電路的測試,主要是查看是否通電,所有硬件運(yùn)行是否正常,不正常的換掉,在實(shí)驗(yàn)初期其實(shí)很難遇到這樣的問題,只要電路圖沒有問題,零件質(zhì)量比較可靠,比較容易一次完成。在準(zhǔn)備下載之前不需要通電,需要下載機(jī)提示給單片機(jī)供電才供電。所用可以使用USB線路,也可以使用其他線路,對于本設(shè)計由于是用TXD和TXD輸出的,可以直接使用這兩個接口就可以操作。對于單片機(jī)的程序?qū)懭胧潜容^簡單的,只要在網(wǎng)絡(luò)上找到這種芯片的下載工具,然后連接線路,連接線路的特點(diǎn)是,單片機(jī)的TXD和寫入線路的RXD相連,反之單片機(jī)的RXD和寫入線路的TXD相連。當(dāng)把測試溫度改變?yōu)?5時,數(shù)據(jù)改變?yōu)镕0 00,溫度測量正確。其中10 00表示的是測試溫度值1。其中本設(shè)計開始之初DS18B20的測試如61,62圖所示。因?yàn)樵赑rotues里沒有超聲波的模塊,其他類似的軟件也沒有相應(yīng)的模塊。(4)模擬,通過串口助手查看結(jié)果。(2)設(shè)置各種參數(shù),比如單片機(jī)的晶振,串口的串口號。具體步驟為:(1)畫基本電路圖。在畫好基本的電路圖后,可以把生成好了的HEX文件導(dǎo)入單片機(jī),編譯。(4)將編譯好的正確的程序生成HEX文件。(2)編譯寫好了的文件。在Keil進(jìn)行調(diào)試時的步驟是如下。距離和溫度值可以由LCD1602直接顯示,也可以通過向串口發(fā)送命令“F”,來獲得數(shù)據(jù)。是處理數(shù)據(jù)和調(diào)用個個器件的核心。 } }通過本章節(jié)的說明,了解到本設(shè)計的幾個功能模塊的工作方式,包括DS18b20的程序,超聲波測距的程序,以及輸出函數(shù)等。K39。)。 //發(fā)送溫度數(shù)據(jù) SendData1(39。)。 //發(fā)送距離數(shù)據(jù)的低位 SendData1(39。 SendData1(tempDistance8)。S39。) { receivedata1 = 0
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1