2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  機電控制技術(shù)課程設(shè)計</p><p>  題目: 液位控制系統(tǒng) </p><p><b>  指導(dǎo)教師: </b></p><p>  院 系:機械與動力工程學(xué)院</p><p><b>  姓 名: </b></p><p><b&g

2、t;  學(xué) 號:</b></p><p><b>  其他組員: </b></p><p><b>  目錄</b></p><p>  (一)設(shè)計背景-----------------------------------------------------------------3</p&g

3、t;<p> ?。ǘ┰O(shè)計方案的分析與確定-----------------------------------------------4</p><p>  2.1 設(shè)計任務(wù)與要求------------------------------------------------4</p><p>  2.2 系統(tǒng)總體方案的確定-------------------------

4、-----------------5</p><p> ?。ㄈ┯布倪x擇與設(shè)計-----------------------------------------------------7</p><p>  3.1 A/D轉(zhuǎn)換器-------------------------------------------------------7</p><p>  3.

5、2 運算放大電路---------------------------------------------------8</p><p>  3.3存儲器擴展------------------------------------------------------10</p><p>  3.4 LED的連接----------------------------------------

6、-------------13</p><p>  3.5 撥碼盤的設(shè)計-------------------------------------------------14</p><p>  3.6 光電隔離和電機控制電路---------------------------------14</p><p>  3.7 測量液位傳感器的選擇-----------

7、-------------------------14</p><p> ?。ㄋ模┸浖δ艿脑O(shè)計-------------------------------------------------------15</p><p> ?。ㄎ澹┰O(shè)計說明----------------------------------------------------------------29</p&

8、gt;<p> ?。┰O(shè)計小結(jié)----------------------------------------------------------------46</p><p>  (七)致謝----------------------------------------------------------------------46</p><p> ?。ò耍﹨⒖嘉墨I-

9、---------------------------------------------------------------47</p><p><b> ?。ㄒ唬┰O(shè)計背景</b></p><p>  單片機作為微型計算機發(fā)展中的一個重要分支,以其可靠性、高性能價格比、低電壓、低能耗等優(yōu)勢,廣泛應(yīng)用于工業(yè)控制等領(lǐng)域,它具有系統(tǒng)結(jié)構(gòu)典型、靈活、通用性強、指令完整豐富,

10、計算機技術(shù)系統(tǒng)化、理論和應(yīng)用精密結(jié)合,外部配件豐富,接口簡單等諸多獨特優(yōu)點,非常適合工業(yè)控制,但在實際應(yīng)用工程中單片機控制系統(tǒng)的控制算法及其實現(xiàn)是應(yīng)用人員在系統(tǒng)設(shè)計中應(yīng)注意的問題,必須根據(jù)實際控制的需要進行研究設(shè)計,設(shè)計方案一定是合理的、可行的。否則,如果很隨意地制定一個方案,而它又存在缺陷和錯誤,那么,后續(xù)工作做得愈多,花的時間愈長,損失也愈大。本文以居民屋頂水箱液位為控制對象,給出了用8031單片機實現(xiàn)的液位控制系統(tǒng)。</p&

11、gt;<p> ?。ǘ┰O(shè)計方案的分析與確定</p><p>  2.1 設(shè)計任務(wù)與要求</p><p>  2.1.1 設(shè)計任務(wù)</p><p>  要求設(shè)計一個以8031單片機為核心的液位控制器,對居民屋頂水箱中的液位進行測量顯示并控制水位在一定高度。</p><p>  2.1.2 設(shè)計要求</p><

12、p>  居民用水作為水箱出口,無規(guī)則;水箱進水受電動水泵控制,當水位低于某給定值時,起動水泵工作,當水位達到給定值時停止水泵工作。</p><p>  當單片機系統(tǒng)故障時,可以手動控制液位,防止居民斷水引起不便。</p><p><b>  操作簡單。</b></p><p>  2.1.3 設(shè)計條件</p><p&g

13、t;  傳感器采用壓力傳感器,水箱最大深度為2米。一般將水位控制在1.6米左右。±10cm認為是合適的。</p><p>  2.1.4 設(shè)計提示</p><p>  顯示的設(shè)計:顯示液位高度需要4位數(shù)碼管,</p><p>  鍵盤的設(shè)計:能設(shè)定液位值,但必須在斷電的情況下能保存該設(shè)定值,最好用撥碼盤。</p><p>  壓力傳

