![水位自動控制系統(tǒng)設(shè)計_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/5/2946b1f0-08cd-4c7d-be27-019070c19a4d/2946b1f0-08cd-4c7d-be27-019070c19a4d1.gif)
![水位自動控制系統(tǒng)設(shè)計_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/5/2946b1f0-08cd-4c7d-be27-019070c19a4d/2946b1f0-08cd-4c7d-be27-019070c19a4d2.gif)
![水位自動控制系統(tǒng)設(shè)計_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/5/2946b1f0-08cd-4c7d-be27-019070c19a4d/2946b1f0-08cd-4c7d-be27-019070c19a4d3.gif)
![水位自動控制系統(tǒng)設(shè)計_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/5/2946b1f0-08cd-4c7d-be27-019070c19a4d/2946b1f0-08cd-4c7d-be27-019070c19a4d4.gif)
![水位自動控制系統(tǒng)設(shè)計_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/5/2946b1f0-08cd-4c7d-be27-019070c19a4d/2946b1f0-08cd-4c7d-be27-019070c19a4d5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、水位自動控制系統(tǒng)設(shè)計 華南師范大學(xué)增城學(xué)院課 程 論 文 題目:水位自動控制系統(tǒng)設(shè)計課 程 名 稱 微型機控制技術(shù) 考 查 學(xué) 期 2013/2014 學(xué)年 第 2學(xué)期 考 查 方 式 課程論文 姓 名 學(xué) 號 專 業(yè) 應(yīng)用電子 成 績 指 導(dǎo) 教 師 摘要2一、設(shè)計內(nèi)容:3二、硬件電路設(shè)計32.1 系統(tǒng)框圖設(shè)計32.2 單片機最小系統(tǒng)42.4 水位傳感器的電路72.5 液晶1602顯示設(shè)計82.6 鍵盤功能設(shè)計112.7 電機驅(qū)動電路112.8 報警電路設(shè)計12三、軟件程序設(shè)計133.1 主程序流程圖133.2 鍵盤控制流程圖153.3 顯示流程圖153.4 水位測量流程圖163.5 PWM
2、 電機驅(qū)動程序173.6 水位報警程序18四、調(diào)試過程18五、心得體會19六、參考文獻21七、附錄22摘要水塔是在日常生活和工業(yè)應(yīng)用中經(jīng)常見到的蓄水裝置,在我們的生活中起到了重要的作用,而水塔里面的水位控制是一個水塔發(fā)揮作用的關(guān)鍵?;趩纹瑱C的水塔水位控制系統(tǒng)使水塔水位自動保持在一定的位置,通過對其水位的控制對外供水,以滿足需要。該系統(tǒng)使用水位傳感器對水塔水位進行檢測并將檢測到的信號傳給單片機來進行處理,通過調(diào)整定時器的定時時間來增大或者縮小占空比,并編寫程序加以控制,從而實現(xiàn)電機的調(diào)速。最后,使用液晶屏顯示當(dāng)前水位狀態(tài)以及電動機的轉(zhuǎn)速。該系統(tǒng)通過了報警模塊來實現(xiàn)了過低水位蜂鳴器鳴笛報警、過低
3、警戒水位自動處理、正常水位蜂鳴器鳴笛報警以及正常水位處理。本系統(tǒng)適應(yīng)在不同的用水場合下的用水速度需要,節(jié)省工作時間,提高了整體工作的效率,實現(xiàn)水塔水位的自動控制。液位控制是工業(yè)控制中的一個重要問題,針對液位控制過程中存在大滯后、時變、非線性的特點,為適應(yīng)復(fù)雜系統(tǒng)的控制要求,人們研制了種類繁多的先進的智能控制器,模糊PID控制器便是其中之一。模糊PID控制結(jié)合了PID控制算法和模糊控制方法的優(yōu)點,可以在線實現(xiàn)PID參數(shù)的調(diào)整,使控制系統(tǒng)的響應(yīng)速度快,過渡過程時間大大縮短,超調(diào)量減少,振蕩次數(shù)少,具有較強的魯棒性和穩(wěn)定性,在模糊控制中扮演著十分重要的角色關(guān)鍵詞:水位控制;單片機;模糊PID控制一、
4、設(shè)計內(nèi)容:這設(shè)計課程是為了確保水位在水塔的允許的范圍內(nèi)浮動,采用了水位傳感器測量水位變化,從而控制電動機,保證水位正常。因此,這里給出以STC89C52單片機為核心器件的水塔水位檢測控制系統(tǒng),該系統(tǒng)能實現(xiàn)水塔水位檢測、LCD1602顯示當(dāng)前水位功能以及蜂鳴器鳴笛報警,手動按鍵調(diào)整PWM電機調(diào)速功能,實現(xiàn)過低和正常警戒水位報警、過低和正常警戒水位處理的系統(tǒng)要求。按下電源按鈕后,燈會閃爍幾下,然后是常亮狀態(tài),蜂鳴器會響。電機不會轉(zhuǎn)的,此時系統(tǒng)在待機狀態(tài),且為正常狀態(tài)。要先選擇好電機的抽水速度是哪個檔位,共有4個檔位。檔位越高,速度越快。在電機轉(zhuǎn)的時候,按下選擇檔位,電機立馬會停止的,這個是一個軟件
5、安全冗余的設(shè)計理念。電機在水位模擬傳感器端口(低水位)按下后,說明水位太低,電機轉(zhuǎn)動,此時蜂鳴器會響一下,燈會閃爍幾下,以此表示報警,并且液晶也會顯示水位太低。當(dāng)水位模擬傳感器端口(正常水位)按下后,說明水位已經(jīng)到正常狀態(tài),電機停轉(zhuǎn),此時蜂鳴器也會響一下,燈一樣會閃爍,以此表示報警,且液晶屏也會顯示水位正常。而PWM速度調(diào)整就是檔位的選擇,必須在電機停止的狀態(tài)下去選擇電機輸出的速度。二、硬件電路設(shè)計2.1 系統(tǒng)框圖設(shè)計系統(tǒng)的總體框圖主要由主控芯片基本電路、按鍵電路、電動機和蜂鳴器驅(qū)動電路、液晶顯示電路組成。除主控芯片電路外,其他的都是外圍功能性電路。蜂鳴器和電動機電路驅(qū)動原理基本相同,都為三極
6、管驅(qū)動電路,按鍵電路為平常的獨立按鍵電路,液晶電路參考設(shè)計手冊既可。電路設(shè)計框圖如圖2.1所示:圖2.1 水塔水位控制系統(tǒng)總框圖2.2 單片機最小系統(tǒng)STC89C52是一款完全兼容8051內(nèi)核指令的芯片,是宏晶科技公司的新一代增強性的8051單片機9。采用最新的加密技術(shù)解決了全球89系列單片機都被解密的困惑。并且管腳完全兼容,性能更好,驅(qū)動力更強,功耗更低,價格也比傳統(tǒng)的89系列低10。STC89C52的引腳說明圖如圖3-1圖3-2 STC89C52的引腳圖說明圖3-4 最小系統(tǒng)原理圖此圖是單片機工作的最小系統(tǒng)原理圖,在這個電路中又可以分為復(fù)位電路和晶振電路,如圖3-4和圖3-5所示:圖3-5
7、復(fù)位電路復(fù)位電路可以分為上電復(fù)位和手動按鍵復(fù)位兩種。在系統(tǒng)上電的一瞬間單片機上電復(fù)位,原理是利用電容兩端的電壓不能突變,在一上電的瞬間電容好比短路,所以加在第九腳RST的電平是高電平,雖然時間很短,但是足以讓單片機系統(tǒng)復(fù)位。手動按鍵復(fù)位的原理是,在系統(tǒng)正常工作的過程中可以手動觸動按鍵使單片機復(fù)位。具體原理是,按下S1按鍵,因此5V電壓經(jīng)過一個200歐姆的電阻分壓后加到系統(tǒng)的RST上,手動按鍵按下到抬起的過程足以使系統(tǒng)復(fù)位。圖3-6晶振電路對于單片機系統(tǒng)而言,晶振電路就好比是人的心臟一樣,是一個跳動的動力來源,18,19號引腳接的是11.0592M的晶振。 2.3蜂鳴器報警電路原理 圖3-7蜂鳴
8、器報警功能電路蜂鳴器報警功能電路使用的是三極管8550驅(qū)動,三極管8550是PNP三極管,射極接電源+5V,基極通過一個電阻連接到P1.0口,集電極接蜂鳴器,當(dāng)P1.0為高電平時,三極管截止,蜂鳴器沒有不響,當(dāng)P1.0為低電平時,三極管導(dǎo)通,蜂鳴器發(fā)出響聲。2.4 水位傳感器的電路按鍵是現(xiàn)階段電子設(shè)計中最常用、最實用的輸入設(shè)備。按鍵能夠成為最普遍的輸入設(shè)備,主要是其具備了以下幾個優(yōu)點:工作原理、硬件電路連接簡單、操作實用性強、價格便宜,程序編寫簡單。缺點:機械抖動比較嚴(yán)重、外型不夠美觀。按鍵部分實現(xiàn)的主要原理是單片機讀取與按鍵相連接的I/O口狀態(tài),來判定按鍵是否按下,達到系統(tǒng)參數(shù)設(shè)置的目的。鍵
9、盤在單片機應(yīng)用系統(tǒng)中的作用是實現(xiàn)數(shù)據(jù)輸入、命令輸入,是人工干預(yù)的主要手段。獨立式按鍵就是按鍵相互獨立,每個按鍵單獨占用一根I/O口線,每根I/O口線的按鍵的工作狀態(tài),不會影響其他I/O口線上的工作狀態(tài)。各按鍵開關(guān)均需要采用了上拉電阻,是為了保證在按鍵斷開時,各I/O有確定的高電平。當(dāng)輸入口線內(nèi)部已有上拉電阻,外電路的上拉電阻可省去。因此,通過檢測輸入線的電平狀態(tài)就可以很容易判斷是哪個按鍵被按下了。優(yōu)點:電路配置靈活,軟件結(jié)構(gòu)簡單。缺點:每個按鍵需占用一根I/O口線,在按鍵數(shù)量較多時,I/O口浪費大,電路結(jié)構(gòu)顯得復(fù)雜。因此,此鍵盤適用于按鍵較少或操作速度較高的場合。矩陣式鍵盤適用于按鍵數(shù)量多的場
10、合,它通常由行線和列線組成,按鍵位于行、列的交叉點上。單片機的鍵盤檢測通常有三種方式:查詢、中斷、定時掃描。查詢和中斷方式同普通的 I/O 傳送是一致的,定時掃描方式是利用單片機內(nèi)部定時器產(chǎn)生定時中斷,在中斷服務(wù)程序中對鍵盤進行掃描獲得鍵值。在本設(shè)計中采用的是 4 行*4 列鍵盤,其電路圖如圖3.12所示,列線由 P2.4-P2.7口控制,行線由 P2.0-P2.3口控制。電路中共 16個按鍵,包括設(shè)置鍵、3 個溫度參數(shù)和時間設(shè)置鍵、1個增加鍵、1個減小鍵。系統(tǒng)在程序初始化時控制鍵盤行線的 P2.0-P2.3口輸出高電位,控制鍵盤列線的P2.4-P2.7口輸出低電位,在判斷電路是否有按鍵按下時
11、,讀 P2.0-P2.7端口值,若端口值不是11110000,則說明電路中有按鍵按下。然后根據(jù)程序進行去抖動處理和計算鍵值。 圖2.4 矩陣式鍵盤電路圖2.5 液晶1602顯示設(shè)計液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點,在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到越來越廣泛的應(yīng)用12。 字符型液晶模塊是一種用5×7點陣圖形來顯示字符的液晶顯示器,根據(jù)顯示的容量可以分為1行16個字、2行16個字、2行20個字等等。字符型液晶顯示模塊是一類專用于顯示字母、數(shù)字、符號等的點陣型液晶顯示模塊。之所以稱字符型液晶顯示模塊是因為其液晶顯示器件的電極圖形是由若干個5×8或5
12、×11點陣塊組成的字符塊集。每一個字符塊是一個字符位,每一位都可以顯示一個字符,字符位之間空有一個點距的間隔起著字符間距和行距的作用,這是其一;其二是這類模塊使用的是專用于字符顯示控制與驅(qū)動的IC芯片13。這兩種因素確定了這類模塊的應(yīng)用范圍僅局限于字符而顯示不了圖形,所以稱其為字符型液晶顯示模塊。字符型液晶顯示驅(qū)動控制器廣泛應(yīng)用于字符型液晶顯示模塊上。目前最常用的字符型液晶顯示驅(qū)動控制器是HD44780U,也出現(xiàn)使用HD667O1或HD66702等字符型液晶顯示驅(qū)動控制器單片控制的字符型液晶顯示模塊。液晶顯示驅(qū)動器為HD44100及其替代品。字符型液晶顯示模塊在世界上是比較通用的,而
13、且接口格式也是比較統(tǒng)一的,其主要原因可能是各制造商所采用的模塊控制器都是HD44780U及其兼容品,不管它的顯示屏的尺寸如何,它的操作指令及其形成的模塊接口信號定義都是兼容的。所以會使用一種字符型液晶顯示模塊,就會通曉所有的字符型液晶顯示模塊。液晶1602有三條控制線,RS/數(shù)據(jù)命令端,RW/讀寫選擇端、EN/使能端,一個8位的數(shù)據(jù)端口。常用指令說明如表3-1:表3-1常用指令說明指令名稱控制信號控制代碼D/I R/WD7 D6 D5 D4 D3 D2 D1 D0清屏0 00 0 0 0 0 0 0 1歸home位0 00 0 0 0 0 0 1 *輸入方式設(shè)置0 00 0 0 0 0 1 I
14、/D S顯示狀態(tài)設(shè)置0 00 0 0 0 1 D C B光標(biāo)畫面滾動0 00 0 0 1 S/C R/L * *工作方式設(shè)置0 00 0 1 DL N F * *CGRAM地址設(shè)置0 00 1 A5 A4 A3 A2 A1 A0DDRAM地址設(shè)置0 01 A6 A5 A4 A3 A2 A1 A0讀BF和AC0 1BF AC6 AC5 AC4 AC3 AC2 AC1 AC0寫數(shù)據(jù)1 0數(shù) 據(jù)讀數(shù)據(jù)1 1數(shù) 據(jù)圖3-10液晶1602顯示電路圖液晶1602從左到右依次有16根引腳,每個引腳定義不同。有三根控制引線和八根信號線,必須注意的一點是3號引腳是背光電源指示端。背光電阻選擇的不同有不同的結(jié)果。
15、我們這里選擇2.7k電阻做為背光電阻。2.6 鍵盤功能設(shè)計圖3-9按鍵功能電路 按鍵功能電路里面有兩種按鍵,一種按鍵是模仿水塔水位開關(guān)的功能按鈕,一種是電機PWM輸出的調(diào)整按鈕。原理是通過一個10k的電阻接到+5v電源線上,當(dāng)按鍵沒有按下時,按鍵沒有導(dǎo)通,所以沒有電流,但對于連到引腳上的那一端來講是高電平。當(dāng)按鍵按下時,因為電路導(dǎo)通,有電流流過,和單片機引腳接觸的那一端接地,所以是低電平。因此能檢測到信號的變化,交給程序處理后做出相關(guān)的動作。2.7 電機驅(qū)動電路圖3-8電機驅(qū)動電路電機驅(qū)動電路和蜂鳴器的電路基本相同,同樣使用8550三極管驅(qū)動,三極管的基極接P1.1,當(dāng)P1.1為高電平時,電機
16、不轉(zhuǎn)動,當(dāng)P1.1為低電平時,電機轉(zhuǎn)動。 2.8 報警電路設(shè)計圖3-7蜂鳴器報警功能電路蜂鳴器報警功能電路使用的是三極管8550驅(qū)動,三極管8550是PNP三極管,射極接電源+5V,基極通過一個電阻連接到P1.0口,集電極接蜂鳴器,當(dāng)P1.0為高電平時,三極管截止,蜂鳴器沒有不響,當(dāng)P1.0為低電平時,三極管導(dǎo)通,蜂鳴器發(fā)出響聲。三、軟件程序設(shè)計3.1 主程序流程圖當(dāng)系統(tǒng)按下電源開關(guān),且確定有電源存在時候,系統(tǒng)進入初始化狀態(tài),燈會閃爍、蜂鳴器響一聲、液晶初始化,初始化完以后,進入PWM按鍵調(diào)速選擇,如有按鍵按下,進入PWM按鍵調(diào)整子程序,若沒有,進入主程序等待狀態(tài),檢測水塔水位的液位狀態(tài),當(dāng)模
17、擬液位低水位按鍵按下后,電機以顯示速度啟動,模擬抽水過程,此時蜂鳴器報警,燈閃爍,且液晶會顯示水位過低狀態(tài)。當(dāng)模擬水位正常按鍵正常按鍵按下后,電機停止轉(zhuǎn)動,蜂鳴器報警、液晶顯示當(dāng)前正常狀態(tài),然后程序進入循環(huán),繼續(xù)檢測模擬水位狀態(tài)按鍵。具體流程圖的如圖4-2所示停止電機,燈閃爍幾下,蜂鳴器響幾聲,液晶顯示正常檢測模擬水塔水位正常按鍵開始系統(tǒng)初始化,燈閃爍,蜂鳴器響一聲,液晶顯示進入主程序等待狀態(tài)顯示速度啟動電機,燈閃爍幾下,蜂鳴器響,液晶顯示低水位檢測模擬水塔水位按鍵檢測模擬水塔水位低按鍵NYNYPWM按鍵調(diào)制子程序NYPWM調(diào)速按鍵選擇電機的轉(zhuǎn)速圖4-2程序總體流程圖3.2 鍵盤控制流程圖由于
18、使用的按鍵較少,所以本文采用了獨立式鍵盤,即每個按鍵單獨占用一根口線。在程序查詢方式下,通過I/O端口讀入按鍵狀態(tài),當(dāng)有按鍵按下時,相應(yīng)的端口變?yōu)榈碗娖?,這樣通過讀入I/O口狀態(tài)判斷是否有按鍵按下。查詢式鍵盤的程序流程圖如下:圖4-1 鍵盤程序流程圖3.3 顯示流程圖共陰極數(shù)碼管是用高電平(“1”)點亮的,要求驅(qū)動功率較大。程序流程圖如圖3.4 所示。圖 3.4 顯示子程序流程圖3.4 水位測量流程圖本設(shè)計采用單片機主控芯片控制繼電器外圍電路,用于驅(qū)動電機的啟動與關(guān)停。其程序流程圖如圖4-3所示。啟動A/D轉(zhuǎn)換讀取液位數(shù)據(jù)開始實際液位高警戒液位且電機已啟動關(guān)閉電機記錄數(shù)據(jù)實際液位低警戒液位且電
19、機關(guān)閉返回啟動電機記錄數(shù)據(jù)是否是否圖4-2 液位檢測流程圖3.5 PWM 電機驅(qū)動程序在進入PWM按鍵子程序后,首先要做的事是先檢測是否確定有按鍵按下,這個過程延時15ms,在確認有按鍵按下后,判斷是哪一個按鍵按下,如果是速度加按鍵按下,電機不管在什么狀態(tài),都是首先停止,然后是調(diào)整PWM調(diào)制時間,液晶屏顯示速度增加,按下減按鍵,也是先停止電機,調(diào)整PWM調(diào)制時間,液晶屏顯示速度減少。具體流程圖如圖4-1所示。PWM調(diào)速按鍵調(diào)整子程序檢測是否有按鍵按下YN延時15ms,確定有按鍵按下N檢測哪一個按鍵按下先停止電機,PWM速度增加液晶屏顯示速度值增加先停止電機,PWM速度減少液晶屏顯示速度值減少減
20、按鍵加按鍵圖4-1 PWM按鍵調(diào)整子程序流程圖3.6 水位報警程序報警子程序主要實現(xiàn)在溫度超限的情況下,進行聲光報警,并切斷電源。程序流程圖如下圖3.6。圖3.6 報警子程序流程圖四、調(diào)試過程本系統(tǒng)的調(diào)試主要分為硬件調(diào)試、軟件調(diào)試等兩大部分。經(jīng)過初步的分析設(shè)計后,在制作硬件電路的同時,調(diào)試也在穿插進行。這樣有利于問題的分析和解決,不會造成問題的積累,而且不會因為一個小問題而進行整體電路的檢查,從而可以節(jié)約大量的調(diào)試時間。軟件編程中,首先編寫單元模塊的程序,并且在硬件上調(diào)試成功問題,即可以做系統(tǒng)整體程序的調(diào)試。聯(lián)機調(diào)試是最重要的一部分,同時也是本設(shè)計成功的關(guān)鍵。上電后觀察電路工作性能,如不能正常
21、工作,按原理圖分模塊進行電路檢測,是否有虛焊或漏焊現(xiàn)象;如焊接正常,在按信號傳遞的方向逐級檢測,找出出問題的一級,并向該級的上級進行檢測,直到將故障排除。對于虛焊和漏焊的情況最好的辦法是先找到一個比較大的電路回路,如果用的是指針式萬用表,打到歐姆檔1X10歐姆檔就可以測,如果是指針擺到最右端,說明我們的線路連接是正常的!如果用的是數(shù)字萬用表,我們可以調(diào)整到短路檔位,接上要測的點直接就可以測,如果有蜂鳴響說明線路連接正常。在元件沒有在萬能板上進行焊接的時候我們是不能直接拿過來就進行使用的,必須經(jīng)過檢測,像LED燈可以用萬用表測試一下看其是否會發(fā)光,測試三級管的好壞,器件的檢測工作都要在焊接之前做
22、好。用萬用表接到按鍵的信號輸入端口,如果按鍵按下信號肯定會有變化,并且會在萬用表上直接測試讀出,這樣直接通過硬件測量按鍵是否能打到預(yù)期的效果。寫一個功能小程序,來具體單個的功能硬件電路是否有問題,如果有問題再具體看是硬件的問題還是軟件的問題,若沒有問題,則可以進行下一個功能電路的測試。五、心得體會作為一名電氣的大四學(xué)生,在即將畢業(yè)之際,通過做這次課程設(shè)計是很有意義的,而且也是必要的。在做這次課程設(shè)計的過程中,我感觸最深的當(dāng)屬查閱大量的設(shè)計資料了。為了讓自己的設(shè)計更加完善,查閱這方面的實際資料是十分必要的,也是必不可少的。其次,在這次課程設(shè)計中,我們運用了以前學(xué)過的專業(yè)課知識,如:proteus
23、仿真、匯編語言、模擬和數(shù)字電路知識等。雖然過去我從未獨立應(yīng)用過他們,但在學(xué)習(xí)的過程中帶著問題去學(xué)我發(fā)現(xiàn)效率很高,這是我做這次課程設(shè)計的又一收獲。最后,要做好一個課程設(shè)計,就必須做到:在設(shè)計程序之前,對所用單片機的內(nèi)部結(jié)構(gòu)有一個系統(tǒng)的了解,知道該單片機有哪些資源;要有一個清晰的思路和一個完整的軟件流程圖;在設(shè)計程序時,不能妄想一次將整個程序設(shè)計好,反復(fù)修改、不斷改進是程序設(shè)計的必經(jīng)之路;要養(yǎng)成注釋程序的好習(xí)慣,這樣為資料的保留和交流提供了方便;在設(shè)計中遇到的問題要記錄,以免下次遇到同樣的問題。在這次的課程設(shè)計中,我真正的意識到,在以后的學(xué)習(xí)中,要理論聯(lián)系實際,把我們所學(xué)的理論知識用到實際當(dāng)中,學(xué)
24、習(xí)單片機更是如此,程序只有在經(jīng)常寫與讀的過程中才能提高,這就是這次課程設(shè)計的最大收獲。六、參考文獻1 呂小紅,周鳳星,馬亮.基于單片機的電阻爐溫度控制系統(tǒng)設(shè)計C.武漢:武漢科技大學(xué),20082 馬云峰,郭文川.微機原理與接口技術(shù)M.北京:高等教育出版社,20013 張開生.MCS-51單片機溫度控制系統(tǒng)的設(shè)計J.微計算機信息,20054 胡壽松.自動控制原理(第五版)M.北京:北京科學(xué)出版社,20075 張俊謨.單片機中級教程M。北京:北京航空航天大學(xué)出版社,2006;6 劉君華.智能傳感器系統(tǒng)M。國防工業(yè)出版社,1998;7 侯國章.測試與傳感技術(shù)M.哈爾濱:哈爾濱工業(yè)大學(xué)出版社,20008
25、 夏大勇,周曉輝,趙增,陳博峰,虎恩典.MCS- 52單片機溫度控制系統(tǒng)J. 北京航空航天大學(xué)出版社,2007七、附錄#include<reg51.h>#define uint unsigned int#define uchar unsigned charsbit led=P01; /led燈顯示,低電平亮sbit speaker=P10; /蜂鳴器,低電平報警sbit lcd_rs=P07; /1602數(shù)據(jù)選擇命令端 sbit lcd_rw=P06; /1602讀寫選擇端 sbit lcd_enable=P05; /1602 使能端定義 sbit key_up=P30; /pwm
26、速度調(diào)整端口,電機速度加一sbit key_down=P31;/pwm速度調(diào)整端口,電機速度減一sbit monter=P11;/電機驅(qū)動端口,pwm控制輸出sbit water_normal=P16;/水位過高傳感器模擬按鍵端口,低電平報警sbit water_low=P17;/水位過低傳感器模擬按鍵端口,低電平報警uchar code pwm_t=45,90,100,130;/模式下的pwm值,人為已經(jīng)設(shè)定的時間是100,可以調(diào)整上限值 uint model=1,pwmT=150,time_count=0; void key_scan(); /按鍵掃描函數(shù) void check_water
27、_level(); /檢測水位是否正常函數(shù)void delay(uint z) /延時函數(shù) uint x,y; for(x=z;x>0;x-) for(y=110;y>0;y-);/*1602液晶顯示函數(shù)*/ void lcd_write_comd(uchar comd) /1602寫指令函數(shù) lcd_rs=0; /選擇指令 lcd_rw=0; /選擇寫 delay(5); P2=comd; /取命令 delay(8); lcd_enable=1; /使能有效 delay(8); lcd_enable=0;void lcd_write_data(uchar date) /1602寫
28、數(shù)據(jù)函數(shù)lcd_rs=1; /選擇數(shù)據(jù) lcd_rw=0; /選擇寫操作 delay(5);P2=date; /取數(shù)據(jù)操作 delay(8);lcd_enable=1; /使能有效 delay(8);lcd_enable=0;void lcd_set_xy(uchar x,uchar y) /定位具體位置 uint address; if(y=1) address=0x80+x;/第一行的位置 else address=0xc0+x; /第二行的位置 lcd_write_comd(address);void lcd_write_char(uchar x,uchar y,uchar date)/
29、寫一個字符函數(shù) lcd_set_xy(x,y); /設(shè)定位置 lcd_write_data(date); /寫入數(shù)據(jù) void lcd_write_string(uchar x,uchar y,uchar *s)/ 寫一個字符串函數(shù) lcd_set_xy(x,y); /設(shè)定位置 while(*s) /循環(huán)寫入數(shù)據(jù) lcd_write_data(*s); s+; /*電機PWM調(diào)速函數(shù)及程序主函數(shù)*/void init()/初始化函數(shù) uchar i,count=25; led=1; /開機led燈閃爍 for(i=0;i<15;i+) led=led; delay(count);coun
30、t=count+5; led=0; lcd_write_comd(0x38);/設(shè)置16*2行顯示,5*7點陣,8位數(shù)據(jù)接口 lcd_write_comd(0x0c); /開顯示 lcd_write_comd(0x01); /清屏 lcd_write_comd(0x80); /設(shè)定初始位置 lcd_write_string(0,1,"Water Lev:Normal"); lcd_write_string(0,0,"Monter Speed: 1"); speaker=0; /蜂鳴器鳴響一聲 delay(1000); speaker=1; TMOD=0X02; /定時0,定時時間為150us,工作在方式2 TH0=(256-150)%256; TL0=TH0; EA=1;/開總中斷 ET0=1;/開定時器0的中斷 TR0=0; /定時器0不啟動void main() /主函數(shù) init(); while(1) key_scan(); check_water_level(); /檢測水位是否正常函數(shù) void timre_0() interrupt 1/定時器0的中斷子函數(shù) time_count+; if(time_co
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度廣告活動策劃與執(zhí)行代理合同范本
- 2025年度中小企業(yè)信用貸款合同范本及證明書格式
- 2025年度海運集裝箱清潔與消毒服務(wù)合同
- 2025年度糧食行業(yè)市場拓展與品牌推廣合同
- 2025年度家暴離婚財產(chǎn)分割專項法律服務(wù)合同
- 金華浙江金華蘭溪市人民政府辦公室招聘勞務(wù)派遣工作人員筆試歷年參考題庫附帶答案詳解
- 貴州2025年貴州開放大學(xué)(貴州職業(yè)技術(shù)學(xué)院)招聘41人筆試歷年參考題庫附帶答案詳解
- 衢州浙江衢州江山市峽口中心幼兒園招聘幼兒園專任教師筆試歷年參考題庫附帶答案詳解
- 珠海廣東珠海市澳深度合作區(qū)頌琴小學(xué)招聘臨聘專任教師7人筆試歷年參考題庫附帶答案詳解
- 湖南2025年湖南農(nóng)業(yè)大學(xué)-岳麓山實驗室博士后招聘筆試歷年參考題庫附帶答案詳解
- PID圖(工藝儀表流程圖)基礎(chǔ)知識培訓(xùn)課件
- 《澳大利亞特有動物》課件
- 社會工作綜合能力上(初級)課件
- 《數(shù)據(jù)結(jié)構(gòu)》課件(完整版)
- 2023年春節(jié)后建筑施工復(fù)工復(fù)產(chǎn)專項方案
- 污水處理廠化驗管理手冊
- 出納收入支出記賬表Excel模板
- 叉車操作規(guī)程
- 2021年春新青島版(五四制)科學(xué)四年級下冊全冊教學(xué)課件
- 土建工程技術(shù)標(biāo)范本(DOC167頁)
- 惡性腫瘤化療后重度骨髓抑制病人的護理論文
評論
0/150
提交評論