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

正文內(nèi)容

基于單片機(jī)的恒溫水箱控制系統(tǒng)的軟件設(shè)計(jì)畢業(yè)論文(參考版)

2025-06-25 02:21本頁(yè)面
  

【正文】 b)。a) for(b=60。 for(a=10。while(x)。 //返回溫度值}void Delay(WORD n) //軟件延遲{WORD x。 //放大十倍,這樣做的目的將小數(shù)點(diǎn)后第一位//也轉(zhuǎn)換為可顯示數(shù)字,同時(shí)進(jìn)行一個(gè)四舍五入操作。 //得到真實(shí)十進(jìn)制溫度值,因?yàn)?DS18B20//可以精確到 度,所以讀回?cái)?shù)據(jù)的最低位代表的是// 度。 //兩字節(jié)合成一個(gè)整型變量。 temp=8。 //連續(xù)讀兩個(gè)字節(jié)數(shù)據(jù) b=tmpread()。 畢業(yè)論文(設(shè)計(jì))38 tmpwritebyte(0xbe)。 delayb(1)。 uchar a,b。 // 跳過序列號(hào)命令 tmpwritebyte(0x44)。 //初始化 DS18B20 delayb(1)。i++。 DS=1。 //寫 0 部分 i=8。while(i0)i。 DS=1。 i++。畢業(yè)論文(設(shè)計(jì))37 dat=dat1。j++) { testb=datamp。 for(j=1。 uchar j。 //讀出的數(shù)據(jù)最低位在最前面,這樣剛好 //一個(gè)字//節(jié)在 DAT 里 } return(dat)。i++) { j=tmpreadbit()。 for(i=1。}uchar tmpread(void) //讀一個(gè)字節(jié){ uchar i,j,dat。while(i0)i。 dat=DS。i++。i++。 bit dat。 while(i0)i。 DS=1。 i=103。 }}void dsreset(void) //DS18B20 初始化{ uint i。 while(i0) i。}void delayb(uint count) //delay{ uint i。_nop_()。_nop_()。 //清 0 端口,準(zhǔn)備顯示下位P2++。 //延時(shí) 5 個(gè)空指令畢業(yè)論文(設(shè)計(jì))35if(i==7) //檢測(cè)顯示完 8 位否,完成直接退出,不讓 P1 口再加//1,否則進(jìn)位影響到第四位數(shù)據(jù)break。i++){ //循環(huán)顯示P0=table[lp[i]]。 //將 P1 口的前 3 位輸出 0,對(duì)應(yīng) 138 譯門輸入腳,全//0 為第一位數(shù)碼管for(i=0。 //端口 2 為輸出P2=P2amp。}} }}void display(unsigned char *lp,unsigned char lc)//顯示{unsigned char i。if(key2==0)c=c5。while(!key1)。if(key3==0){if(key1==0){delay10ms()。 //設(shè)置 ADC 速度和通道Delay(2)。 //設(shè)置 口作為模擬輸入口ADC_RES=0。ADC_CONTR=0x88。=按位與后賦值,!邏輯非a=ADC_RES。=!ADC_FLAG。i++) //循環(huán)輸出 10 次,提高亮度 {display(l_tmpdate,5)。 //獲取液位個(gè)位 for(i=0。 l_tmpdate[6]=b/10。//獲取小數(shù)第一位 l_tmpdate[5]=b/100。//獲取個(gè)位 l_tmpdate[3]=11。//獲取十位 l_tmp=l_tmp%100。} l_tmp=temp%1000。a900)buffer=0。 //顯示百位,這里用 1000,是因?yàn)槲覀冎肮砸?/10 位了if(l_tmpdate[0]==0)l_tmpdate[0]=12。if(l_tmp0)l_tmpdate[0]=10。 tmpchange()。 int l_tmp。c=50。void key()。void InitADC()。void dsreset(void)。uchar tmpread(void)。void tmpchange(void)。//共陰數(shù)碼管 09 _ 空表unsigned char l_tmpdate[8]={0,0,10,0,0,0,0,0}。//數(shù)字的顯示函數(shù); lp 為//指向數(shù)組的地址,lc 為顯示的個(gè)數(shù)void delay()。 typedef unsigned int WORD。 uint b。int temp。 //定義按鍵5sbit key3=P2^5。 //定義蜂鳴器sbit key1=P2^3。 //P1 口第二功能控制寄存器//定義 ADC_CONTR 的操作常量define ADC_POWER 0x80 //ADC 電源控制位define ADC_FLAG 0x10 //ADC 轉(zhuǎn)換結(jié)束標(biāo)志位define ADC_START 0x08 //ADC 開始控制位define ADC_SPEEDLL 0x00 //540 個(gè)時(shí)鐘周期sbit DS=P3^3。 //ADC 控制寄存器 sfr ADC_RES =0xBD。2022[4]Alan . DiscreteTime Signal Processing Pearson Education。再一次向所有幫助過我的人們表示最誠(chéng)摯的謝意,謝謝你們!畢業(yè)論文(設(shè)計(jì))29參考文獻(xiàn)[1] 朱衛(wèi)華,洪鎮(zhèn)南,熱處理爐群的溫控系統(tǒng)設(shè)計(jì)[J] . 電工技術(shù). 2022, 4[2] 鄧生明 .中溫箱式電阻爐微機(jī)控制系統(tǒng)設(shè)計(jì)[J]. 機(jī)電工程技術(shù)。師生之情,血濃于水的感情將陪伴我度過一生,這將是我前進(jìn)、成長(zhǎng)的階梯。我想借此機(jī)會(huì)向李老師和其他幫助過我的老師表示衷心的感謝,同時(shí)也向這四年來幫助過、關(guān)心過我的老師、同學(xué)們表示衷心感謝!回顧畢業(yè)設(shè)計(jì)期間的日日夜夜,自己為有機(jī)會(huì)擺脫生活的煩惱與浮躁,靜心鉆研,潛心研究,并取得初步研究成果而感到欣慰。首先我要衷心地感謝我的指導(dǎo)老師李偉峰主任,他治學(xué)嚴(yán)謹(jǐn),學(xué)識(shí)淵博,品德商尚,平易近人,在我學(xué)習(xí)與設(shè)計(jì)期間不僅傳授我做學(xué)問的正確態(tài)度,還傳授我做人的準(zhǔn)則,這些都將使我終生受益。通過自已動(dòng)手實(shí)現(xiàn)了恒溫水箱的溫度控制系統(tǒng)的設(shè)計(jì),其功能基木符合設(shè)計(jì)要求。由于時(shí)間不足和能力有限,本畢業(yè)設(shè)計(jì)肯定存在不足,但是總體來說本次設(shè)計(jì)還是比較成功,為以后的設(shè)計(jì)奠定了基礎(chǔ),值得我們學(xué)習(xí)和研究。在寫畢業(yè)論文過程中,用 AutoCAD 和 Visio 畫圖和 word 排版等軟件,完美的完成了各項(xiàng)任務(wù)。通過寫畢業(yè)設(shè)計(jì),深入學(xué)習(xí)了 Altium designer 畫原理圖和制作 PCB,并且印制電路板。在做設(shè)計(jì)的時(shí)候,很需要耐心和對(duì)事物的細(xì)心,很多時(shí)候一個(gè)簡(jiǎn)單一問題的一個(gè)簡(jiǎn)單的疏忽就會(huì)導(dǎo)致整個(gè)電路的不工作,只有不斷的檢查不斷的調(diào)試,才能真正完成一個(gè)設(shè)計(jì)的制作。經(jīng)過對(duì)定時(shí)器的初值計(jì)算,深入學(xué)習(xí)了定時(shí)器/計(jì)數(shù)器。在做軟件設(shè)計(jì)的這段時(shí)間里,從思考設(shè)計(jì)到對(duì)電路的調(diào)試經(jīng)過了許多困難。開始溫度比較是否超過上限無報(bào)警 正常顯示P 2 . 7 取反 , 啟動(dòng)蜂鳴器YN圖 48 報(bào)警流程圖畢業(yè)論文(設(shè)計(jì))27第五章結(jié)論 系統(tǒng)設(shè)計(jì)總結(jié)通過本次的設(shè)計(jì),使我們不僅對(duì)單片機(jī)這門課程有了更深刻的認(rèn)識(shí),懂得了如何運(yùn)用課本知識(shí)結(jié)合實(shí)際來完成定時(shí)器的顯示和編程方法以及數(shù)碼顯示電路的驅(qū)動(dòng)方法,使我們能夠很快的適應(yīng)現(xiàn)代控制技術(shù)發(fā)展的需求,同時(shí)也提高了我們的思維能力和實(shí)際操作能力,為以后更好的走上工作崗位奠定了堅(jiān)實(shí)的基礎(chǔ)。我們可以在程序里設(shè)定溫度上限值,當(dāng)采集到的外界溫度高于當(dāng)前所設(shè)定溫度和液位上限值時(shí),程序就會(huì)進(jìn)入報(bào)警子程序,觸發(fā)蜂鳴器進(jìn)行報(bào)警。ADC_CONTR=0x88。=!ADC_FLAG。while(x)。 //ADC 上電延遲}void Delay(WORD n) //延遲程序{WORD x。 //清除先前的結(jié)果ADC_CONTR=0x88。 //定義變量 ibit a_flag //定義數(shù)組采集標(biāo)志位void InitADC()//初始化 ADC{P1ASF=0XFF。畢業(yè)論文(設(shè)計(jì))25開始初始化 A D C設(shè)置采集通道和數(shù)組開始采集等待中斷信號(hào)YN讀取轉(zhuǎn)換數(shù)據(jù)N轉(zhuǎn)換顯示圖 47 數(shù)據(jù)采集流程圖設(shè)計(jì)采用 C 語言編輯,ADC 采集通道用 口(CH2=0,CH1=0,CH0=0),中斷方式讀取轉(zhuǎn)換結(jié)果,讀取 8 位結(jié)果,轉(zhuǎn)換速度為 540 個(gè)時(shí)鐘周期轉(zhuǎn)換一次(SPEED1=0,SPEED0=0),采集數(shù)據(jù) a,經(jīng)運(yùn)算送給數(shù)碼管實(shí)時(shí)顯示。本設(shè)計(jì)采用中斷響應(yīng)法,CPU 向 ADC 發(fā)出啟動(dòng)轉(zhuǎn)換信號(hào)后,在等待轉(zhuǎn)換完成的時(shí)間內(nèi),可以繼續(xù)執(zhí)行其他任務(wù),當(dāng)轉(zhuǎn)換結(jié)束時(shí),ADC 發(fā)出的轉(zhuǎn)換結(jié)束信號(hào)向 CPU 申請(qǐng)中斷,CPU 響應(yīng)中斷,在中斷服務(wù)程序中讀取轉(zhuǎn)換結(jié)果。當(dāng) PADCH=0 且 PADC=0 時(shí),A/D 轉(zhuǎn)換中斷為最低優(yōu)先級(jí)中斷(優(yōu)先級(jí) 0);當(dāng) PADCH=0 且 PADC=1 時(shí),A/D 轉(zhuǎn)換中斷為較低優(yōu)先級(jí)中斷(優(yōu)先級(jí) 1);當(dāng) PADCH=1 且 PADC=0 時(shí),A/D 轉(zhuǎn)換中斷為較高優(yōu)先級(jí)中斷(優(yōu)先級(jí) 2);當(dāng) PADCH=1 且 PADC=1 時(shí),A/D 轉(zhuǎn)換中斷為最高優(yōu)先級(jí)中斷(優(yōu)先級(jí) 3)。IPH、IP :中斷優(yōu)先級(jí)控制寄存器高、低。EA: CPU 的中斷開放標(biāo)志,EA=1,CPU 開放中斷,否則,屏蔽所有中斷。表 45 10 位轉(zhuǎn)換結(jié)果構(gòu)成 1當(dāng) ADRJ=1 時(shí),10 位 A/D 轉(zhuǎn)換結(jié)果的高 2 位存放在 ADC_RES 的低 2 位中,低 8 位存放在 ADC_RESL 中,如下表 46 所示。如表 44 所示:表 44 模擬輸入通道選擇③A/D 轉(zhuǎn)換結(jié)果寄存器 ADC_RES、ADC_RESL特殊功能寄存器 ADC_RES 和 ADC_RESL 寄存器用于保存 A/D 轉(zhuǎn)換結(jié)果,AUXR1 寄存器的 ADRJ 位是 A/D 轉(zhuǎn)換結(jié)果寄存器(ADC_RES, ADC_RESL) 的數(shù)據(jù)格式調(diào)整控制位。ADC_START: ADC 轉(zhuǎn)換啟動(dòng)控制位,設(shè)置為 1 時(shí),開始轉(zhuǎn)換,轉(zhuǎn)換結(jié)束后為0。SPEED SPEED0:模數(shù)轉(zhuǎn)換器轉(zhuǎn)換速度控制位。如P1ASF=00001111,即 P1 口的前四個(gè)口為模擬功能。 工作時(shí)序設(shè)計(jì) [12]與 STCI2CSA60S2 系列單片機(jī) A/D 轉(zhuǎn)換相關(guān)的寄存器列于表 42。ADC 的轉(zhuǎn)換速度由 ADC 控制寄存器中的 SPEED1 和 SPEEDO 確定。A/D轉(zhuǎn)換結(jié)束后,最終的轉(zhuǎn)換結(jié)果保存到 ADC 轉(zhuǎn)換結(jié)果寄存器 ADC_RES 和ADC_RESL,同時(shí),置位 ADC 控制寄存器 ADC_CONTR 中的 A/D 轉(zhuǎn)換結(jié)束標(biāo)志畢業(yè)論文(設(shè)計(jì))22位 ADC_FLAG,以供程序查詢或發(fā)出中斷申請(qǐng)。圖 46 ADC 結(jié)構(gòu)從上圖可以看出,通過模擬多路開關(guān),將通過 ADC0~7 的模擬量輸入送給比較器。逐次比較型 A/D 轉(zhuǎn)換器具有速度高,功耗低等優(yōu)點(diǎn)。 STCI2CSA60S2 系列單片機(jī)的 ADC 是逐次比較型 ADC。上電復(fù)位后 P1口為弱上拉型 I/O 口,用戶可以通過軟件設(shè)置將 8 路中的任何一路設(shè)置為 A/D 轉(zhuǎn)換,不需作為 A/D 使用的口可繼續(xù)作為 I/O 口使用。STC12CSA60AD/S2 系列帶 A/D 轉(zhuǎn)換的單片機(jī)的 A/D 轉(zhuǎn)換口在 P1(),有 8 路 10 位高速 A/D 轉(zhuǎn)換器,速度可達(dá)到 250KHz (25 萬次/ 秒)。圖 45 LM1042 測(cè)量原理圖 A/D 轉(zhuǎn)換設(shè)計(jì)由上面液位檢測(cè)設(shè)計(jì)得知現(xiàn)在的關(guān)鍵問題是采集 LM1042 的輸出電壓 U02。經(jīng) LM1042 內(nèi)部電路處理后,由 UO2(16 引腳)端輸出與液面高度 H2 成線性關(guān)系的電壓信號(hào),這樣,在經(jīng)標(biāo)定后,即可由電壓表讀出液體的液面高度。因此,要測(cè)量某種液體的液面高度,只需預(yù)先對(duì)探頭進(jìn)行標(biāo)定,并求出 H 的值及ΔU 1. ΔU 2 的值。ΔU 2,最后便可求得液體的高度為:H 2=(ΔUΔU 1)設(shè)熱敏探頭的總高度為 H,空氣中的高度為 H1,液體中的高度為 H2,那么,當(dāng)恒定的工作電流通人探頭時(shí),在 H、H H 2 上單位長(zhǎng)度上的電壓變化量將分別為:ΔU、ΔU ΔU 2,這樣則有: ΔU=(H 1/H)熱敏電阻探頭的一部分放人待測(cè)液體中,一部分暴露在空氣中。 //將一個(gè)字節(jié)數(shù)據(jù)返回畢業(yè)論文(設(shè)計(jì))20} 液位檢測(cè)程序設(shè)計(jì) LM1042 檢測(cè)設(shè)計(jì)LM1042 的測(cè)量原理電路如圖 45 所示。 dat=(j7)|(dat1)。i=8。 dat=0。 return (dat)。 i=8。i++。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1