14、感器輸出信號為4-20mA,量程可根據(jù)需要選擇。</p><p>  2.2 系統(tǒng)總體方案的確定</p><p>  2.2.1 系統(tǒng)框圖</p><p>  本次設(shè)計的液位控制系統(tǒng),它通過一個壓力傳感器將液位信號轉(zhuǎn)換成電流信號,再通過運算放大器轉(zhuǎn)化成合適的電壓信號輸送給AD轉(zhuǎn)換器再將數(shù)字信號送單片機,然后單片機將液位值送到數(shù)碼管輸出,居民設(shè)定液位值通過撥碼盤輸入,

15、單片機將設(shè)定值與測量值比較,控制水泵啟停。系統(tǒng)框圖如下圖所示:</p><p>  2.2.2 系統(tǒng)總體方案的初步確定</p><p>  通過對設(shè)計要求的分析,首先初步確定系統(tǒng)的工作流程。系統(tǒng)開機初始化后通過AD轉(zhuǎn)換器讀入液位的測量值。再將液位值用數(shù)碼管顯示,然后從撥碼盤中讀入用戶設(shè)定的液位值,與測量值比較,控制電機動作。然后通過循環(huán)多次調(diào)用液位顯示子程序,達到液位一直顯示的效果,同時也

16、起到了定時的作用,</p><p>  在初步確定系統(tǒng)的工作流程后,根據(jù)設(shè)計的具體要求與工作方式選擇出各部分的具體硬件。然后根據(jù)各部分硬件的性質(zhì)與設(shè)計所要達到的目的,分別完成相應(yīng)的程序。最后,將各程序整合,完成該液位控制系統(tǒng)的設(shè)計。</p><p>  在進行以上設(shè)計的同時,畫出表明各部分之間接線關(guān)系的電路原理圖。</p><p>  2.2.3 系統(tǒng)流程圖<

17、/p><p>  經(jīng)過以上分析可確定系統(tǒng)的流程圖如下:</p><p>  2.2.4 電路原理圖</p><p>  我們用Proteus軟件畫圖,下面是主電路和輔助電路。</p><p> ?。ㄈ┯布倪x擇與設(shè)計</p><p>  3.1 A/D轉(zhuǎn)換器</p><p>  A/D轉(zhuǎn)換器選用A

18、DC0809。ADC0809是帶有8位A/D轉(zhuǎn)換器、8路多路開關(guān)以及微處理機兼容的控制邏輯的CMOS組件。它是逐次逼近式A/D轉(zhuǎn)換器,可以和微機直接接口。其姐妹芯片是ADC0808,可以互相替換。</p><p>  ADC0809的內(nèi)部邏輯結(jié)構(gòu):</p><p>  ADC0809的內(nèi)部邏輯結(jié)構(gòu)如上圖所示。由上圖可以看出,ADC0809有一個8路模擬開關(guān)、一個地址鎖存與譯碼器、一個A/D

19、轉(zhuǎn)換器和一個三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個模擬通道,允許8路模擬量分時輸入,共用一個A/D轉(zhuǎn)換器進行轉(zhuǎn)換。三態(tài)輸出鎖存器用于鎖存A/D轉(zhuǎn)換完的數(shù)字量,當OE端為高電平時,才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完的數(shù)據(jù)。</p><p><b>  引腳結(jié)構(gòu):</b></p><p>  ADC0809采用雙列直插式封裝,共有28條引腳。其引腳結(jié)構(gòu)圖如下圖所示。<

20、/p><p> ?。?)IN0~IN7:8條模擬量通道 </p><p>  ADC 0809對輸入模擬量要求:信號單極性,電壓范圍是0~5v,若信號太小,必須進行放大;輸入的模擬量在轉(zhuǎn)換過程中應(yīng)該保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。</p><p> ?。?)

21、地址輸入和控制線:4條</p><p>  ALE 為地址鎖存允許輸入線,高電平有效。當ALE現(xiàn)為高電平時,地止鎖存與譯碼器將ADDA、ADDB和ADDC三條地址輸入線,用于選通IN0~IN7上的一路模擬量輸入。通道選擇如下表所示。我們只用IN0通道,所以直接將ADDA、ADDB和ADDC接地。</p><p> ?。?)數(shù)字量輸出及控制線:11條</p><p>

