顯示氣壓沖擊頻率和耗氣量多功能數(shù)顯表_第1頁(yè)
顯示氣壓沖擊頻率和耗氣量多功能數(shù)顯表_第2頁(yè)
顯示氣壓沖擊頻率和耗氣量多功能數(shù)顯表_第3頁(yè)
顯示氣壓沖擊頻率和耗氣量多功能數(shù)顯表_第4頁(yè)
顯示氣壓沖擊頻率和耗氣量多功能數(shù)顯表_第5頁(yè)
已閱讀5頁(yè),還剩63頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、引言本畢業(yè)設(shè)計(jì)的設(shè)計(jì)任務(wù)為一個(gè)多功能數(shù)顯表。該數(shù)顯表可以測(cè)量和顯示氣壓、沖擊頻率和耗氣量。并且具有RS232接口和時(shí)間顯示。本畢業(yè)設(shè)計(jì)作品選用AK-4氣壓傳感器和LWGY渦輪流量傳感器,通過(guò)MCS-51單片機(jī)來(lái)控制操作,實(shí)現(xiàn)信號(hào)數(shù)據(jù)的采集、處理和發(fā)送。本畢業(yè)設(shè)計(jì)作品不僅可以將氣壓、沖擊頻率、耗氣量及時(shí)間等數(shù)據(jù)顯示在8個(gè)LED數(shù)碼管上,還會(huì)通過(guò)RS232串口,將數(shù)據(jù)發(fā)送到PC上。并由PC上的配套程序,將信息數(shù)據(jù)顯示在顯示器上,這兩部分所顯示的數(shù)據(jù)是完全相同的。其中數(shù)字顯示時(shí)間單位為秒,沖擊頻率的單位為BMP,耗氣量的單位為立方米/小時(shí)。同時(shí),系統(tǒng)會(huì)自動(dòng)計(jì)時(shí),開(kāi)始運(yùn)行3分鐘之后,自動(dòng)結(jié)束測(cè)量、顯示

2、,并保存信息數(shù)據(jù)。下面就將對(duì)本畢業(yè)設(shè)計(jì)作品進(jìn)行詳細(xì)的介紹。1. 設(shè)計(jì)任務(wù)1.1 任務(wù)說(shuō)明本畢業(yè)設(shè)計(jì)的課題為多功能數(shù)顯表。設(shè)計(jì)的主要任務(wù)為設(shè)計(jì)一個(gè)多功能數(shù)顯表,該數(shù)顯表可以測(cè)量和顯示氣壓、沖擊頻率和耗氣量。而且還要有RS232接口和時(shí)間顯示。對(duì)于本次畢業(yè)設(shè)計(jì)的任務(wù)還有以下的要求。首先,要采用AK-4氣壓傳感器和LWGY渦輪流量傳感器來(lái)采集信息數(shù)據(jù)。其次,要采用MCS51單片機(jī)來(lái)完成系統(tǒng)的控制,要求制作單片機(jī)控制系統(tǒng)、驅(qū)動(dòng)電路、A/D轉(zhuǎn)換、顯示電路以及測(cè)量電路。再次,系統(tǒng)的電源要求采用220V供電。然后,還要求在測(cè)量開(kāi)始時(shí),開(kāi)始計(jì)時(shí),3分鐘后自動(dòng)結(jié)束測(cè)量并保存數(shù)據(jù)。而且,RS232的波特率為480

3、0。最后,規(guī)定了數(shù)字顯示數(shù)據(jù)的內(nèi)容和單位:時(shí)間(秒)、沖擊頻率(BMP)、耗氣量(立方米/小時(shí))。1.2 任務(wù)分析根據(jù)本次畢業(yè)設(shè)計(jì)的課題和設(shè)計(jì)的主要任務(wù),我們可以知道,要設(shè)計(jì)的系統(tǒng)的主要功能就是對(duì)氣壓、沖擊頻率和耗氣量的測(cè)量和顯示。要完成對(duì)氣壓、沖擊頻率和耗氣量的測(cè)量,就必須要用到傳感器。根據(jù)設(shè)計(jì)任務(wù)的具體要求,就可以知道:AK-4氣壓傳感器很明顯是用來(lái)測(cè)量氣體氣壓的傳感器,它的輸出信號(hào)就是數(shù)顯表要顯示的沖擊頻率和氣壓數(shù)據(jù)的信息來(lái)源;LWGY渦輪流量傳感器則應(yīng)該是數(shù)顯表顯示的耗氣量數(shù)據(jù)的信息來(lái)源。但在這其中需要要注意的問(wèn)題就是,兩個(gè)傳感器的輸出信號(hào)的類(lèi)型不一定能夠直接傳送到MCS-51單片機(jī)去

4、處理。那么,就要弄清楚各自的輸出信號(hào)的類(lèi)型,然后分別設(shè)計(jì)出信號(hào)的處理電路,將它們轉(zhuǎn)換成MCS-51單片機(jī)可以接受的信號(hào)。否則,MCS-51單片機(jī)可能根本接收不到數(shù)據(jù),或接收到的數(shù)據(jù)中的信息并不是我們所需要的。還有一個(gè)主要功能就是對(duì)氣壓、沖擊頻率和耗氣量的顯示功能。數(shù)據(jù)的顯示部分,我們只需要擴(kuò)展出幾個(gè)LED數(shù)碼管,就可以將數(shù)據(jù)信息很好的顯示出來(lái)。要實(shí)現(xiàn)這個(gè)功能,首先,就要有驅(qū)動(dòng)電路來(lái)驅(qū)動(dòng)LED數(shù)碼管,讓LED數(shù)碼管有顯示數(shù)據(jù)的必要條件;其次,還要有需要顯示的信息數(shù)據(jù),這些數(shù)據(jù)就要來(lái)源于MCS-51單片機(jī),MCS-51單片機(jī)提供這些信息數(shù)據(jù)之前,要對(duì)傳感器傳輸過(guò)來(lái)的信息做好轉(zhuǎn)換處理,來(lái)保證信息的準(zhǔn)

5、確性和可靠性。這個(gè)部分需要注意的問(wèn)題是,系統(tǒng)要擴(kuò)展出多個(gè)LED數(shù)碼管,要處理好信息傳輸?shù)臅r(shí)序,以保證LED數(shù)碼管得到的數(shù)據(jù)信息,與我們想要它們顯示的信息是一致的。這就需要有MCS-51單片機(jī)要發(fā)出一個(gè)選定使能信號(hào),每次只有一個(gè)LED數(shù)碼管是接收和顯示數(shù)據(jù)年的。MCS-51單片機(jī)循環(huán)選定一遍所有LED數(shù)碼管,就可以很好的完成一次完整的數(shù)據(jù)顯示過(guò)程。但是,這個(gè)過(guò)程的處理時(shí)間是很快的,很難讓人眼的視覺(jué)有滯留的感覺(jué)。所以,要讓LED數(shù)碼管有滿(mǎn)意的顯示效果,就必須加上數(shù)據(jù)的鎖存,讓LED數(shù)碼管得到數(shù)據(jù)信息后可以一直顯示收到的信息,直到下一次數(shù)據(jù)傳輸過(guò)來(lái)的時(shí)候,數(shù)據(jù)就會(huì)被刷新,這樣就可以很好的實(shí)現(xiàn)這個(gè)功能

6、了。而至于時(shí)間的顯示,我們可以通過(guò)MCS-51單片機(jī)的計(jì)時(shí)器功能來(lái)實(shí)現(xiàn)。系統(tǒng)還有一個(gè)功能就是要有RS232串行通訊接口連接到PC。MCS-51單片機(jī)本身就有串行通訊的功能,也有專(zhuān)用的串行通訊的引腳和串行通訊控制器。所以,在完成這部分功能方面,MCS-51單片機(jī)自己就可以完全勝任這個(gè)部分的工作,要實(shí)現(xiàn)這個(gè)功能也就比較容易了。這個(gè)部分需要注意的問(wèn)題就是,MCS-51單片機(jī)的電平標(biāo)準(zhǔn)和PC的電平標(biāo)準(zhǔn)是不一致的,要進(jìn)行串行通訊的時(shí)候,MCS-51的串行通訊接口和PC串行通訊接口要有電平轉(zhuǎn)換電路來(lái)為信息通訊做橋梁,以保證信息傳送的有效性。否則,就會(huì)有部分電路被燒掉的危險(xiǎn),因此要特別注意這個(gè)問(wèn)題。以上是完

