版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 本單片機系統(tǒng)設(shè)計的目的是應(yīng)用單片機控制技術(shù),以8051單片機為核心控制</p><p> 慶豐熱電公司的800立方米的水箱的水位,并實現(xiàn)了報警和手動、自動切換功能。</p><p> 該系統(tǒng)操作方便、性能良好,比較符合電廠生產(chǎn)用水系統(tǒng)控制的需要。本文還詳</p&
2、gt;<p> 細的給出了相關(guān)的硬件框圖和軟件流程圖,并編制了該匯編語言程序。</p><p> 關(guān)鍵詞: 單片機 水位 </p><p><b> 控制 報警</b></p><p><b> 目 錄</b></p><p> 摘 要……………
3、…………………………………………………………………1</p><p> 目 錄………………………………………………………………………………2</p><p> 單片機的說明……………………………………………………………………3</p><p> 1、8051單片機簡介……………………………………………………………3</p><p>
4、; 2、單片機的時序…………………………………………………………………5</p><p> 3、引腳極其功能…………………………………………………………………6</p><p> 二、水箱給水設(shè)備系統(tǒng)的構(gòu)成………………………………………………………10</p><p> 三、本系統(tǒng)8051單片機控制部分……………………………………………………12</p
5、><p> 四、本系統(tǒng)的工作原理………………………………………………………………13</p><p> 五、主程序框圖………………………………………………………………………14</p><p> 六、本系統(tǒng)程序清單…………………………………………………………………17</p><p> 七、附錄:本系統(tǒng)電路圖………………………………………
6、……………………21</p><p> 一 8051單片機系統(tǒng)說明</p><p> 1. 8051單片機簡介</p><p> 目前,8051單片機在工業(yè)檢測領(lǐng)域中得到了廣泛的應(yīng)用,因此我們可以在許多單片機應(yīng)用領(lǐng)域中,配接各種類型的語音接口,構(gòu)成具有合成語音輸出能力的綜合應(yīng)用系統(tǒng),以增強人機對話的功能。89C51是Intel公司生產(chǎn)的一種單片機,在一小塊
7、芯片上集成了一個微型計算機的各個組成部分。每一個單片機包括:一個8位的微型處理器CPU;一個256K的片內(nèi)數(shù)據(jù)存儲器RAM;片內(nèi)程序存儲器ROM;四個8位并行的I/O接口P0-P3,每個接口既可以輸入,也可以輸出;兩個定時器/記數(shù)器;五個中斷源的中斷控制系統(tǒng);一個全雙工UART的串行I/O口;片內(nèi)振蕩器和時鐘產(chǎn)生電路,但石英晶體和微調(diào)電容需要外接。最高允許振蕩頻率是12MHZ。以上各個部分通過內(nèi)部總線相連接。下面簡單介紹下其各個部分的功
8、能。</p><p> 中央處理器CPU是單片微型計算機的指揮、執(zhí)行中心,由它讀人用戶程序,并逐條執(zhí)</p><p> 行指令,它是由8位算術(shù)/邏輯運算部件(簡稱ALu)、定時/控制部件,若干寄存器A、B、</p><p> B5w、5P以及16位程序計數(shù)器(Pc)和數(shù)據(jù)指針寄存器(DM)等主要部件組成。算術(shù)邏輯單元的硬件結(jié)構(gòu)與典型微型機相似。它具有對8位信息
9、進行+、-、x、/ 四則運算和邏輯與、或、異或、取反、清“0”等運算,并具有判跳、轉(zhuǎn)移、數(shù)據(jù)傳送等功能,此外還提供存放中間結(jié)果及常用數(shù)據(jù)寄存器??刂破鞑考怯芍噶罴拇嫫?、程序計數(shù)器Pc、定時與控制電路等組成的。指令寄存器中存放指令代碼。枷執(zhí)行指令時,從程序存儲器中取來經(jīng)譯碼器譯碼后,根據(jù)不同指令由定時與控制電路發(fā)出相應(yīng)的控制信號,送到存儲器、運算器或I/o接口電路,完成指令功能。程序計數(shù)器Pc 程序計數(shù)器Pc用來存放下一條將要執(zhí)行的指
10、令,共16位.可對以K字節(jié)的程序存儲器直接尋址c指令執(zhí)行結(jié)束后,Pc計數(shù)器自動增加,指向下一條要執(zhí)行的指令地址。</p><p> CPU功能,總的來說是以不同的方式,執(zhí)行各種指令。不同的指令其功自略異。有的指令涉及到枷各寄存器之間的關(guān)系;有的指令涉及到單片機核心電路內(nèi)部各功能部件的關(guān)</p><p> 系;有的則與外部器件如外部程序存儲器發(fā)生聯(lián)系。事實上,cRJ是通過復(fù)雜的時序電路完
11、</p><p> 成不同的指令功能。所謂cRJ的時序是指控制器控照指今功能發(fā)出一系列在時間上有一定</p><p> 次序的信號,控制和啟動一部分邏輯電路,完成某種操作。</p><p><b> 2. 時序</b></p><p> 1.時鐘電路 M田—51片內(nèi)設(shè)有一個由反向放大器所構(gòu)成的振蕩電路,XTAL
12、I和XTAL2分別為振蕩電路的輸入端和輸出端。時鐘可以由內(nèi)部方式產(chǎn)生或外部方式產(chǎn)生。采用內(nèi)部方式時,在C1和C2引腳上接石英晶體和微調(diào)電容可以構(gòu)成振蕩器, 振蕩頻率的選擇范圍為1.2—12MHZ在使用外部時鐘時,XTAL2用來輸入外部時鐘信號,而XTALI接地。</p><p> 2.時序 MGL5l單片機的一個執(zhí)器周期由6個狀態(tài)(s1—s6)組成,每個狀態(tài)又持續(xù)2</p><p>
13、 個接蕩周期,分為P1和P2兩個節(jié)拍。這樣,一個機器周期由12個振蕩周期組成。若采用</p><p> 12MHz的晶體振蕩器,則每個機器周期為1us,每個狀態(tài)周期為1/6us;在一數(shù)情況下,算術(shù)和邏輯操作發(fā)生在N期間,而內(nèi)部寄存器到寄存器的傳輸發(fā)生在P2期間。對于單周期指令,當指令操作碼讀人指令寄存器時,使從S1P2開始執(zhí)行指令。如果是雙字節(jié)指令,則在同一機器周期的s4讀人第二字節(jié)。若為單字節(jié)指令,則在51期
14、間仍進行讀,但所讀入的字節(jié)操作碼被忽略,且程序計數(shù)據(jù)也不加1。在加結(jié)束時完成指令操作。多數(shù)Mcs—51指令周期為1—2個機器周期,只有乘法和除法指令需要兩個以上機器周期的指令,它們需4個機器周期。 對于雙字節(jié)單機器指令,通常是在一個機器周期內(nèi)從程序存儲器中讀人兩個字節(jié),但Movx指令例外,Movx指令是訪問外部數(shù)據(jù)存儲器的單字節(jié)雙機器周期指令,在執(zhí)行Movx指令期間,外部數(shù)據(jù)存儲器被訪問且被選通時跳過兩次取指操作。下面是51單片機的振蕩
15、電路圖:</p><p><b> 3.引腳極其功能</b></p><p> MCS—51系列單片機的40個引腳中有2個專用于主電源引腳,2個外接晶振的引腳,4個控制或與其它電源復(fù)用的引腳,以及32條輸入輸出I/O引腳。</p><p> 下面按引腳功能分為4個部分敘述個引腳的功能。</p><p> 電源引腳
16、Vcc和Vss</p><p> Vcc(40腳):接+5V電源正端;</p><p> Vss(20腳):接+5V電源正端。</p><p> 外接晶振引腳XTAL1和XTAL2</p><p> XTAL1(19腳):接外部石英晶體的一端。在單片機內(nèi)部,它是一個反相放大器的輸入端,這個放大器構(gòu)成采用外部時鐘時,對于HMOS單片機,
17、該引腳接地;對于CHOMS單片機,該引腳作為外部振蕩信號的輸入端。</p><p> XTAL2(18腳):接外部晶體的另一端。在單片機內(nèi)部,接至片內(nèi)振蕩器的反相放大器的輸出端。當采用外部時鐘時,對于HMOS單片機,該引腳作為外部振蕩信號的輸入端。對于CHMOS芯片,該引腳懸空不接。</p><p> 控制信號或與其它電源復(fù)用引腳</p><p> 控制信號或
18、與其它電源復(fù)用引腳有RST/VPD、ALE/P、PSEN和EA/VPP等4種形式。</p><p> ?。ˋ).RST/VPD(9腳):RST即為RESET,VPD為備用電源,所以該引腳為單片機的上電復(fù)位或掉電保護端。當單片機振蕩器工作時,該引腳上出現(xiàn)持續(xù)兩個機器周期的高電平,就可實現(xiàn)復(fù)位操作,使單片機復(fù)位到初始狀態(tài)。</p><p> 當VCC發(fā)生故障,降低到低電平規(guī)定值或掉電時,該引
19、腳可接上備用電源VPD(+5V)為內(nèi)部RAM供電,以保證RAM中的數(shù)據(jù)不丟失。</p><p> (B).ALE/ P (30腳):當訪問外部存儲器時,ALE(允許地址鎖存信號)以每機器周期兩次的信號輸出,用于鎖存出現(xiàn)在P0口的低</p><p> ?。–).PSEN(29腳):片外程序存儲器讀選通輸出端,低電平有效。當從外部程序存儲器讀取指令或常數(shù)期間,每個機器周期PESN兩次有效,以
20、通過數(shù)據(jù)總線口讀回指令或常數(shù)。當訪問外部數(shù)據(jù)存儲器期間,PESN信號將不出現(xiàn)。</p><p> (D).EA/Vpp(31腳):EA為訪問外部程序儲器控制信號,低電平有效。當EA端保持高</p><p> 電平時,單片機訪問片內(nèi)程序存儲器4KB(MS—52子系列為8KB)。若超出該范圍時,自動轉(zhuǎn)去執(zhí)行外部程序存儲器的程序。當EA端保持低電平時,無論片內(nèi)有無程序存儲器,均只訪問外部程序
21、存儲器。對于片內(nèi)含有EPROM的單片機,在EPROM編程期間,該引腳用于接21V的編程電源Vpp。</p><p> 4.輸入/輸出(I/O)引腳P0口、P1口、P2口及P3口</p><p> (A).P0口(39腳~22腳):P0.0~P0.7統(tǒng)稱為P0口。當不接外部存儲器與不擴展I/O接口時,它可作為準雙向8位輸入/輸出接口。當接有外部程序存儲器或擴展I/O口時,P0口為地址/數(shù)
22、據(jù)分時復(fù)用口。它分時提供8位雙向數(shù)據(jù)總線。</p><p> 對于片內(nèi)含有EPROM的單片機,當EPROM編程時,從P0口輸入指令字節(jié),而當檢驗程序時,則輸出指令字節(jié)。</p><p> (B).P1口(1腳~8腳):P1.0~P1.7統(tǒng)稱為P1口,可作為準雙向I/O接口使用。對于MCS—52子系列單片機,P1.0和P1.1還有第2功能:P1.0口用作定時器/計數(shù)器2的計數(shù)脈沖輸入端T
23、2;P1.1用作定時器/計數(shù)器2的外部控制端T2EX。對于EPROM編程和進行程序校驗時,P0口接收輸入的低8位地址。</p><p> (C).P2口(21腳~28腳):P2.0~P2.7統(tǒng)稱為P2口,一般可作為準雙向I/O接口。當接有外部程序存儲器或擴展I/O接口且尋址范圍超過256個字節(jié)時,P2口用于高8位地址總線送出高8位地址。對于EPROM編程和進行程序校驗時,P2口接收輸入的8位地址。</p&
24、gt;<p> (D).P3口(10腳~17腳):P3.0~P3.7統(tǒng)稱為P3口。它為雙功能口,可以作為一般的準雙向I/O接口,也可以將每1位用于第2功能,而且P3口的每一條引腳均可獨立定義為第1功能的輸入輸出或第2功能。P3口的第2功能見下表</p><p> 單片機P3.0管腳含義</p><p> 綜上所述,MCS—51系列單片機的引腳作用可歸納為以下兩點:<
25、;/p><p> 1).單片機功能多,引腳數(shù)少,因而許多引腳具有第2功能;</p><p> 2).單片機對外呈3總線形式,由P2、P0口組成16位地址總線;由P0口分時復(fù)用作為數(shù)據(jù)總線。</p><p> 附:89C51的管腳如圖</p><p> 二 800立方米水箱給水設(shè)備系統(tǒng)的構(gòu)成</p><p> 80
26、0立方米由兩臺給水泵機組、水箱和三只浮球開關(guān)組成,其系統(tǒng)結(jié)構(gòu)如圖:</p><p> 其中M1、M2為給水泵機組,LG、LD、LDD分別為水位高、水位低、水位低低浮球開關(guān),當水位高(大于90開度)時,LG閉合,當水位低(小于75開度)時,LD閉合,當水位低低(小于50開度)時,LDD閉合。</p><p> 800立方米水箱的控制器由8051系統(tǒng)構(gòu)成。為避免電機的起停和電源波動時對電路
27、的影響,輸入輸出均采用光電隔離。輸出通過繼電器,控制水泵機組的起停和報警,其電路圖如下:</p><p> 給水泵電機主控回路圖如下:</p><p> 三 本系統(tǒng)8051單片機控制部分結(jié)構(gòu)</p><p> 本系統(tǒng)采用8051單片機,引腳具體控制如下:</p><p> P1口和P3口為輸入輸出檢測信號和控制信號。下面是8051芯
28、片引腳具體分配:</p><p> P1.0:水位低低輸入信號。(低0 高1)</p><p> P1.1:水位低輸入信號。(低0 高1)</p><p> P1.2:水位高輸入信號。(高1,低0)</p><p> P1.3:手動與自動轉(zhuǎn)換輸入信號。(手動1,自動0)</p><p> P1.4:M1起
29、動KM1控制輸出信號。(手動1,自動0)</p><p> P1.5:M2起動KM1控制輸出信號。(手動1,自動0)</p><p> P1.6:M1開關(guān)狀態(tài)輸入信號。(開0,關(guān)1)</p><p> P1.7:M2開關(guān)狀態(tài)輸入信號。(開0,關(guān)1)</p><p> P3.0:水位低低報警輸出信號。</p><p&
30、gt; P3.1:水位低報警輸出信號。</p><p> P3.2:水位高報警輸出信號。</p><p> P3.4:手動起動M1輸入信號,低電頻有效動作。</p><p> P3.5:手動起動M2輸入信號,低電頻有效動作。</p><p> P3.6:手動停M1輸入信號,低電頻有效動作。</p><p>
31、 P3.7:手動停M2輸入信號,低電頻有效動作。</p><p> 四 本系統(tǒng)的工作原理</p><p> 當水箱水位低時,起動M1、M2給水,水位上升到90%,停M1。當水箱水位低低(小于50%)時,同時起動M1、M2,當水位上升到50%以上70%以下時,停M2,M1繼續(xù)運行到水位上升到90%以上才停止工作。經(jīng)過調(diào)試系統(tǒng),測得以下數(shù)據(jù):水位從50%--70%,兩臺泵運行需要約10分
32、鐘;水位從70%--90%,一臺泵運行需要約15分鐘。水箱的水位一般保持在70%--90%。</p><p><b> 報警控制如下:</b></p><p> 當水位高與90開度的時候,由傳感器經(jīng)變送器發(fā)送信號,LG閉合,系統(tǒng)水位高報警。當水位低于75開度的時候,由傳感器經(jīng)變送器發(fā)送信號,LD閉合,系統(tǒng)水位低報警。當水位低與50開度的時候,由傳感器經(jīng)變送器發(fā)送信
33、號,LDD閉合,系統(tǒng)水位低低報警。手動/自動模式轉(zhuǎn)換控制如下:全自動模式下,系統(tǒng)自動判斷水位的狀況,選擇不同的工作狀態(tài)。在手動的模式下,兩臺給水泵的運行控制可由人工自己操作。</p><p><b> 五 主程序框圖</b></p><p><b> 1 主程序框圖</b></p><p> 2 自動模式子程序:&
34、lt;/p><p> 3 手動模式子程序:</p><p> 六 本系統(tǒng)程序清單</p><p><b> 主程序:</b></p><p><b> ORG 0000H</b></p><p><b> AJMP MAIN</b></p
35、><p><b> ORG 0060H</b></p><p> MAIN: MOV P1, #FFH ; P1 P3口初始化置1</p><p> MOV P3,#FFH</p><p> JNB P1.3 , AVT ; 若手動在自動位置,跳到自動模式子程序</p>&
36、lt;p> AJMP MEN ;否則轉(zhuǎn)到手動模式子程序</p><p><b> END</b></p><p> AUT: NOP(空命令)</p><p> JNB P1.2 , LG ;水位高—LG</p><p> JB P1.1 LD
37、, ;水位沒低---LD</p><p> CLR P3.1 ;水位低報警</p><p> JB P1.0, LDD ;水位未低低---LDD</p><p> CLR P3.0 ;水位低低報警</p><p> JNB 3.1 P1
38、.6, Y1 ;M1已啟動—Y1</p><p> CLR P1.4 ;否則啟動M1</p><p> Y1:JNB P1.7 ,Y2 ; M2已啟動---Y2</p><p> CLR P1.5 ;否則啟動M2</p><p> Y2:ACALL DELA
39、Y ;延時1分鐘</p><p> AJMP AUT ;返回自動模式</p><p> LDD: JNB P1.6 ,Y3 ; 單獨運行M1(LDD〈水位〈LD)</p><p><b> CLR P1.4</b></p><p> Y3: JB P1.7 Y2</p><p>
40、<b> SETB P1.5</b></p><p><b> AJMP Y2</b></p><p> LG:CLR P3.2 ;水位高報警</p><p> LD:AJMP MAIN ;返回主程序</p><p><b> 手動控制子程序</b>
41、;</p><p><b> MEN:NOP</b></p><p> JNB P1.1 , MAIN ;</p><p> ACALL KEY</p><p> CJNE A ,#FOH,NN ;</p><p> AJMP MEN</p><p>
42、; NN:JNB ACC.4 ,HM1</p><p> JNB ACC.5, HM2</p><p> JNB ACC.6 ,DM1</p><p> JNB ACC.7 ,DM2</p><p><b> AJMP MEN</b></p><p> HM1: JNB P
43、1.6 ,MEN</p><p><b> CLR P1.4</b></p><p><b> AJMP MEN</b></p><p> HM2:JNBP1.7, MEN </p><p><b> CLR P1.5</b></p><p>
44、;<b> AJMP MEN</b></p><p> DM1:JB P1.6, MEN</p><p> SETB P1.4</p><p><b> AJMP MEN</b></p><p> DM2:JB P1.7, MEN</p><p> SETB
45、 P1.5</p><p><b> AJMP MEN</b></p><p><b> RET</b></p><p><b> 延時1S主程序</b></p><p> T1M1: MOV R1, #F0H</p><p> L4:
46、 MOV R2, #08H</p><p> L1: MOV R3, #FAH</p><p> L2: MOV R4, #FAH</p><p> L1: DJNZ R4, L1</p><p> DJNZ R3, L2</p><p> DJNZ R2,
47、L3</p><p> DJNZ R1, L4</p><p><b> RET</b></p><p><b> 延時6ms子程序</b></p><p> T1M3: MOV R4, #12</p><p> MM: MOV R5, #248&l
48、t;/p><p> DJN2 R5, $</p><p> DJN2 R4, D3</p><p><b> RET</b></p><p><b> 有無鍵合子程序:</b></p><p> KEY:ACALL KS1 ;有無閉合</p&
49、gt;<p><b> JNZ LK1</b></p><p> ACALL TIM</p><p> AJMP KEY ;無鍵閉合返回</p><p> LK1:ACALL TIM</p><p> ACALL TIM</p><p>
50、 ACALL KS1</p><p><b> JNZ LK2</b></p><p> ACALL TIM</p><p> AJMP KEY</p><p><b> LK2:RET</b></p><p> KS1:MOV A , P3
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 水箱液位控制畢業(yè)設(shè)計
- 水箱液位控制畢業(yè)設(shè)計
- 畢業(yè)設(shè)計--水箱液位控制設(shè)計
- 水箱水位控制系統(tǒng)設(shè)計方案
- 水位控制系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)設(shè)計----水位控制器設(shè)計
- 水箱溫度控制系統(tǒng)畢業(yè)設(shè)計
- 基于模糊邏輯的水箱水位控制【畢業(yè)論文】
- plc水箱液位控制 畢業(yè)設(shè)計
- 水塔水位自動控制畢業(yè)設(shè)計
- 畢業(yè)設(shè)計----水塔水位控制系統(tǒng)
- 畢業(yè)設(shè)計--水塔水位控制系統(tǒng)設(shè)計
- mcgs水位控制系統(tǒng)畢業(yè)設(shè)計
- 單片機控制水位畢業(yè)設(shè)計
- 畢業(yè)設(shè)計--鍋爐水位控制系統(tǒng)設(shè)計
- 智能水位控制系統(tǒng)設(shè)計畢業(yè)設(shè)計
- 小區(qū)水箱自能控制系統(tǒng)畢業(yè)設(shè)計
- 水箱液位控制系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)設(shè)計---水塔水位控制系統(tǒng)設(shè)計
- 畢業(yè)設(shè)計---鍋爐水位控制系統(tǒng)設(shè)計
評論
0/150
提交評論