22、  START 為轉(zhuǎn)換啟動信號。當START上跳沿時,所有內(nèi)部寄存器清零;下跳沿時,開始進行A/D轉(zhuǎn)換;在轉(zhuǎn)換期間,START應(yīng)保持低電平。EOC位轉(zhuǎn)換結(jié)束信號。當EOC為高電平時,表明轉(zhuǎn)換結(jié)束;否則,表明正在進行A/D轉(zhuǎn)換。OE為輸出允許信號,用于控制三態(tài)輸出鎖存器向單片機輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE=1,輸出轉(zhuǎn)換得到的數(shù)據(jù);OE=0,輸出數(shù)據(jù)線呈高阻狀態(tài)。D7~D0位數(shù)字數(shù)出線。</p><p> ?。?)電源線

23、及其他:5條</p><p>  CLOCK為時鐘輸入信號線。因ADC0809的內(nèi)部沒有時鐘電路,所需時鐘信號必須有外界提供,通常使用頻率為500KHz的時鐘信號。Vcc為+5V電源線。GND為地線。Vref(+)和Vref(-)為參考電壓輸入,參考電壓用來與輸入的模擬信號進行比較,作為逐次逼近的基準。其典型去值:Vref(+)=+5v,Vref(-)=0v.</p><p><b&

24、gt;  接線圖如下圖所示:</b></p><p>  3.2 運算放大電路</p><p>  壓力傳感器把壓力信號轉(zhuǎn)換成模擬電流,當液位從0m變化到1m時,壓力傳感器輸出電流是從4mA到20mA。我們通過一個運算放大電路把4mA到20mA的電流信號轉(zhuǎn)化成0到5V的電壓信號。電路用了三個741芯片,共有三個步驟。</p><p>  第一個步驟:壓力

25、傳感器與一個250Ω的電阻串聯(lián)成回路,</p><p><b>  U0=I*R12</b></p><p><b>  U1=U0</b></p><p>  第二個步驟:用運算放大器將1到5伏的電壓信號通過減法運算轉(zhuǎn)化成0到-4伏的電壓信號,</p><p>  (U1-u)/R5=(u-U2)

26、/R7</p><p>  u=12V*R11/(R11+R6)</p><p>  第三個步驟:用一個運算放大器反相,就得到了0到5伏的電壓信號。</p><p>  U3=-U2*R9/R2</p><p><b>  3.3 存儲器擴展</b></p><p>  由于本程序用到的數(shù)據(jù)并不多

27、,內(nèi)部RAM已經(jīng)夠用了,所以就沒有擴展外部數(shù)據(jù)存儲器,我們只擴展了4K的外部程序存儲器2732。A8口到A11口接到了P2.0到P2.3,2732的片選段接到了A12上。其中還用到了地址鎖存譯碼器74LS373。</p><p><b>  接線圖如下圖:</b></p><p>  3.4 LED的連接</p><p>  我們用LED數(shù)碼管

28、來顯示液位,用到了4位的數(shù)碼管,第二位顯示小數(shù)點,顯示到小數(shù)點后二位,ABCDEFG和DP八個接口接到了P0口上,數(shù)碼管的選擇端接到了譯碼器74LS139上,這樣可以減少與單片機的連線。譯碼器的片選連在了A14上。數(shù)碼管的顯示是通過動態(tài)掃描的方式。通過A8,A9選擇四個數(shù)碼管,循環(huán)點亮,掃描的頻率很高,給人以連續(xù)顯示的效果。</p><p>  3.5 撥碼盤的設(shè)計</p><p>  我

29、們選擇撥碼盤作為用戶設(shè)定水位的輸入工具,主要是因為撥碼盤使用直觀簡單,穩(wěn)定可靠,易于操作,設(shè)定的數(shù)值斷電仍可保存。撥碼盤示意圖和原理圖如下。</p><p>  上圖是我們撥碼盤的連線圖,我們用到了兩個撥碼盤用來輸入液位的小數(shù)點后一位和兩位。撥碼盤的com端起到片選作用,連到譯碼器上。撥碼盤的1,2,4,8四個接口接到P0口的低四位上。由于在軟件中未找到撥碼盤,故未畫出,只畫出五個接線端。</p>