7、成設(shè)計(jì)主要任務(wù)而對(duì)要設(shè)計(jì)的系統(tǒng)的硬件電路方面的任務(wù)的分析,此外,系統(tǒng)的軟件方面也是不容忽視的。因?yàn)?,本次要設(shè)計(jì)的系統(tǒng)的功能任務(wù)比較多,所以,MCS-51單片機(jī)的處理任務(wù)也比較繁重,系統(tǒng)軟件的算法也就直接影響到系統(tǒng)運(yùn)行的穩(wěn)定性。系統(tǒng)的軟件算法要充分考慮到任務(wù)性質(zhì)的主次和特點(diǎn),安排好任務(wù)的處理順序和條理。要充分利用好中斷服務(wù)功能,來(lái)滿(mǎn)足系統(tǒng)處理要求,來(lái)很好的實(shí)現(xiàn)設(shè)計(jì)任務(wù)中所要求的功能和效果。其中需要注意的問(wèn)題是,當(dāng)算法設(shè)計(jì)中涉及到兩個(gè)或多個(gè)中斷服務(wù)的時(shí)候,一定要根據(jù)中斷程序所服務(wù)的中斷功能,來(lái)設(shè)置好中斷的優(yōu)先級(jí)。否則,會(huì)帶來(lái)系統(tǒng)穩(wěn)定的很大隱患,因此,要特別注意這方面的細(xì)節(jié)問(wèn)題。綜上所述,本次畢業(yè)設(shè)

8、計(jì)的任務(wù)的特點(diǎn)為系統(tǒng)工作量比較大,但任務(wù)功能的實(shí)現(xiàn)方面沒(méi)有難度性很高的功能。但是,要想設(shè)計(jì)出來(lái)的系統(tǒng)可以穩(wěn)定、可靠得實(shí)現(xiàn)出設(shè)計(jì)任務(wù)要求的任務(wù),有很多的細(xì)節(jié)問(wèn)題是需要特別注意的。以上分析中的需要注意的問(wèn)題都進(jìn)行功能設(shè)計(jì)中的重要細(xì)節(jié)部分,在設(shè)計(jì)時(shí),要給予充分的考慮和周密的設(shè)計(jì)。根據(jù)以上的詳細(xì)分析,下面就對(duì)我設(shè)計(jì)出來(lái)的方案做詳細(xì)的介紹。2. 總體設(shè)計(jì)根據(jù)任務(wù)要求所要實(shí)現(xiàn)的功能,我設(shè)計(jì)出了兩種方案來(lái)實(shí)現(xiàn)。這兩個(gè)方案都可以很好的實(shí)現(xiàn)系統(tǒng)所要求的功能,不過(guò)是通過(guò)不同的途徑來(lái)完成的。本部分就將對(duì)這兩個(gè)方案作總體上的介紹和分析,后面將通過(guò)對(duì)兩個(gè)方案的比較,選出最適合本系統(tǒng)的方案,并最終選定為本畢業(yè)設(shè)計(jì)作品要使

9、用的方案。2.1 總體設(shè)計(jì)方案一此設(shè)計(jì)方案的系統(tǒng)方框圖如下圖所示。 方案一的系統(tǒng)原理框圖方案一的單片機(jī)時(shí)鐘信號(hào)是由外部的振蕩電路提供,通過(guò)X1,X2引腳輸入。石英晶體選用12M的,電容選用30f的。復(fù)位電路采用上電復(fù)位方式。單片機(jī)的P0口用來(lái)作讀取A/D轉(zhuǎn)換的結(jié)果和發(fā)送ADC0809通道選擇地址數(shù)據(jù)。單片機(jī)的P1口用來(lái)發(fā)送LED數(shù)碼管顯示內(nèi)容的數(shù)據(jù)總線(xiàn)。單片機(jī)的P2口的第三位用來(lái)提供LED數(shù)碼管讀取總線(xiàn)數(shù)據(jù)的片選信號(hào)。系統(tǒng)共用到9個(gè)數(shù)碼管,這三條線(xiàn)通過(guò)3線(xiàn)8線(xiàn)譯碼器來(lái)實(shí)現(xiàn)對(duì)數(shù)碼管的片選,最后一個(gè)就用P2.5來(lái)提供片選。而P2.7、ALE、RD和WR引腳就用來(lái)對(duì)ADC0809提供控制信息,來(lái)控制

10、A/D轉(zhuǎn)換過(guò)程。INT1外部中斷腳被用來(lái)接收傳感器LWGY輸出的信號(hào)數(shù)據(jù)。最后,TXD和RXD根據(jù)引腳的特殊功能,被用來(lái)做與PC做串口通信,完成與PC的數(shù)據(jù)傳輸功能。方案一的A/D轉(zhuǎn)換部分的功能主要由ADC0809來(lái)實(shí)現(xiàn)。方案一中,ADC0809只需要負(fù)責(zé)傳感器AK-4輸出的信號(hào)數(shù)據(jù)做模數(shù)轉(zhuǎn)換。單片機(jī)發(fā)出啟動(dòng)轉(zhuǎn)換控制信號(hào)后,ADC0809開(kāi)始做模數(shù)轉(zhuǎn)換。單片機(jī)通過(guò)軟件延時(shí)來(lái)完成對(duì)轉(zhuǎn)換數(shù)據(jù)的讀取。方案一的傳感器輸出信號(hào)處理部分由兩個(gè)傳感器各自的信號(hào)處理電路組成。其中,兩個(gè)方案對(duì)AK-4傳感器輸出信號(hào)的處理原理是一樣的,而且都要處理出兩個(gè)信號(hào)的參數(shù)。這也是由它的輸出信號(hào)特性決定的,可以通過(guò)很簡(jiǎn)單的

11、處理,就可以滿(mǎn)足ADC0809對(duì)輸入信號(hào)的要求,再處理出信號(hào)的波動(dòng)脈沖,傳輸?shù)組CS-51單片機(jī)轉(zhuǎn)換成沖擊頻率。不同的是對(duì)傳感器LWGY輸出信號(hào)處理的方法。在本延時(shí)式方案里,只是將電流脈沖信號(hào)簡(jiǎn)單的處理成電壓脈沖信號(hào)。然后,將頻率信號(hào)接入單片機(jī)的外部中斷口,讓單片機(jī)來(lái)掃描其頻率。以完成對(duì)耗氣量的測(cè)定。方案一的LED數(shù)碼管顯示部分采用的是最常用的方式來(lái)實(shí)現(xiàn)的。用P1口發(fā)送顯示數(shù)據(jù),P2口的低三位來(lái)發(fā)送片選信息。將8個(gè)數(shù)碼管掃描一次,就完成了一次數(shù)據(jù)的顯示。方案一的PC串行通訊接口部分,采用了兩個(gè)電平轉(zhuǎn)換的芯片。這兩個(gè)芯片分別為MC1488和MC1489,它們都是串口電路電平轉(zhuǎn)換的常用芯片。可以保

12、證功能的可靠實(shí)現(xiàn)。2.2 總體設(shè)計(jì)方案二此設(shè)計(jì)方案的系統(tǒng)方框圖如下圖所示。方案二的系統(tǒng)原理方框圖中斷式方案的單片機(jī)時(shí)鐘信號(hào)也是由外部的振蕩電路提供,通過(guò)X1,X2引腳輸入。石英晶體選用12M的,電容選用30f的。但復(fù)位電路選用按鍵式復(fù)位電路。單片機(jī)的P0口用來(lái)作讀取A/D轉(zhuǎn)換的結(jié)果和發(fā)送ADC0809通道選擇地址數(shù)據(jù)。單片機(jī)的P1口用來(lái)發(fā)送LED數(shù)碼管顯示內(nèi)容的數(shù)據(jù)總線(xiàn)和提供LED數(shù)碼管讀取總線(xiàn)數(shù)據(jù)的片選信號(hào)。系統(tǒng)共用到9個(gè)數(shù)碼管,這三條線(xiàn)通過(guò)3線(xiàn)8線(xiàn)譯碼器來(lái)實(shí)現(xiàn)對(duì)數(shù)碼管的片選,最后一個(gè)也是用P2.5來(lái)做片選。而P2.7、ALE、RD和WR引腳就用來(lái)對(duì)ADC0809提供控制信息,來(lái)控制A/D轉(zhuǎn)

