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

正文內(nèi)容

基于單片機(jī)的電器遙控設(shè)計(jì)畢業(yè)論文-資料下載頁(yè)

2025-06-27 20:09本頁(yè)面
  

【正文】 通常應(yīng)放在源文件或源程序的最前面。(5)每一個(gè)說(shuō)明,每一個(gè)語(yǔ)句都必須以分號(hào)結(jié)尾。但預(yù)處理命令,函數(shù)頭和花括號(hào)“}”之后不能加分號(hào)。(6)標(biāo)識(shí)符,關(guān)鍵字之間必須至少加一個(gè)空格以示間隔。若已有明顯的間隔符,也可不再加空格來(lái)間隔。 程序設(shè)計(jì)就是用計(jì)算機(jī)所能接受的語(yǔ)言把所需解決問(wèn)題的步驟逐一描述出來(lái),也就是編制計(jì)算機(jī)的程序,在設(shè)計(jì)應(yīng)用系統(tǒng)時(shí),軟件的編制是重要環(huán)節(jié)。軟件的質(zhì)量直接影響整個(gè)系統(tǒng)功能的實(shí)現(xiàn)。應(yīng)用程序的設(shè)計(jì)因系統(tǒng)而異,但程序設(shè)計(jì)總是有共同特點(diǎn)及其規(guī)律的。在編寫程序時(shí),采取如下幾個(gè)步驟:(1)分析問(wèn)題,明確所要解決問(wèn)題的要求,將軟件分成若干個(gè)相對(duì)獨(dú)立的部分。根據(jù)功能關(guān)系和時(shí)序關(guān)系,設(shè)計(jì)出合理的軟件總體結(jié)構(gòu)。(2)定程序框圖,即根據(jù)所選擇的計(jì)算方法制定框圖,這不僅是程序設(shè)計(jì)的一個(gè)重要組成,而且是決定成敗的關(guān)鍵部分。(3)合理分配系統(tǒng)資源,包括定時(shí)器/計(jì)數(shù)器、中斷、堆棧等。分配好單元后,進(jìn)一步將程序框圖畫(huà)成詳細(xì)的操作流程。(4)根據(jù)程序的流程圖和指令系統(tǒng)編寫出程序。注意在程序的有關(guān)位置處寫上功能注釋,提高程序的可讀性。(5)程序調(diào)試。通過(guò)編輯軟件編輯出的源程序,必須用編譯程序匯編后生成目標(biāo)代碼。如果源程序有語(yǔ)法錯(cuò)誤,需修改源文件后繼續(xù)編譯,直到無(wú)語(yǔ)法錯(cuò)誤為止,然后利用目標(biāo)代碼通過(guò)仿真器進(jìn)行程序調(diào)試,排除設(shè)計(jì)和編程中的錯(cuò)誤直到成功。(6)程序優(yōu)化。使各功能程序模塊化,子程序化,縮短程序的長(zhǎng)度,加快運(yùn)算速度和節(jié)省數(shù)據(jù)存儲(chǔ)空間,減少程序執(zhí)行的時(shí)間。見(jiàn)下頁(yè)。void main(void){ while(1){ //系統(tǒng)初始化 啟動(dòng)指示燈閃爍 SHUI=1。 JIARE=1。 LENSHUI=1。 RESHUI=1。 QIDZS=1。第 22 頁(yè) 共 50 頁(yè) dealy()。 QIDZS=0。 dealy()。 if(QIDONG==0amp。amp。JITING==1) //啟動(dòng)程序 { unsigned int valA。 QIDZS=1。 //啟動(dòng)指示燈亮 P0=0XFF。 Lcd_init()。 //設(shè)置液晶顯示器 LCD_Clr()。 //清屏 Disp_img(picture)。 //顯示圖片 delayms(100)。 Lcd_init()。 //從圖形顯示狀態(tài)下返回 Lcd_Mark2()。//圖標(biāo) 2(畫(huà)面 2) delayms(80)。 Lcd_init()。//從圖形顯示狀態(tài)下返回 Lcd_Mark3()。 //圖標(biāo) 3(畫(huà)面 3)第 23 頁(yè) 共 50 頁(yè) 檢 測(cè) 頂 層 高 液 位 狀 態(tài)開(kāi) 始 N Y 檢 測(cè) 頂 層 低 液 位 狀 態(tài) Y結(jié) 束檢 測(cè) 低 層 低 液 位 狀 態(tài)報(bào) 警 顯 示檢 測(cè) 中 冷 水 低 液 位 檢 測(cè) 中 熱 水 低 液 位超 聲 波 檢 測(cè) 液 位 電 磁 閥 啟 動(dòng)進(jìn) 水電 磁 閥 停 止進(jìn) 水 加 熱 棒 加 熱測(cè) 試 加 熱 溫 度停 止 加 熱 YN系 統(tǒng) 初 始 化液 晶 顯 示指 示 燈 亮水 泵 啟 動(dòng) 液 晶 顯 示 水 流 速 度 Y水 泵 停 止液 晶 顯 示NYNNY電 磁 閥 啟 動(dòng)進(jìn) 水 Y電 磁 閥 停 止進(jìn) 水 YNNN第 24 頁(yè) 共 50 頁(yè) delayms(80)。 timer_init()。 //定時(shí)器初始化while(1) { if(t2==10)// { t2=0。 speed2=(TH1*256+TL1)*2。//獲得真實(shí)轉(zhuǎn)速 speed_conv()。 //進(jìn)行流速轉(zhuǎn)換 num1=speed2*60。 TH1=0。 TL1=0。 zhuansu_buff[0]=num1/10000。 zhuansu_buff[1]=num1%10000/1000。 zhuansu_buff[2]=num1%10000%1000/100。 zhuansu_buff[3]=num1%10000%1000%100/10。 zhuansu_buff[4]=num1%10000%1000%100%10。 if(zhuansu_buff[0]==0) //如果轉(zhuǎn)速的萬(wàn)位為 0 { zhuansu_buff[0]=17。 //則不顯示, if(zhuansu_buff[1]==0) //在這種前提下,如果千位也為 0 的話, { zhuansu_buff[1]=17。 //不顯示千位 if(zhuansu_buff[2]==0)//在這種前提下,如果百位也為 0 的話, { zhuansu_buff[2]=17。//不顯示百位 if(zhuansu_buff[3]==0) //在這種前提下,如果十位也為0 的話, zhuansu_buff[3]=17。 //不顯示十位 } } } zhuansu_display()。 num1=0。 temperture_display()。 //進(jìn)行溫度顯示 RX=1。 //先拉高,等待下次高電平到來(lái)進(jìn)行計(jì)數(shù) StartModule()。 //啟動(dòng)超聲波模塊 for(valA=7510。valA0。valA) //循環(huán),在有效范圍內(nèi)計(jì)數(shù) { if(RX==1) //如果接收頭接收到超聲波, { Timer_Count()。 //啟動(dòng)計(jì)數(shù)器進(jìn)行計(jì)數(shù) }第 25 頁(yè) 共 50 頁(yè) } } if(JITING==0amp。amp。QIDONG==1) //急停開(kāi)關(guān) { SHUI=1。 JIARE=1。 LENSHUI=1。 RESHUI=1。 QIDZS=1。 dealy()。 QIDZS=0。 dealy()。 } if(JITING==1) //急停開(kāi)關(guān) { QIDZS=1。 }if(DI==1) //檢測(cè)最底層低液位狀態(tài) { BUTT=0。 SHUI=1。 QIDZS=1。 dealy()。 QIDZS=0。 dealy()。 }if(DI==0) { BUTT=1。 }if(BUTT==0) //報(bào)警狀態(tài) { SHUI=1。 JIARE=1。 LENSHUI=1。 RESHUI=1。 }if(BUTT==1) { QIDZS=1。 //啟動(dòng)指示燈亮 if(GDI==1) //最高層液位狀態(tài) { SHUI=0。第 26 頁(yè) 共 50 頁(yè) } if(GDI==0) { SHUI=1。 if(GGAO==0) { SHUI=1。 } } if(ZRDI==1) //中層熱水狀態(tài) { RESHUI=0。 } if(ZRDI==0) { RESHUI=1。 if(disdata[1]==3) //設(shè)定溫度 30 度 { JIARE=1。 } if(disdata[1]!=3) { JIARE=0。 } if(ZLDI==1) //中層冷水狀態(tài) 超聲波控制水位 { LENSHUI=0。 } if(ZLDI==0) //中層冷水狀態(tài) 超聲波控制水位 {if(S=200){ LENSHUI=0。 } if(S=200){ LENSHUI=1。 }}} if(disdata[1]=5) //設(shè)定溫度超過(guò) 50 度 報(bào)警 { BUTT=0。 } 第 27 頁(yè) 共 50 頁(yè) if(ZRDI==0amp。amp。ZRGAO==0) { RESHUI=1。 } } } } } } 程序源代碼 程序源代碼使用 C 語(yǔ)言編寫,使用 C 語(yǔ)言編寫程序效率高,調(diào)用方便。程序主要由LCD12864 程序,18B20 溫度顯示子程序、超聲波測(cè)量距離子程序、霍爾流量計(jì)子程序等詳見(jiàn)附錄二。五、調(diào)試過(guò)程本系統(tǒng)的調(diào)試主要分為硬件調(diào)試、軟件調(diào)試等兩大部分。經(jīng)過(guò)初步的分析設(shè)計(jì)后,在制作硬件電路的同時(shí),調(diào)試也在穿插進(jìn)行。這樣有利于問(wèn)題的分析和解決,不會(huì)造成問(wèn)題的積累,而且不會(huì)因?yàn)橐粋€(gè)小問(wèn)題而進(jìn)行整體電路的檢查,從而可以節(jié)約大量的調(diào)試時(shí)間。軟件編程中,首先編寫單元模塊的程序,并且在硬件上調(diào)試成功問(wèn)題,即可以做系統(tǒng)整體程序的調(diào)試。聯(lián)機(jī)調(diào)試是最重要的一部分,同時(shí)也是本設(shè)計(jì)成功的關(guān)鍵。上電后觀察電路工作性能,如不能正常工作,按原理圖分模塊進(jìn)行電路檢測(cè),是否有虛焊或漏焊現(xiàn)象;如焊接正常,在按信號(hào)傳遞的方向逐級(jí)檢測(cè),找出出問(wèn)題的一級(jí),并向該級(jí)的上級(jí)進(jìn)行檢測(cè),直到將故障排除。對(duì)于虛焊和漏焊的情況最好的辦法是先找到一個(gè)比較大的電路回路,如果用的是指針式萬(wàn)用表,打到歐姆檔 110 歐姆檔就可以測(cè),如果是指針擺到最右端,說(shuō)明我們的線路連接是正常的!如果用的是數(shù)字萬(wàn)用表,我們可以調(diào)整到短路檔位,接上要測(cè)的點(diǎn)直接就可以測(cè),如果有蜂鳴響說(shuō)明線路連接正常。:在元件沒(méi)有在萬(wàn)能板上進(jìn)行焊接的時(shí)候我們是不能直接拿過(guò)來(lái)就進(jìn)行使用的,必須經(jīng)過(guò)檢測(cè),像 LED 燈可以用萬(wàn)用表測(cè)試一下看其是否會(huì)發(fā)光,測(cè)試三級(jí)管的好壞,器件的檢測(cè)工作都要在焊接之前做好。:用萬(wàn)用表接到按鍵的信號(hào)輸入端口,如果按鍵按下信號(hào)肯定會(huì)有變化,并且會(huì)在萬(wàn)用表上直接測(cè)試讀出,這樣直接通過(guò)硬件測(cè)量按鍵是否能打到預(yù)期的效果。:寫一個(gè)功能小程序,來(lái)具體單個(gè)的功能硬件電路是否有問(wèn)題,如果有問(wèn)題再具體看是硬件的問(wèn)題還是軟件的問(wèn)題,若沒(méi)有問(wèn)題,則可以進(jìn)行下一個(gè)功能電路的測(cè)試。第 28 頁(yè) 共 50 頁(yè):1. LED 燈通電不亮。主要查看是否把 LED 燈的陰陽(yáng)極接反。一是要查看蜂鳴器是否接反。而是看三極管 9015,具體的檢測(cè)方法是首先看 9015 射極是否為高電壓,如果為高電壓繼續(xù),脫離單片機(jī)給基極一個(gè)低電平,此時(shí)蜂鳴器應(yīng)該會(huì)響,但是若不響,電壓檔測(cè)量射極是否為低電平,若是,則需要具體找一個(gè) 6v 直流電串上一個(gè) 10k 的電阻進(jìn)行直接通電,看蜂鳴器是否損壞。方法同上。 不顯示或者顯示但是后面的對(duì)比度太差。當(dāng)然液晶的使用還是很有技巧性的,應(yīng)該先寫一個(gè)液晶的小功能子程序把液晶測(cè)試好。還有一個(gè)地方需要聲明,如果要是用P0 口接液晶的控制端口需要上拉 10K 的電阻,因?yàn)?51 系列的單片機(jī) P0 口是漏極開(kāi)路電路,不然是沒(méi)有任何控制指令控制液晶的。液晶的主要電路是接線多,所以如果發(fā)現(xiàn)問(wèn)題,要細(xì)致的去看看每一根線是否接好。是否有虛焊或者短接的現(xiàn)象發(fā)生。 : 液晶的初始化時(shí)間及發(fā)送控制命令的等待時(shí)間要參考手冊(cè),并且用 C
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1