30、<p>  3.6 光電隔離和電機控制電路</p><p>  為了防止輸出對輸入可能產(chǎn)生的反饋和干擾,采用了光電耦合器MOC3031M,最后通過一個繼電器KM就可以控制電機的啟停。</p><p>  3.7 測量液位傳感器的選擇</p><p>  為了測量液位,我們選擇了TBP-4投入式液位變送器。</p><p>  TBP

31、-4投入式液位變送器用途和特點:</p><p>  采用進口芯片,質(zhì)量可靠,液位測量計不受外界大氣壓的影響,具有優(yōu)良的密封劑防腐性能,測量準確,長期穩(wěn)定性好。適用于很多領(lǐng)域。</p><p>  量程規(guī)格我們選擇10mH2O.主要技術(shù)指標如下表:</p><p>  存在的問題是測量的范圍小于量程的五分之一,會影響精度。</p><p> 

32、 (四)軟件功能的設(shè)計</p><p><b>  程序如下:</b></p><p><b>  ORG 0000H</b></p><p>  MAIN: MOV 30H,#00H;RAM區(qū)清零</p><p>  MOV 31H,#00H;</p><p>  MO

33、V 32H,#00H;</p><p>  MOV 33H,#00H;</p><p>  MOV 35H,#00H;</p><p>  MOV 36H,#00H;</p><p>  MOV 37H,#00H;</p><p>  MOV 38H,#00H;</p><p>  

34、MOV 40H,#00H;</p><p>  MOV 41H,#00H;</p><p>  MOV 42H,#00H;</p><p>  MOV 43H,#00H;</p><p>  MOV 44H,#00H;</p><p>  ACALL HADC;調(diào)用液位檢測子程序</p>&l

35、t;p>  ACALL DISP;調(diào)用顯示當前液位</p><p>  ACALL BMP;調(diào)用撥碼盤讀數(shù)子程序</p><p>  ACALL CONT;液位控制子程序</p><p>  LOOP1:MOV R0,#200;</p><p>  LOOP2:MOV R1,#200;</p><p>

36、  ACALL DISP;調(diào)用顯示當前液位</p><p>  DJNZ R1,LOOP2;</p><p>  DJNZ R0,LOOP1;</p><p><b>  AJMP MAIN</b></p><p><b>  ;測量液位子程序</b></p><p>

37、  HADC: MOV 31H,#00H;</p><p>  MOV 30H,#00H;</p><p>  MOV R2,#04H;采樣次數(shù)</p><p>  MOV DPTR,#7FF0H;</p><p>  HADC0:MOVX @DPTR,A;</p><p>  HADC1:JNB P3.2,

38、HADC1;查詢AD轉(zhuǎn)換結(jié)束</p><p>  MOVX A,@DPTR;</p><p><b>  CLR C;</b></p><p>  ADD A,31H;</p><p>  MOV 31H,A;</p><p>  ADDC 30H,#0;</p><

39、;p>  DJNZ R2,TADC0;</p><p>  MOV A,31H;</p><p><b>  CLR C;</b></p><p><b>  RRC A;</b></p><p><b>  CLR C;</b></p><

40、p><b>  RRC A;</b></p><p>  MOV 31H,A;</p><p>  MOV A,30H;</p><p><b>  RR A;</b></p><p><b>  RR A;</b></p><p>  

41、ADD A,31H;</p><p>  MOV 31H,A;得到平均值,存在31H中</p><p><b>  RET</b></p><p><b>  ;控制電機子程序</b></p><p>  CONT: MOV 32H,31H;液位測量值從31H中取出放入32H</p>

42、;<p>  MOV A,32H;</p><p><b>  CLR C;</b></p><p>  MOV 33H,43H;液位設(shè)定值從43H中取出放入33H</p><p>  SUBB A,33H;</p><p>  JC CONT1;若液位偏低,跳轉(zhuǎn),液位偏高則繼續(xù)執(zhí)行</p&g

43、t;<p><b>  CLR C;</b></p><p>  SUBB A,#6;偏差值與5cm相比較</p><p>  JC CONT2;過高則Cy=0,繼續(xù),否則跳轉(zhuǎn)</p><p>  SETB P1.0;關(guān)電動機</p><p>  SJMP CONT2;</p><