13、換過(guò)程。INT1外部中斷腳被用來(lái)接收A/D轉(zhuǎn)換結(jié)束信號(hào)。最后,TXD和RXD根據(jù)引腳的特殊功能,被用來(lái)做與PC做串口通信,完成與PC的數(shù)據(jù)傳輸功能。中斷式方案的的A/D轉(zhuǎn)換部分的功能也主要由ADC0809來(lái)實(shí)現(xiàn)。中斷式方案中,ADC0809則需要負(fù)責(zé)傳感器AK-4和傳感器LWGY兩個(gè)傳感器輸出的信號(hào)數(shù)據(jù)做模數(shù)轉(zhuǎn)換。單片機(jī)發(fā)出啟動(dòng)轉(zhuǎn)換控制信號(hào)后,ADC0809開(kāi)始做模數(shù)轉(zhuǎn)換。單片機(jī)通過(guò)外部中斷方式來(lái)完成對(duì)轉(zhuǎn)換數(shù)據(jù)的讀取。中斷式方案的傳感器輸出信號(hào)處理部分也由兩個(gè)傳感器各自的信號(hào)處理電路組成。對(duì)AK-4傳感器輸出信號(hào)處理方法與方案一類(lèi)似,但由于其信號(hào)線(xiàn)性極好,只需要將其轉(zhuǎn)換成電壓信號(hào),就可以得到氣

14、壓信號(hào);本方案加入了對(duì)轉(zhuǎn)換出來(lái)的脈沖信號(hào)的整流。在本中斷式方案里,在得到?jīng)_擊頻率信號(hào)方面,只對(duì)傳感器LWGY輸出信號(hào)進(jìn)行電平轉(zhuǎn)換的處理方法,就得到了電壓的脈沖信號(hào),再傳輸?shù)組CS-51中處理,就可以得到耗氣量的參數(shù)信息了。中斷式方案的LED數(shù)碼管顯示部分采用的是一個(gè)功能比較強(qiáng)大的芯片4511。它可以將BCD碼直接轉(zhuǎn)換成LED數(shù)碼管的驅(qū)動(dòng)信號(hào),并將信號(hào)鎖存?zhèn)鬏斀oLED數(shù)碼管,給系統(tǒng)帶來(lái)極大的方便。因此,只需要P1口的低四位就可以完成顯示信息的數(shù)據(jù)傳輸。剩下的高四位剛好可以通過(guò)3線(xiàn)8線(xiàn)譯碼器完成片選信號(hào)的控制。從而只用一個(gè)P1口就完成了LED數(shù)碼管部分功能的實(shí)現(xiàn)。中斷式方案的PC串行通訊接口部分,

15、采用了比較常用的MAX232。它也是專(zhuān)用的RS232接口的電平轉(zhuǎn)換電路。完全可以勝任本系統(tǒng)的串口電平轉(zhuǎn)換功能的實(shí)現(xiàn)。2.3 總體設(shè)計(jì)方案的比較從以上的介紹中,我們可以看到,這兩種設(shè)計(jì)方案的主要卻別有兩個(gè)地方。第一個(gè)就是LWGY傳感器輸出信號(hào)的處理方法。方案一的處理方法處理后可以直接作為數(shù)據(jù)信息傳輸給MCS-51單片機(jī)處理,方案二的處理方法處理后則可以傳輸給ADC0809做A/D轉(zhuǎn)換,然后再傳輸給MCS-51單片機(jī)處理。第二各就是對(duì)LED數(shù)碼管的驅(qū)動(dòng)方式。方案一是MCS-51單片機(jī)輸出LED數(shù)碼管的驅(qū)動(dòng)信號(hào),通過(guò)數(shù)據(jù)鎖存來(lái)完成數(shù)字的顯示,而方案二則是MCS-51單片機(jī)輸出數(shù)據(jù)信息,經(jīng)過(guò)譯碼和鎖存

16、的專(zhuān)用芯片來(lái)驅(qū)動(dòng)LED數(shù)碼管,來(lái)完成數(shù)字顯示功能。除了這兩個(gè)主要的不同之處之外,在其他部分的功能實(shí)現(xiàn)上也略有不同。其中包括MCS-51單片機(jī)的復(fù)位電路,串行通訊端口的電平轉(zhuǎn)換,MCS-51單片機(jī)的I/O資源分配等等。下面我就這些具體電路的細(xì)節(jié)方面做詳細(xì)的介紹和比較,以分析出哪個(gè)方案更適合這個(gè)系統(tǒng),從而選定為最終的設(shè)計(jì)方案。3. 方案的具體設(shè)計(jì)和比較從以上方案的總體設(shè)計(jì)的介紹,我們可以了解到,這兩個(gè)硬件電路方面的設(shè)計(jì)方案的都是主要由單片機(jī)、A/D轉(zhuǎn)換、LED數(shù)碼管顯示、傳感器的信號(hào)處理和與PC通信的RS232串口連接等部分組成。要想系統(tǒng)能夠真正的運(yùn)行起來(lái),協(xié)調(diào)各部分功能電路的軟件也是必不可少的。

17、下面就從這些方面對(duì)這兩個(gè)方案進(jìn)行詳細(xì)的說(shuō)明、分析和比較。3.1硬件方案的具體設(shè)計(jì)和比較按照上述的總體設(shè)計(jì)方案,本人設(shè)計(jì)出了兩個(gè)完整的具體硬件電路原理圖。方案一的硬件電路原理圖如附圖1所示。方案二的電路原理圖如附圖2所示。兩個(gè)設(shè)計(jì)方案都有各自的特色,下面就詳細(xì)的介紹它們各個(gè)功能電路部分的特色所在。設(shè)計(jì)原理8051片內(nèi)有一由高增益反相放大器構(gòu)成的振蕩器。反相放大器的輸入端為xTALl,輸出端為xTAL2,兩端躊接石英晶體及兩個(gè)電容形成穩(wěn)定的自激振蕩器。電容通常取30PF左右。振蕩頻率范圍是1212MHz,如下圖(左)所示。晶體振蕩器的振蕩信號(hào)從xTAL2端輸出到片內(nèi)的時(shí)鐘發(fā)生器上。時(shí)鐘發(fā)生器為二分

18、頻器向CPU提供兩相時(shí)鐘信號(hào)P1和P2。時(shí)鐘信號(hào)納周期稱(chēng)作饑器狀態(tài)時(shí)間s是振蕩周期的2倍。每個(gè)時(shí)鐘周期有兩個(gè)節(jié)拍(相)P1和P2,cPU就以?xún)上鄷r(shí)鐘P1和P 2為基本節(jié)拍指揮805l單片饑各部件協(xié)調(diào)工作。下圖(右)給出片內(nèi)時(shí)鐘發(fā)生原理。具體電路設(shè)計(jì)這部分在兩個(gè)方案中是相同的,電路圖如下圖所示。 系統(tǒng)方案的時(shí)鐘發(fā)生部分電路圖在本設(shè)計(jì)中,考慮到由于ADC0809片內(nèi)無(wú)時(shí)鐘,可利用8031單片機(jī)提供的地址鎖存允許信號(hào) ALE經(jīng)D觸發(fā)器二分頻后獲得,ALE腳的頻率時(shí)單片機(jī)時(shí)鐘頻率的1/6(但要注意的是,每當(dāng)訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),將少一個(gè)ALE脈沖)。如果單片機(jī)時(shí)鐘頻率采用6MHz,則ALE腳的輸出頻率

19、為1MHz,再二分頻后為500kHz,恰好符合ADC0809對(duì)時(shí)鐘頻率的要求。因此,晶體振蕩器選擇12M的,而自激振蕩電路中的電容就取30PF。設(shè)計(jì)原理單片機(jī)復(fù)位是使CPU和系統(tǒng)中的其他功能部件都處立個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開(kāi)始工作,例如復(fù)位后PC0000H,使單片機(jī)從第個(gè)單元取指令。大論是在單片機(jī)剛開(kāi)的接廣電源時(shí),還是斷電后或者發(fā)生故障后都要復(fù)位,所以我們必須弄清楚MGS51型單片機(jī)復(fù)位的條件、復(fù)體電路和復(fù)位后狀態(tài)。 單片機(jī)復(fù)位的條件是:必須使RSW陽(yáng)或RST引腳(9)加上持續(xù)兩個(gè)機(jī)器周期(即24個(gè)振蕩周期)的高電平。例如,若時(shí)鐘頻率為12MHz,每機(jī)器周期為1s,則只需2s以上時(shí)間的

20、高點(diǎn)平,在RST引腳出現(xiàn)高電平后的第二個(gè)機(jī)器周期執(zhí)行復(fù)位。單片機(jī)常見(jiàn)的復(fù)位電路如下圖 (a),(b)所示。 下圖中 (a)圖為上電復(fù)位點(diǎn)路,它足利用電容充電來(lái)實(shí)現(xiàn)的。在接電瞬間,RESET端的電位與VCC相同,隨著充電電流的減少,RESET的電位逐漸下降。只要保證RESET為高電平的時(shí)間大于兩個(gè)機(jī)器周期,使能正常復(fù)位。下圖中 (b)圖為按鍵復(fù)位電路。該電路除具有上電復(fù)位功能外,若要復(fù)位,只需按圖 (b)中的RESET鍵,此時(shí)電源vCC經(jīng)電阻R1、R2分壓,在RESET端產(chǎn)生一個(gè)復(fù)位高電平。具體電路設(shè)計(jì)的分析和比較方案一此方案中采用上電復(fù)位電路。電路如下圖所示。上電復(fù)位電路圖上電式復(fù)位電路的特點(diǎn)

21、是很方便,當(dāng)有電源接通給單片機(jī)時(shí),此電路就可以自動(dòng)產(chǎn)生復(fù)位信號(hào)。它足利用電容充電來(lái)實(shí)現(xiàn)的。在接電瞬間,RESET端的電位與VCC相同,隨著充電電流的減少,RESET的電位逐漸下降。只要保證RESET為高電平的時(shí)間大于兩個(gè)機(jī)器周期,使能正常復(fù)位。方案二此方案中采用了按鍵式的復(fù)位電路,如下圖所示。 按鍵復(fù)位電路圖這種復(fù)位電路的特點(diǎn)就是上電以后,可以隨時(shí)通過(guò)按鍵來(lái)發(fā)出復(fù)位信號(hào)。該電路除具有上電復(fù)位功能外,若要復(fù)位,只需按圖中的RESET鍵,此時(shí)電源vCC經(jīng)電阻R1、R2分壓,在RESET端產(chǎn)生一個(gè)復(fù)位高電平。這對(duì)系統(tǒng)的可控性是很有幫助的。方案比較前面已經(jīng)介紹了復(fù)位電路的兩種形式,其實(shí)對(duì)系統(tǒng)而言并沒(méi)有

22、什么大的區(qū)別,但考慮到系統(tǒng)調(diào)試時(shí)的方便,本系統(tǒng)采用了按鍵復(fù)位方式。當(dāng)調(diào)試不成功時(shí),經(jīng)過(guò)調(diào)整后,只需單片機(jī)復(fù)位即可進(jìn)行下一次的調(diào)試。這也降低了其他硬件由于電源供電問(wèn)題,而導(dǎo)致的調(diào)試不成功。所以,最終選定按鍵復(fù)位電路為單片機(jī)部分的復(fù)位電路。在進(jìn)行設(shè)計(jì)之前,我們必須弄清楚所選用的傳感器的工作原理和輸出信號(hào)的特點(diǎn)。這樣,才能知道如何讓MCS-51單片機(jī)處理所收到的信息數(shù)據(jù),才能有的放矢的將傳感器輸出的信號(hào)轉(zhuǎn)換成下一部分的處理電路所能接收的數(shù)據(jù)信息。 LWGY型渦輪流量傳感器的信號(hào)處理電路1 設(shè)計(jì)原理LWGY型渦輪流量傳感器(以下簡(jiǎn)稱(chēng)傳感器)與顯示儀表配套組成渦輪流量計(jì)。可測(cè)量液體的瞬時(shí)流量和累計(jì)體積總

23、量,也可以對(duì)液體實(shí)現(xiàn)定量控制。傳感器具有精度高、壽命長(zhǎng)、操作維護(hù)簡(jiǎn)單等特點(diǎn),廣泛用于工廠(chǎng)、油田、化工、冶金、造紙等行業(yè),是流量計(jì)量和節(jié)能的理想儀表。LWGY型渦輪流量傳感器的工作原理為,被測(cè)液體流經(jīng)傳感器時(shí),傳感器內(nèi)葉輪借助于液體的動(dòng)能而旋轉(zhuǎn)。此時(shí)葉輪葉片使檢出裝置中的磁路磁阻發(fā)生周期性變化,因而在檢出線(xiàn)圈兩端就感應(yīng)出與流量成正比的電脈沖信號(hào),經(jīng)前置放大器放大后送至顯示儀表。在測(cè)量范圍內(nèi),傳感器的流量脈沖頻率與體積流量成正比,這個(gè)比值即為儀表系數(shù),用K表示,K = f/Q 或 K = N/V式中:f流量信號(hào)頻率(Hz)Q體積流量(m3/h或L/h)N脈沖數(shù)V體積總量(m3或L)每臺(tái)傳感器的儀表

24、系數(shù)由制造廠(chǎng)填寫(xiě)在檢定證書(shū)中。K值設(shè)入配套的顯示儀表中,便可顯示出瞬時(shí)流量和體積總量。技術(shù)指標(biāo): 介質(zhì)溫度:-20+120;-20+200(定做); 環(huán)境溫度:-20+50; 傳輸距離:傳感器至顯示儀表的距離可達(dá)500m; 防爆等級(jí):dCT4。具體電路設(shè)計(jì)的分析和比較系統(tǒng)選用的LWGY渦輪流量傳感器,輸出信號(hào)為頻率型的電流信號(hào),這部分電路是用來(lái)處理傳感器LWGY所輸出的信號(hào)數(shù)據(jù)的。但是,A/D0809在轉(zhuǎn)換時(shí),所能接收的輸入信號(hào)為幅值型的電壓信號(hào),所以在把傳感器的信號(hào)拿去處理之前,必須將它轉(zhuǎn)換成A/D轉(zhuǎn)換器所要求的信號(hào)類(lèi)型。系統(tǒng)設(shè)計(jì)時(shí),在這一部分加入了一個(gè)頻率電壓變換電路。方案一此方案的電路原

25、理圖如下圖所示。 LWGY傳感器輸出信號(hào)處理方案一電路圖這種處理方案的原理就是,將傳感器原有輸出的電流頻率信號(hào)轉(zhuǎn)換成電壓頻率信號(hào)。但此時(shí)的電壓幅值還很小,不容易被感知。所以,要通過(guò)一個(gè)運(yùn)算放大器來(lái)將電壓幅值變大到足以做驅(qū)動(dòng)信號(hào)。電路的輸出端直接于單片機(jī)的外部中斷輸入腳INT1。電路的輸出信號(hào)就可以申請(qǐng)到中斷,中斷服務(wù)程序就可以來(lái)完成對(duì)中斷次數(shù)的累加。每過(guò)一定的時(shí)間來(lái)讀取次數(shù)累加結(jié)果,并將累加器清零,就可以換算出信號(hào)的頻率大小了。方案二此方案的電路原理圖如下圖所示。 LWGY傳感器輸出信號(hào)處理方案二電路圖此處理方案是根據(jù)LWGY傳感器的輸出信號(hào)的特點(diǎn)而設(shè)計(jì)的。LWGY傳感器的輸出信號(hào)的電平很低,