44、;p>  CONT1:CPL A;液位偏低情況</p><p><b>  CLR C;</b></p><p>  SUBB A,#6;偏差值與5cm相比較</p><p>  JC CONT2;過低則Cy=0,繼續(xù),否則跳轉(zhuǎn)</p><p>  CLR P1.0;開電動機</p><

45、p>  CONT2:RET;</p><p>  ;撥碼盤讀數(shù)轉(zhuǎn)化子程序</p><p>  BMP:MOV R1, #40H ;存放單元首址</p><p>  MOV R2, #DCH ;讀第一個撥碼盤數(shù),小數(shù)點后第二位</p><p><b>  MOV A, R2</b></p>

46、<p><b>  MOV P2, A</b></p><p><b>  MOV A, P0</b></p><p>  ANL A, #OFH</p><p>  MOV @R1, A</p><p><b>  INC R1</b></p>&l

47、t;p>  MOV R2, #DDH ;讀第二個撥碼盤數(shù),小數(shù)點后第一位</p><p><b>  MOV A, R2</b></p><p><b>  MOV P2, A</b></p><p><b>  MOV A, P0</b></p><p>  AN

48、L A, #0FH</p><p>  MOV @R1, A</p><p><b>  INC R1</b></p><p>  MOV R2, #DEH ;讀第三個撥碼盤數(shù),整數(shù)部分</p><p><b>  MOV A, R2</b></p><p><b

49、>  MOV P2, A</b></p><p><b>  MOV A, P0</b></p><p>  ANL A, #0FH </p><p>  MOV @R1, A</p><p><b>  CLR C</b></p><p><b&

50、gt;  SUBB A,#2</b></p><p><b>  JC BMP1</b></p><p>  MOV @R1,#2;如果整數(shù)部分大于1,則默認為2m</p><p><b>  DEC R1</b></p><p>  MOV @R1,#0</p><

51、;p><b>  DEC R1</b></p><p>  MOV @R1,#0</p><p>  BMP1:MOV A,42H</p><p>  MOV B,#100</p><p><b>  MUL AB</b></p><p><b>  MOV

52、43H,A</b></p><p><b>  MOV A,41H</b></p><p><b>  MOV B,#10</b></p><p><b>  MUL AB</b></p><p><b>  ADD A,43H</b><

53、/p><p><b>  ADD A,40H</b></p><p>  MOV 43H,A;存放0到200間的液位設(shè)定值</p><p>  ;43H*255/200</p><p>  ;43H+43H/4+43H/40</p><p>  MOV A, 43H</p><p

54、><b>  CLR C</b></p><p><b>  RRC A</b></p><p><b>  CLR C</b></p><p><b>  RRC A</b></p><p><b>  ADD A,43H</b&g

55、t;</p><p><b>  MOV 44H,A</b></p><p><b>  MOV A,43H</b></p><p><b>  MOV B,#40</b></p><p><b>  DIV AB</b></p><p

56、><b>  ADD A,43H</b></p><p><b>  ADD A,44H</b></p><p>  MOV 43H,A;液位設(shè)定值存在43H中</p><p><b>  RET</b></p><p>  ;液位顯示數(shù)碼管子程序(約50個機器周期)&

57、lt;/p><p>  DISP:MOV 35H,31H;液位測量值從31H中取出放入35H中</p><p>  MOV A,35H;</p><p>  MOV B,#200;</p><p><b>  MUL AB;</b></p><p>  MOV 36H,B;高位</p&

58、gt;<p>  MOV 37H,A;低位</p><p>  ADD A,36H;</p><p>  MOV 38H,B;</p><p>  ADDC 38H,#0;</p><p>  ADD A,#01H;</p><p>  ADDC 38H,#0;(35H)*200/255的商&

59、lt;/p><p>  MOV A,38H;</p><p>  MOV B,#100;</p><p>  DIV AB;A,B對應(yīng)百位和十個位</p><p>  ;X*200/255</p><p>  ;Y=X*200=256*36H+37H</p><p>  ;Y/255=36H+

60、(36H+37H)/255</p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p><p>  MOV P2,#B0H;</p><p>  MOV P0,A;</p><p><b>  NOP</b></p><p>

61、;<b>  NOP</b></p><p><b>  NOP</b></p><p>  MOV P2,#B1H;</p><p>  MOV P0,80H;</p><p><b>  NOP</b></p><p><b>  NO