26、因此其信號(hào)本身不能足以驅(qū)動(dòng)MCS-51單片機(jī)工作。因此,我們只需要將電平轉(zhuǎn)換為T(mén)TL電平,就可以用MCS-51單片機(jī)來(lái)數(shù)脈沖的方式,計(jì)算出脈沖信號(hào)的頻率,從而得到數(shù)顯表所需要的耗氣量顯示數(shù)據(jù)。但是,為了得到更好的效果和可靠性,我還將電平轉(zhuǎn)換后的脈沖進(jìn)行整形,然后再傳輸給單片機(jī)。但是,本處理方案中用了三個(gè)整形電路來(lái)整形是因?yàn)椋?4HC14中集成了6個(gè)整形單元,此電路和AK-4傳感器的處理電路中各用了三個(gè)。這樣不僅可以保證得到好的效果,還充分利用了硬件資源。方案比較通過(guò)以上兩種方案的比較,可以很明顯看到,方案二的設(shè)計(jì)更好一些。因?yàn)樗浅浞掷昧怂幚淼男盘?hào)的特性,簡(jiǎn)單方便的得到了我們所需要的信號(hào)

27、。這不僅可以節(jié)省硬件資源,還使運(yùn)行的可靠性有所提高。因此,我選用方案二來(lái)作為系統(tǒng)的最終解決方案。設(shè)計(jì)原理AK-4型壓力傳感器主要用途:它適用于各種動(dòng)靜態(tài),氣、液體介質(zhì)的壓力測(cè)量、控制AK-4型壓力傳感器特點(diǎn):具有零點(diǎn)、靈敏度調(diào)整功能,標(biāo)準(zhǔn)電壓、電流信號(hào)輸出精度高,性能穩(wěn)定可靠,結(jié)構(gòu)緊湊、安裝使用方便根據(jù)用戶(hù)要求可提供各種螺紋接口AK-4a:普通型鋁外殼 AK-4b:不銹鋼外殼 AK-4c:密封型,全O圈密封,隔潮;全不銹鋼結(jié)構(gòu),防腐AK-4F:數(shù)顯壓力變送器,3 1/2數(shù)碼顯示,直接顯示壓力數(shù)值,并具有變送功能AK-4型壓力傳感器的主要技術(shù)指標(biāo):技術(shù)指標(biāo)技術(shù)參數(shù)單位量程 0-0.1,0.2,0

28、.5,1,2,5,10,15,20,25,30,40,50,60,100MPa輸出信號(hào)0-5,1-5V4-20,0-10mA精度0.20.30.5%FS非線(xiàn)性0.20.30.5%FS遲滯0.20.30.5%FS重復(fù)性0.20.30.5%FS供橋電壓6,12,24VDC絕緣電阻100M工作溫度-10至+50零點(diǎn)偏移0.20.30.5%FS/4h熱零點(diǎn)偏移0.20.30.5%FS/10熱靈敏度偏移0.20.30.5%FS/10允許過(guò)負(fù)荷120%FS接線(xiàn)方式插座:1、電源(+);2、輸出(+)3、輸出(-);4電源(-)。導(dǎo)線(xiàn)連接方式見(jiàn)合格證書(shū)具體電路的設(shè)計(jì)這個(gè)部分為一個(gè)電流電壓變換器是兩個(gè)方案中相

29、同的部分。與前一個(gè)信號(hào)處理電路相同的道理,AK-4氣壓傳感器的輸出信號(hào)為幅值型的電流信號(hào),也不是A/D轉(zhuǎn)換器所需要的形式。因此,在A/D轉(zhuǎn)換之前,也要把傳感器的信號(hào)進(jìn)行一下處理。 方案一的設(shè)計(jì)方案一的具體設(shè)計(jì)為一個(gè)精確度很高的電流電壓轉(zhuǎn)換器,如下圖所示: 電流電壓變換器上圖所示的電流電壓變換器,采用高輸入阻抗的運(yùn)放,對(duì)于微電流有較高的靈敏度,它只需10mA電流就能得到5V電壓輸出。圖中,輸入極CH3130本身輸入阻抗極高,加上因同相輸入端和反相輸入端均處于零電位,進(jìn)一步見(jiàn)效了漏電流。如果對(duì)輸入端接線(xiàn)工藝處理得好,其漏電流可以小于1pA。第二極CH3134接成100倍反相放大器。根據(jù)輸入電流的極

30、性,一方面產(chǎn)生反相的電壓輸出,一方面提供負(fù)反饋,保證有穩(wěn)定的變換系數(shù)。本畢業(yè)設(shè)計(jì)所選用的AK-4氣壓傳感器的輸出信號(hào)為420mA的電流幅值信號(hào)。因此,為了滿(mǎn)足ADC0809的輸入信號(hào)要求,只需將信號(hào)轉(zhuǎn)換成電壓信號(hào)后,再放大250倍左右即可。所以,得出的各個(gè)元件的參數(shù)如上圖所示。 案二的具體設(shè)計(jì)方案二的設(shè)計(jì)方案如下圖所示: 方案二電路原理圖根據(jù)AK-4氣壓傳感器的輸出信號(hào)為010mA的電流,那么,將它的輸出端并接在一個(gè)500歐姆的電阻上,就可以得到05V的電壓信號(hào)了。由于AK-4氣壓傳感器的輸出線(xiàn)性很好,所以這樣得到的電壓信號(hào)完全可以很好的傳遞傳感器得到的信息。這個(gè)電壓信號(hào)經(jīng)過(guò)采樣電壓跟隨器,被

31、傳送到一個(gè)RC濾波網(wǎng)絡(luò),最后得到一個(gè)穩(wěn)定可靠的數(shù)據(jù)信號(hào)。它的輸出要傳送到ADC0809做A/D轉(zhuǎn)換,來(lái)?yè)Q算成要顯示的氣壓信息。對(duì)沖擊頻率數(shù)據(jù)測(cè)量電路的設(shè)計(jì)如下圖所示: 沖擊頻率測(cè)量電路原理圖在這兩個(gè)方案中,這部分是幾乎一樣的。稍有區(qū)別的地方就是,在方案一中,電流電壓轉(zhuǎn)換器已經(jīng)將信號(hào)進(jìn)行了放大處理,因此直接去與比較器連接來(lái)得到氣壓的脈動(dòng)信號(hào);在方案二中則是從并有傳感器信號(hào)的電阻上進(jìn)行電壓采樣,然后才去跟比較器比較,來(lái)得到氣壓的脈動(dòng)信號(hào)。但是,方案二最后傳送到單片機(jī)之前,又做了整形,使得信號(hào)有更好的有效性。綜合以上的設(shè)計(jì)分析和比較,整體上來(lái)說(shuō),方案二要較方案一更加系統(tǒng)化,有很好的連貫性,而且硬件的

32、效率比較高,分配比較合理。因此,我選擇了方案二的設(shè)計(jì)方案作為最終的解決方案。從傳感器輸出的信號(hào)為模擬信號(hào),MCS-51單片機(jī)并不能處理,所以,在傳送給MCS51單片機(jī)處理之前,必須將它轉(zhuǎn)換成數(shù)字信號(hào)。本畢業(yè)設(shè)計(jì)作品選用了常用的ADC0809來(lái)完成這部分的功能。轉(zhuǎn)換器件的引腳及功能ADC0809是一種逐次逼近式8路模擬輸入、8位數(shù)字量輸出的A/D轉(zhuǎn)換器。其引腳如下圖所示。由引腳圖可見(jiàn),ADC0809共有28個(gè)引腳,采用雙列直插式封裝。其主要引腳功能如下:IN0IN7是8路模擬信號(hào)輸入端。D0D7是8位數(shù)字量輸出端。A、B、C與ALE控制8路模擬通道的切換,A、B、C分別與三根地址線(xiàn)或數(shù)據(jù)線(xiàn)相連,

33、三者編碼對(duì)應(yīng)8個(gè)通道地址口。C、B、A000111 分別對(duì)應(yīng)IN0IN7 通道地址。 ADC0809的引腳圖強(qiáng)調(diào)說(shuō)明一點(diǎn):ADC0809雖然有8路模擬通道可以同時(shí)輸入8路模擬信號(hào),但每個(gè)瞬間只能轉(zhuǎn)換一路,各路之間的切換由軟件變換通道地址實(shí)現(xiàn)。OE、START、CLK為控制信號(hào)端,OE為輸出允許端,START為啟動(dòng)信號(hào)輸入端,CLK為時(shí)鐘信號(hào)輸入端。Vr(+)和Vr(-)為參考電壓輸入端。 ADC0809結(jié)構(gòu)及轉(zhuǎn)換原理ADC0809的結(jié)構(gòu)框圖如下圖所示。ADC0809是采用逐次逼近的方法完成A/D轉(zhuǎn)換的。由單一的+5V電源供電;片內(nèi)帶有鎖存功能的8路選1的模擬開(kāi)關(guān),由C、B、A的編碼來(lái)決定所選的

34、通道。ADC0809完成一次轉(zhuǎn)換需100s左右。輸出具有TTL三態(tài)鎖存緩沖器,可直接連到MCS51的數(shù)據(jù)總線(xiàn)上。通過(guò)適當(dāng)?shù)耐饨与娐?,ADC0809可對(duì)05V的模擬信號(hào)進(jìn)行轉(zhuǎn)換。ADC0809工作過(guò)程如下:首先用指令選擇ADC0809的一個(gè)模擬輸入通道,當(dāng)執(zhí)行MOVX DPTR , A 時(shí),產(chǎn)生一個(gè)啟動(dòng)信號(hào)給START 引腳送入脈沖,開(kāi)始對(duì)選中通道轉(zhuǎn)換。當(dāng)轉(zhuǎn)換結(jié)束后發(fā)出結(jié)束信號(hào),置EOC腳為高電平,則可以讀出轉(zhuǎn)換的數(shù)字量。利用MOVX A , DPTR 把該通道轉(zhuǎn)換結(jié)果讀到 A 累加器中。 ADC0809 的結(jié)構(gòu)圖MCS一5l的中斷系統(tǒng)中斷系統(tǒng)在計(jì)算機(jī)中起相當(dāng)重要作用,一個(gè)中斷功能很強(qiáng)的計(jì)算機(jī),

35、特大大提高處理外界事件的能力。MCS一51單片機(jī)的中斷系統(tǒng)有五個(gè)中斷源,具有兩個(gè)中斷優(yōu)先級(jí),可實(shí)現(xiàn)兩級(jí)中斷嵌套。用戶(hù)可以用關(guān)中斷指令屏蔽所有的中斷請(qǐng)求,也可用開(kāi)中斷指令使CPU接收中斷申請(qǐng),用戶(hù)也可以對(duì)每一中斷源用軟件開(kāi)關(guān)和設(shè)置其級(jí)別。下圖給出MCS一51的中斷系統(tǒng)。8051單片機(jī)有五個(gè)中斷源,其中兩個(gè)外中斷源,由INT0和INT1引腳輸入,三個(gè)內(nèi)部中斷源,分別由定時(shí)器To溢出、定時(shí)器Tl溢出和串行口發(fā)送接收請(qǐng)求提供。外中斷源由INT0和INT1輸入的兩個(gè)外中斷及其觸發(fā)方式欽存在特殊功能寄存器TCON的低四位,其格式:TF1TF0IE1IT1IE0IT0TCON(88H)IE1(TCON.3)

36、:外部中斷INT1(P3. 3)申請(qǐng)標(biāo)志位。當(dāng)cPu檢測(cè)到INT1引腳上出現(xiàn)中斷申請(qǐng)信號(hào),由硬件置IEl1,申請(qǐng)中斷。cPU響應(yīng)中斷進(jìn)入中斷服務(wù)程序后,IEl被硬件自動(dòng)清o(指脈沖邊沿觸發(fā)方式,電乎申請(qǐng)方式IEl不能由硬件清0)。 ITl(TCON2):外中斷INT1觸發(fā)方式控制位,由軟件置I或清0。ITl0時(shí),外中斷為電乎觸發(fā)方式面五輸入低電乎,置位IEl,申請(qǐng)中斷。采用電平觸發(fā)方式,外中斷源輸入到頂否必須保持低電平,直到該中斷被cPu響應(yīng)而且在執(zhí)行完中斷服務(wù)程序前,此有效中斷源必須撤消,否則產(chǎn)生下一次中斷。當(dāng)ITl1時(shí),外中斷1為邊沿觸發(fā)方式、CPU每個(gè)機(jī)器周期采樣中斷源,當(dāng)相繼的兩次采洋

37、,一次為高電平,一次為低電平,則置IEll,表示外中斷1向CPU申請(qǐng)中斷。當(dāng)該中斷被cCPU響應(yīng)后,IEl由硬件清0。這種邊沿觸發(fā)方式,要求外中斷源輸入的高和低電平時(shí)間必須保持一個(gè)機(jī)器周期以上。 IE0(TCON1):外中斷0 ( INT0 )請(qǐng)求標(biāo)志。IE01,外部中斷0向CPU申請(qǐng)中斷當(dāng)CPU響應(yīng)中斷時(shí),由硬件使IE0復(fù)位(指邊沿觸發(fā)方式)。H0(TCON0):外中斷0 ( INT0 )觸發(fā)方式控制位,IT00,外中斷0為電平觸發(fā)方式:IT01,外中斷0為邊沿觸發(fā)方式。 內(nèi)中斷源 TF0(TCON.5):定時(shí)器T0溢出產(chǎn)斷標(biāo)志垃。當(dāng)To允許計(jì)數(shù)后v從初值開(kāi)始加1計(jì)數(shù),溢出后置TFo1向CP

38、U申請(qǐng)中斷、直到響應(yīng)中斷后由硬件使TFo0。 T門(mén)(TCON7):定時(shí)器T1的溢出中斷標(biāo)志,其功能同TFo。 RI(SCONo)和TI(SCON1):串口中斷申請(qǐng)標(biāo)志。串口的接收中斷RI和發(fā)送中斷TI“邏輯”或以后為內(nèi)部一個(gè)中斷源。串口申請(qǐng)幀,CPU響應(yīng)中斷后,無(wú)硬件清戶(hù)斷功能,T1和RI必須由軟件清0(中斷服務(wù)程序中必須有清TI和RI指令)。MCS-51 與ADC0809 的接口在討論MCS-51與ADC0809 的接口設(shè)計(jì)之前,先來(lái)討論單片機(jī)如何來(lái)控制ADC的問(wèn)題。用單片機(jī)控制ADC的時(shí)候,多數(shù)采用查詢(xún)和中斷控制兩種方法。查詢(xún)法是在單片機(jī)把啟動(dòng)命令送到ADC之后,執(zhí)行別的程序,同時(shí)對(duì)ADC