62、P</b></p><p><b>  NOP</b></p><p><b>  MOV A,B</b></p><p>  MOV B,#10;</p><p>  DIV AB;A,B對應(yīng)十位和個位</p><p>  MOVC A,@A+DPTR<

63、;/p><p>  MOV P2,#B2H;</p><p>  MOV P0,A;</p><p><b>  NOP</b></p><p><b>  NOP</b></p><p><b>  NOP</b></p><p&g

64、t;<b>  MOV A,B</b></p><p>  MOVC A,@A+DPTR</p><p>  MOV P2,#B3H;</p><p>  MOV P0,A;</p><p><b>  NOP</b></p><p><b>  NOP<

65、/b></p><p><b>  NOP</b></p><p><b>  RET</b></p><p>  TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH</p><p><b> ?。ㄎ澹┦褂谜f明</b></

66、p><p>  一、本產(chǎn)品適用于居民用屋頂水箱,水位高度不能超過兩米。</p><p>  二、本產(chǎn)品有自動調(diào)節(jié)水位和手動調(diào)節(jié)水位兩種功能。可以通過按鈕SA在兩種功能之間進行切換。</p><p><b>  三、在自動模式下:</b></p><p>  1.用戶設(shè)定的水位值通過撥碼盤輸入。輸入單位是厘米。</p&g

67、t;<p>  2.水箱水位顯示在數(shù)碼管上,顯示數(shù)據(jù)的單位是米。</p><p>  3.實際水位和設(shè)定水位之間的差值一般不大于10cm。</p><p>  四、在手動模式下:按動按鈕SB2開啟水泵,向水箱注水,按動按鈕SB1停止向水箱注水。</p><p><b> ?。┰O(shè)計小結(jié)</b></p><p&

68、gt;  本次的機電課程設(shè)計,在得到參考題目之后,我們小組就進行了比較長時間的周密準備,對于題目的選取進行了多次的討論。最后根據(jù)本次課程的重點內(nèi)容,我們選取用單片機實現(xiàn)的液位控制系統(tǒng)作為本次設(shè)計的題目。</p><p>  在確定題目之后,我們首先對總體設(shè)計方案進行了考慮。這里,我們設(shè)計單片機每隔一定的時間采集一次數(shù)據(jù)并處理數(shù)據(jù)實現(xiàn)電機啟停。為了實現(xiàn)這個時間間隔,我們想到了兩種方法,一種是通過定時器中斷的方式來實

69、現(xiàn)。還有一種通過循環(huán)多次調(diào)用數(shù)據(jù)顯示子程序,利用執(zhí)行子程序花掉的時間來實現(xiàn)定時間隔。我們小組成員分別采用了不同的方法。我采用了第二種方法。在設(shè)計中有一些細節(jié)問題,例如傳感器輸出的電流信號怎樣轉(zhuǎn)變成合適的電壓信號,怎樣實現(xiàn)光電隔離,我們一起討論,解決了這些問題。</p><p>  然后,我們對設(shè)計的硬件進行了設(shè)計。主體單片機芯片,我參考設(shè)計要求,需用8031芯片。在液位測量實現(xiàn)上,我們選用傳感器AD590以及08

70、09芯片,作為液位的采樣以及讀取。同時,我們還選用了LED數(shù)碼管以及撥碼盤等部件。在整體硬件規(guī)劃好之后,我們開始了硬件電路圖的繪制。這里,我們使用的是Proteus軟件來實現(xiàn)。由于原來對該軟件了解不多,所以在軟件的應(yīng)用上面也下了很大的苦功夫。在電路的設(shè)計中,怎樣合理的接線也是一個很大的問題,我們不斷地進行了修改,才得到了最后的結(jié)果。</p><p>  在完成硬件電路圖以后,我們開始了軟件的設(shè)計。對于軟件的基本設(shè)

71、想是:先編寫好主程序,主程序調(diào)用數(shù)據(jù)采集,數(shù)據(jù)顯示,電機控制等子程序。再分別編寫各個子程序。在大家的努力下,通過查閱了很多資料,我們最終成功的完成了軟件的設(shè)計。至此,課程設(shè)計基本完成了。</p><p>  在這次設(shè)計中,我們相互學(xué)習(xí),共同努力,收益良多。對于單片機的知識加深了理解,在實際的應(yīng)用中鍛煉了解決問題的能力,更重要的是學(xué)到了只要不放棄努力,任何困難都能克服的人生哲理。這對與我們今后成長為合格的工程師是大