39、的狀態(tài)進(jìn)行查詢(xún),以檢查ADC變換是否已經(jīng)結(jié)束,如查詢(xún)到變換已結(jié)束,則讀入轉(zhuǎn)換完畢的數(shù)據(jù)。中斷控制法是在啟動(dòng)信號(hào)送到ADC之后,單片機(jī)執(zhí)行別的程序。當(dāng)ADC變換結(jié)束并向單片機(jī)發(fā)出中斷請(qǐng)求信號(hào)時(shí),單片機(jī)相應(yīng)此中斷請(qǐng)求,進(jìn)入中斷服務(wù)程序,讀入轉(zhuǎn)換數(shù)據(jù),并進(jìn)行必要的數(shù)據(jù)處理,然后返回到原程序。這種方法單片機(jī)無(wú)需進(jìn)行轉(zhuǎn)換時(shí)間的管理,CPU效率高,所以特別適合于轉(zhuǎn)換時(shí)間較長(zhǎng)的ADC。如果對(duì)轉(zhuǎn)換速度要求高,采用上述兩種ADC控制方法往往不能滿(mǎn)足要求,可采用DMA(直接存儲(chǔ)器存?。┑姆椒ǎ@時(shí),可在ADC與單片機(jī)之間插入一個(gè)DMA接口(例如Intel公司的8237DMA控制器)。傳輸一開(kāi)始,AD轉(zhuǎn)換的數(shù)據(jù)就可

40、以從輸出寄存器經(jīng)過(guò)DMA中的數(shù)據(jù)寄存器直接傳輸?shù)街鞔鎯?chǔ)器,因而不必受程序的限制。 軟件延時(shí)方式ADC0809與 8031單片機(jī)的接口如下圖所示。 延時(shí)方式接口圖由于ADC0809片內(nèi)無(wú)時(shí)鐘,可利用8031單片機(jī)提供的地址鎖存允許信號(hào) ALE經(jīng)D觸發(fā)器二分頻后獲得,ALE腳的頻率時(shí)單片機(jī)時(shí)鐘頻率的1/6(但要注意的是,每當(dāng)訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),將少一個(gè)ALE脈沖)。如果單片機(jī)時(shí)鐘頻率采用6MHz,則ALE腳的輸出頻率為1MHz,再二分頻后為500kHz,恰好符合ADC0809對(duì)時(shí)鐘頻率的要求。由于ADC0809具有三態(tài)鎖存器,其8位數(shù)據(jù)輸出引腳可直接與數(shù)據(jù)總線(xiàn)相連。地址譯碼腳A、B、C分別與地址

41、總線(xiàn)的低三位A0、A1、A2相連,以宣統(tǒng)IN0IN7中的一個(gè)通路。將P2.7(地址總線(xiàn)A15)作為片選信號(hào),在啟動(dòng)A/D轉(zhuǎn)換時(shí),由單片機(jī)的寫(xiě)入信號(hào)和P2.7控制ADC的地址鎖存和轉(zhuǎn)換啟動(dòng),由于ALE和START連在一起,因此ADC0809在鎖存通道地址的同時(shí),啟動(dòng)并進(jìn)行轉(zhuǎn)換。在讀取轉(zhuǎn)換結(jié)構(gòu)時(shí),用低電平的讀信號(hào)和P2.7腳經(jīng)一級(jí)或非門(mén)后,產(chǎn)生的正脈沖作為OE信號(hào),用以打開(kāi)三態(tài)輸出鎖存器。 中斷方式ADC0809與8031的中斷方式接口電路只需要將上圖中的ADC0809的EOC腳經(jīng)過(guò)一個(gè)非門(mén)連接到8031的INT1腳即可。采用中斷方式可大大節(jié)省CPU的世軍安,當(dāng)轉(zhuǎn)換結(jié)束時(shí),EOC發(fā)出一個(gè)脈沖向單片

42、機(jī)提出中斷請(qǐng)求,單片機(jī)響應(yīng)中斷請(qǐng)求,由外部中斷1的中斷服務(wù)程序讀A/D結(jié)果,并啟動(dòng) ADC0809的下一個(gè)轉(zhuǎn)換,外部中斷1采用跳沿觸發(fā)方式。 查詢(xún)方式 ADC0809有表明轉(zhuǎn)換完成的狀態(tài)信號(hào)的Eoc端。因此,可以用查詢(xún)方式,軟件測(cè)試Eoc的狀態(tài),即可確知轉(zhuǎn)換是否完成,然后進(jìn)行數(shù)據(jù)傳送。電路連接主要涉及兩個(gè)問(wèn)題,一是8路模擬信號(hào)通道選擇,二是A/D轉(zhuǎn)換完成后轉(zhuǎn)換數(shù)據(jù)的傳送。8路模擬通道選擇A、D、C分別接地址鋇存器提供的低三位地址,只要把三位地址寫(xiě)入佃09中的地址鎖存器,就實(shí)現(xiàn)了模擬通道選擇。對(duì)系統(tǒng)來(lái)說(shuō),地址鎖存器是一個(gè)輸出口,為了把三位地址寫(xiě)入,還要提供口地址。本系統(tǒng)使用的是線(xiàn)選法,口地址由P

43、2.7確定,同時(shí)和WR相或取反后作為開(kāi)始轉(zhuǎn)換的選通信號(hào)。因此,若無(wú)關(guān)位都取O,則該ADC0809的8路通道IN0IN7通道地址分別為0000H一0007H。從前面的圖中可以看到,把ADC0809的ALE信號(hào)與START信號(hào)連接在一起了,這樣使得在ALE信號(hào)的前沿寫(xiě)入地址信號(hào),緊接著在其后沿就啟動(dòng)轉(zhuǎn)換。因此,啟動(dòng)ADC0809進(jìn)行轉(zhuǎn)換只需要下面的指令(以通道0為例):MOV DPTR, #6000H ;選中通道0MOV DPTR, A ;WR信號(hào)有效,啟動(dòng)轉(zhuǎn)換轉(zhuǎn)換后數(shù)據(jù)的傳送 方案一此方案主要采用的是軟件延時(shí)的方法來(lái)確定轉(zhuǎn)換過(guò)程的完成與否。因?yàn)锳/D轉(zhuǎn)換一次所需要的時(shí)間是一定的,所以只需要通過(guò)軟

44、件延時(shí)足夠的時(shí)間就可以確定轉(zhuǎn)換已經(jīng)完成。此時(shí)就可以直接去讀取轉(zhuǎn)換的結(jié)果了。由以上分析可知:在編寫(xiě)軟件時(shí),應(yīng)令P2.7=A15=0 ; A0、A1、A2給出被選擇的模擬通道的地址;執(zhí)行一條輸出指令,啟動(dòng)A/D轉(zhuǎn)換;執(zhí)行一條輸入指令,讀取轉(zhuǎn)換結(jié)果。譯碼的程序時(shí)采用軟件延時(shí)的方法,分別對(duì)8路模擬信號(hào)輪流采樣一次,并依次把結(jié)果轉(zhuǎn)儲(chǔ)到數(shù)據(jù)存儲(chǔ)區(qū)的轉(zhuǎn)換程序。MAIN: MOV R1 , #data ;置數(shù)據(jù)區(qū)首地址 MOV DPTR , #7FF8H ;P2.7=0 , 且指向通道0 MOV R7 , #08H ;置通道數(shù)LOOP: MOV DPTR , A ;啟動(dòng)A/D轉(zhuǎn)換 MOV R6 , #0AH

45、;軟件延時(shí),等待轉(zhuǎn)換結(jié)束DLAY: NOP NOP NOP DJNZ R6 , DLAY MOVX A , DPTR ;讀取轉(zhuǎn)換結(jié)果 MOV R1 , A ;轉(zhuǎn)存到內(nèi)PRAM中 INC DPTR ;指向下一個(gè)通道 INC R1 ;修改數(shù)據(jù)區(qū)指針 DJNZ R7 , LOOP ;8個(gè)通道全采樣完了嗎? 方案二 此方案采用的是中斷的方法來(lái)完成對(duì)轉(zhuǎn)換完成與否的判別的。當(dāng)A/D轉(zhuǎn)換完成的時(shí)候,ADC0809會(huì)有一個(gè)完成信號(hào)從EOC腳發(fā)出。那么,我們就可以運(yùn)用這個(gè)信號(hào)來(lái)申請(qǐng)到單片機(jī)的中斷,通過(guò)中斷服務(wù)程序來(lái)完成對(duì)轉(zhuǎn)換結(jié)果的讀取。這種方法的實(shí)現(xiàn)程序如下:INT1: SETB IT1 ;外部中斷1初始化編程

46、 SETB EA SETB EX1 MOV DPTR , # 7FF8H ;啟動(dòng)ADC0809對(duì)IN0通道轉(zhuǎn)換 MOV A , # 00H MOVX DPTR , A 中斷服務(wù)程序:PINT1:MOV DPTR , #7FF8H ;讀取A/D結(jié)果送緩沖單元30HMOVX A , DPTRMOV 0H , AMOV A , #00H ;啟動(dòng)ADC0809對(duì)IN0的轉(zhuǎn)換MOVX DPTR , A RETI 方案比較和確定考慮到才本系統(tǒng)中單片機(jī)不只是控制A/D轉(zhuǎn)換和對(duì)轉(zhuǎn)換結(jié)果的讀取,還有很多工作要做。那么,方案一這種軟件延時(shí)的方案就太浪費(fèi)單片機(jī)的資源了。于之相比,方案二的中斷方式更加適合本系統(tǒng),因?yàn)?/p>

47、在啟動(dòng)A/D轉(zhuǎn)換之后,單片機(jī)可以轉(zhuǎn)去處理其他的事情,而當(dāng)A/D轉(zhuǎn)換完成后,又可以第一時(shí)間將轉(zhuǎn)換結(jié)果讀出來(lái)。很明顯,方案二的中斷方式讀取轉(zhuǎn)換結(jié)果更適合本系統(tǒng)。它也是本設(shè)計(jì)作品最終選定的方案。3.1.5 LED數(shù)碼管顯示電路的設(shè)計(jì)這部分電路所要完成的功能主要有片選中一個(gè)LED數(shù)碼管,傳送所要顯示的數(shù)據(jù)和對(duì)數(shù)據(jù)的鎖存。為了能讓單片機(jī)去同時(shí)處理其他的事情,單片機(jī)不能一直掃描所以數(shù)碼管,來(lái)實(shí)現(xiàn)LED數(shù)碼管數(shù)據(jù)一直顯示的滿(mǎn)意效果。所以必須引入數(shù)據(jù)鎖存功能,來(lái)實(shí)現(xiàn)LED數(shù)碼管一直有顯示數(shù)據(jù)。當(dāng)有新的數(shù)據(jù)要顯示的時(shí)候,直需要單片機(jī)重新對(duì)每個(gè)LED數(shù)碼管重新輸出一次數(shù)據(jù)即可。其中,有一個(gè)問(wèn)題,就是當(dāng)數(shù)據(jù)還沒(méi)有全

48、部傳送給LED數(shù)碼管,新的數(shù)據(jù)就已經(jīng)準(zhǔn)備好了。此時(shí),如果數(shù)據(jù)處理不好,就會(huì)新舊數(shù)據(jù)混合顯示出來(lái)。而造成數(shù)據(jù)輸出并不是我們想要的結(jié)果。這個(gè)問(wèn)題,可以從軟件方面來(lái)解決。就是當(dāng)有新的數(shù)據(jù)完成的時(shí)候,無(wú)論已經(jīng)傳輸了幾個(gè)LED數(shù)碼管的數(shù)據(jù),都從第一個(gè)數(shù)據(jù)從新傳輸,就可以很好的避免這個(gè)問(wèn)題的發(fā)生了。從LED顯示器的顯示原理可知,為了顯示字母數(shù)字,必須最終轉(zhuǎn)換成響應(yīng)段選碼。這種轉(zhuǎn)換可通過(guò)硬件譯碼器或軟件進(jìn)行譯碼。下面介紹用譯碼器或軟件譯碼的一些接口電路。軟件譯碼顯示器接口BCD七段16進(jìn)制譯碼驅(qū)動(dòng)顯示接口。單片機(jī)應(yīng)用系統(tǒng),通常要求LED顯示器能顯示16進(jìn)制及十進(jìn)制帶小數(shù)點(diǎn)的數(shù)。因此,在選擇譯碼器時(shí),要能夠完

49、成BCD碼至16進(jìn)制的鎖存、譯碼,并具有驅(qū)動(dòng)功能,否則就不如用軟件譯碼接口。MOTOROLA公司生產(chǎn)的CMOS BCD七段16進(jìn)制鎖存、譯碼驅(qū)動(dòng)芯片。該電路的特點(diǎn)時(shí)可用字母A B C D E F來(lái)顯示二進(jìn)制數(shù)10、11、12、13、14、15,同時(shí)還有譯碼器輸入大于等于10時(shí)的指示端(hI )。當(dāng)輸入數(shù)據(jù)10時(shí),(hI)端輸出“1”電平。另外還有輸入數(shù)據(jù)時(shí),電路輸入端VCR為0電平(其他輸入狀態(tài)時(shí)為高阻)的功能。電路內(nèi)部還有一個(gè)290的限流電阻。而為選通端,電路中的鎖存器在LE為0時(shí)輸入數(shù)據(jù),在LE1時(shí)鎖存數(shù)據(jù)。下表為4511的真值表。從表中可以看出,當(dāng)顯示數(shù)據(jù)大于等于10時(shí),(hI)端輸出1

50、電平。 4511真值表及顯示內(nèi)容表輸 入 輸 出顯 示D C B Aa b c d e f g h+I數(shù) 值0 0 0 01 1 1 1 1 1 0 0 00 0 0 10 1 1 0 0 1 0 0 10 0 1 01 1 0 1 1 0 1 0 20 0 1 11 1 1 1 0 0 1 0 30 1 0 00 1 1 0 0 1 1 0 40 1 0 11 0 1 1 0 1 1 0 50 1 1 01 0 1 1 1 1 1 0 60 1 1 1 1 1 1 0 0 0 0 0 71 0 0 01 1 1 1 1 1 1 0 81 0 0 11 1 1 1 0 1 1 0 91 0 1

51、 01 1 1 0 1 1 1 1 A1 0 1 10 0 1 1 1 1 1 1 B1 1 0 01 0 0 1 1 1 0 1 C1 1 0 1 0 1 1 1 1 0 1 1 D 1 1 1 01 0 0 1 1 1 1 1 E1 1 1 11 0 0 0 1 1 1 0 F程序功能:將以R0為首地址的連續(xù)8個(gè)BCD碼在LED上顯示。入口參數(shù):R0:存儲(chǔ)顯示字節(jié)的首地址,為MCS51片上存儲(chǔ)器。出口參數(shù):空。變量說(shuō)明:CONBIT是P1扣P1.4P1.5的數(shù)據(jù),是控制位顯示位變量,片上存儲(chǔ)器。程序如下:STADISP:CLRP1.7; 使74LS138無(wú)效MOVA, #00H; 先賦值M

52、OVCONBIT, #00H; 控制位初值MOVR7, #08H; 循環(huán)次數(shù)控制器DISPLAY:MOVA, R0; 將數(shù)據(jù)賦給AADDA, CONBIT; 加上控制位數(shù)據(jù)MOVP1, A; 將數(shù)據(jù)輸出在P1口上ADDA, #10H; ANLA, #7FH; 保持P1.7有效MOVP1, A; 將數(shù)據(jù)鎖存入MC14495數(shù)據(jù)置于總線(xiàn)上,需要將選中電平變高INCR0MOVA, CONBITADDA, #10HMOVCONBIT, A; 控制字節(jié)指向下一個(gè)顯示單元DJNZR7,DISPLAY; 巡回8次,直至完成硬件鎖存接口可采用74LS273,上升沿八D鎖存器,可以用來(lái)進(jìn)行靜態(tài)驅(qū)動(dòng),如系統(tǒng)連接原理圖所示,此時(shí),74LS273直接輸出段選碼來(lái)驅(qū)動(dòng)LED。 74LS273引腳圖 譯碼器74LS138譯碼器74LS138的引腳圖如下圖所示:74LS138的引腳圖由圖可知,該譯碼器有3個(gè)輸入端A、B、C,它們共有8種狀態(tài)的組合,即可譯出8個(gè)輸出信號(hào)Y0Y7,故該譯碼器稱(chēng)為3線(xiàn)8線(xiàn)譯碼器。該譯碼器的主要特點(diǎn)是,設(shè)置了E1、E2和E3,3個(gè)使能輸入端。由功能表可知,對(duì)于正邏輯,當(dāng)E3為1,且E2和E1均為0時(shí),譯碼器處于工作狀態(tài)。方案一此方案的電路原理圖見(jiàn)方案一的附圖1。在此方案中,采用

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論