72、有裨益的。</p><p><b>  (七)致謝</b></p><p>  首先要感謝張銀橋老師這一個學(xué)期以來在這門課程上對我們的指導(dǎo)與幫助,張老師上課富有激情的講解引發(fā)了我對單片機的興趣,幫我們加深了對單片機的了解。另外,感謝小組的另外兩名成員,大家的共同合作與努力使這次課程設(shè)計任務(wù)得以圓滿完成。</p><p><b> ?。?/p>

73、八)參考文獻</b></p><p>  1.王顯正 《機電控制技術(shù)》 上海交通大學(xué)機械工程系</p><p>  2.楊居義 《單片機課程設(shè)計指導(dǎo)》 清華大學(xué)出版社</p><p>  3. 楊居義 《單片機原理與工程應(yīng)用》 清華大學(xué)出版社</p><p>  4. 李朝青 《Proteus入門實用教程》 北

74、京航空航天大學(xué)出版社</p><p>  5. 劉迎春 《傳感器原理設(shè)計與應(yīng)用》 國防科技大學(xué)出版社</p><p>  6. 沈紅衛(wèi) 《單片機應(yīng)用系統(tǒng)設(shè)計實例與分析》 北京航空航天大學(xué)出版社</p><p>  附錄:硬件定時程序:</p><p><b>  ORG 0000H</b></p>

75、<p><b>  AJMP MAIN</b></p><p><b>  ORG 000BH</b></p><p><b>  AJMP TT0</b></p><p><b>  ORG 0100H</b></p><p>  MAIN:

76、 MOV 30H,#00H;RAM區(qū)清零</p><p>  MOV 31H,#00H;</p><p>  MOV 32H,#00H;</p><p>  MOV 33H,#00H;</p><p>  MOV 35H,#00H;</p><p>  MOV 36H,#00H;</p>&l

77、t;p>  MOV 37H,#00H;</p><p>  MOV 38H,#00H;</p><p>  MOV 40H,#00H;</p><p>  MOV 41H,#00H;</p><p>  MOV 42H,#00H;</p><p>  MOV TMOD,#01H;T0工作在方式1<

78、;/p><p>  LP: MOV TL0,#0B0H;置定時器初值(定時時間50ms)</p><p>  MOV TH0,#3CH</p><p>  SETB TR0;啟動定時器0</p><p>  MOV IE,#82H;允許定時器0中斷</p><p>  MOV R5,#40;置2s循環(huán)次數(shù)<

79、;/p><p>  LOOP: ACALL DISP</p><p><b>  SJMP LOOP</b></p><p>  TT0: MOV TL0,#0B0H;重置T0初值</p><p>  MOV TH0,#3CH;</p><p>  DJNZ R5,LPP;2s到否,不到返回&l

80、t;/p><p>  ACALL HADC;調(diào)用液位檢測子程序</p><p>  ACALL DISP;調(diào)用顯示當前液位</p><p>  ACALL BMP;調(diào)用撥碼盤讀數(shù)子程序</p><p>  ACALL CONT;液位控制子程序</p><p><b>  AJMP LP</b>

81、</p><p><b>  LPP: RETI</b></p><p><b>  ;測量液位子程序</b></p><p>  HADC: MOV 31H,#00H;</p><p>  MOV 30H,#00H;</p><p>  MOV R2,#04H;采樣次

82、數(shù)</p><p>  MOV DPTR,#7FF0H;</p><p>  HADC0:MOVX @DPTR,A;</p><p>  HADC1:JNB P3.2,HADC1;查詢AD轉(zhuǎn)換結(jié)束</p><p>  MOVX A,@DPTR;</p><p><b>  CLR C;</b&

83、gt;</p><p>  ADD A,31H;</p><p>  MOV 31H,A;</p><p>  ADDC 30H,#0;</p><p>  DJNZ R2,TADC0;</p><p>  MOV A,31H;</p><p><b>  CLR C;&l

84、t;/b></p><p><b>  RRC A;</b></p><p><b>  CLR C;</b></p><p><b>  RRC A;</b></p><p>  MOV 31H,A;</p><p>  MOV A,30

85、H;</p><p><b>  RR A;</b></p><p><b>  RR A;</b></p><p>  ADD A,31H;</p><p>  MOV 31H,A;得到平均值,存在31H中</p><p><b>  RET</b

86、></p><p><b>  ;控制電機子程序</b></p><p>  CONT: MOV 32H,31H;液位測量值從31H中取出放入32H</p><p>  MOV A,32H;</p><p><b>  CLR C;</b></p><p>  M

87、OV 33H,42H;液位設(shè)定值從42H中取出放入33H</p><p>  SUBB A,33H;</p><p>  JC CONT1;若液位偏低,跳轉(zhuǎn),液位偏高則繼續(xù)執(zhí)行</p><p><b>  CLR C;</b></p><p>  SUBB A,#13;偏差值與5cm相比較</p>&

88、lt;p>  JC CONT2;過高則Cy=0,繼續(xù),否則跳轉(zhuǎn)</p><p>  SETB P1.0;關(guān)電動機</p><p>  SJMP CONT2;</p><p>  CONT1:CPL A;液位偏低情況</p><p><b>  CLR C;</b></p><p>

89、  SUBB A,#13;偏差值與5cm相比較</p><p>  JC CONT2;過低則Cy=0,繼續(xù),否則跳轉(zhuǎn)</p><p>  CLR P1.0;開電動機</p><p>  CONT2:RET;</p><p>  ;撥碼盤讀數(shù)轉(zhuǎn)化子程序</p><p>  BMP:MOV R1, #40H ;

90、存放單元首址</p><p>  MOV R2, #BCH ;讀第一個撥碼盤數(shù),小數(shù)點后第二位</p><p><b>  MOV A, R2</b></p><p><b>  MOV P2, A</b></p><p><b>  MOV A, P0</b></

91、p><p>  ANL A, #OFH</p><p>  MOV @R1, A</p><p><b>  INC R1</b></p><p>  MOV R2, #BEH ;讀第二個撥碼盤數(shù),小數(shù)點后第一位</p><p><b>  MOV A, R2</b><

92、;/p><p><b>  MOV P2, A</b></p><p><b>  MOV A, P0</b></p><p>  ANL A, #0FH</p><p>  MOV @R1, A</p><p>  MOV A, 41H</p><p>

93、<b>  MOV B,#51</b></p><p><b>  MUL AB</b></p><p><b>  CLR C</b></p><p><b>  RRC A</b></p><p><b>  ADD A,40H</b&

94、gt;</p><p><b>  ADD A,40H</b></p><p><b>  MOV 42H,A</b></p><p><b>  MOV A,40H</b></p><p><b>  CLR C</b></p><p

95、><b>  RRC A</b></p><p><b>  ADD A,42H</b></p><p>  MOV 42H,A;液位設(shè)定值存在42H中</p><p><b>  RET</b></p><p>  ;液位顯示數(shù)碼管子程序</p><

96、;p>  DISP:MOV P2,#B0H;</p><p>  MOV P0,06H;</p><p><b>  NOP</b></p><p>  MOV P2,#B1H;</p><p>  MOV P0,80H;</p><p><b>  NOP</b&g

97、t;</p><p>  MOV 35H,31H;液位測量值從31H中取出放入35H中</p><p>  MOV A,35H;</p><p>  MOV B,#100;</p><p><b>  MUL AB;</b></p><p>  MOV 36H,B;高位</p>

98、;<p>  MOV 37H,A;低位</p><p>  ADD A,36H;</p><p>  MOV 38H,B;</p><p>  ADDC 38H,#0;</p><p>  ADD A,#01H;</p><p>  ADDC 38H,#0;(35H)*100/255的商<

99、;/p><p>  MOV A,38H;</p><p>  MOV B,#10;</p><p>  DIV AB;A,B對應(yīng)十位和個位</p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p><p>  MOV P2,#B2H;</

100、p><p>  MOV P0,A;</p><p><b>  NOP</b></p><p><b>  MOV A,B</b></p><p>  MOVC A,@A+DPTR</p><p>  MOV P2,#B3H;</p><p>  MO

101、V P0,A;</p><p><b>  NOP</b></p><p><b>  RET</b></p><p>  TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH</p><p><b>  程序解釋:</b></

102、p><p><b>  *100/255</b></p><p><b>  *20/51</b></p><p><b>  X*100/255</b></p><p>  Y=X*100=256*36H+37H</p><p>  Y/255=36H+(

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論