新聞中心

EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 基于STC12C5408AD的記憶示波器

基于STC12C5408AD的記憶示波器

作者: 時(shí)間:2007-09-07 來源:網(wǎng)絡(luò) 收藏

1 引言

示波器是電子測量的基本儀器。由于其具有圖形顯示實(shí)時(shí)、直觀和形象等特性,在一般的物理實(shí)驗(yàn)室中它也是常用儀器之一。眾所周知,示波器是依據(jù)輸入電壓調(diào)制的電子束掃描、熒屏余輝以及人眼的暫留效應(yīng)等原理制成的;它要求輸入周期信號(hào);對(duì)于非周期性的信號(hào),普通示波器是無能為力的,必須使用具有記憶功能的專用示波器,但這種示波器價(jià)格高昂,一般的物理實(shí)驗(yàn)室無法大量配置。

信息時(shí)代,個(gè)人計(jì)算機(jī)大量普及。普通物理實(shí)驗(yàn)室以及一般的中學(xué)都已配備了大量的計(jì)算機(jī)(以下稱PC)。但這些PC大都用于文字信息處理和計(jì)算工作,其內(nèi)在的功能還遠(yuǎn)遠(yuǎn)沒有發(fā)揮,實(shí)際上造成了巨大的浪費(fèi)。

我們知道,PC具有很強(qiáng)的圖像顯示功能。如果能夠開發(fā)、利用這一功能,配上外部接口電路,將一些物理過程,如溫度、濕度、壓力等等,經(jīng)過相應(yīng)的器,將非電量轉(zhuǎn)換成電壓量,再經(jīng)調(diào)理電路處理后送入STC單片機(jī)進(jìn)行A/D轉(zhuǎn)換,轉(zhuǎn)換成數(shù)字量后再由串口發(fā)送到PC機(jī),由PC機(jī)進(jìn)行和圖形顯示,從而構(gòu)成了記憶示波器。

2 STC12C5408AD簡介

STC12C5408AD是新一代增強(qiáng)型8051單片機(jī),速度快,集成度高,電壓范圍寬(3.8 V~5.5 V),指令系統(tǒng)和MCS-51系列完全兼容。其內(nèi)部還有8 KBFlash程序器,512字節(jié)RAM、2 KB EEPROM、8通道10位ADC、4路PWM以及硬件看門狗(WDT)等寶貴資源,性價(jià)比極高。它的23個(gè)I/O口、內(nèi)部電源供電系統(tǒng)、時(shí)鐘電路、復(fù)位電路以及看門狗電路都經(jīng)過特殊處理,具有超強(qiáng)的抗干擾能力。STC12C5408AD具有ISP功能,用戶在自己的目標(biāo)系統(tǒng)上,經(jīng)串口和PC連接,就可直接由PC對(duì)其進(jìn)行ISP下載,時(shí)間僅幾秒鐘,使用非常方便。又由于方便和快捷,因而可在用戶程序的任意位置插入“SJMP$”死循環(huán)指令作“斷點(diǎn)”(測試后刪除),重新、下載和運(yùn)行;程序運(yùn)行到此便停住,用戶可方便地檢查當(dāng)前的硬件真實(shí)狀態(tài);如需檢測某些寄存器的狀態(tài)??稍凇皵帱c(diǎn)”指令前插入讀寄存器并串發(fā)到PC的指令段,便可在PC上顯示當(dāng)前的寄存器狀態(tài)供檢測,可節(jié)省專用器和仿真機(jī)的昂貴開支。

3 A/D轉(zhuǎn)換

本系統(tǒng)中主要應(yīng)用了該單片機(jī)的10位A/D功能。STC12C5408AD的8路10位A/D轉(zhuǎn)換口位于P1.0~P1.7,速度可達(dá)100 kHz,其A/D功能由有關(guān)寄存器來設(shè)置。

上電復(fù)位后,P1口為弱上拉型I/O狀態(tài)。選用P1.3腳作A/D通道,必須先將其設(shè)置為開漏(或高阻輸入)狀態(tài)。P13KL子程序就是完成這個(gè)設(shè)置。

3.1 轉(zhuǎn)換控制寄存器

轉(zhuǎn)換控制寄存器ADC_CONTR(地址0C5H)格式如圖1所示,各位的具體含義如下:

(1) A/D電源控制位D7

D7=1時(shí),打開A/D電源;初次打開時(shí),延時(shí)1ms,待A/D電路供電穩(wěn)定后,再啟動(dòng)A/D,以保證A/D精度。ADC_ON子程序如下:



(2) 轉(zhuǎn)換速度控制位D6D5

D6D5=00時(shí),轉(zhuǎn)換速度最慢(840個(gè)時(shí)鐘)

D6D5=11時(shí),轉(zhuǎn)換速度最快(210個(gè)時(shí)鐘),本例用11。

(3) 模擬輸入通道選擇位D2D1D0

其位值為i(i=0,1,2,…,7)時(shí),選中P1.i為A/D輸入通道;本例選P1.3,i=3。

(4) 轉(zhuǎn)換啟動(dòng)位D3

D3=1,啟動(dòng)A/D轉(zhuǎn)換;啟動(dòng)后硬件自動(dòng)清零。

(5) 轉(zhuǎn)換結(jié)束標(biāo)志位D4

A/D轉(zhuǎn)換完畢,D4=1;必須由軟件清0。

3.2 轉(zhuǎn)換結(jié)果寄存器

A/D結(jié)果高8位寄存器ADC_DATA,地址OC6H(D7~D0);

A/D結(jié)果低2位寄存器ADC_LW02,地址OBEH(D1D0);

3.3 A/D轉(zhuǎn)換子程序RDAD

本例由于用PC機(jī)屏幕顯示A/D波形,PC機(jī)Y軸方向只能由8位數(shù)據(jù)控制,故只用高8位。每次讀畢再發(fā)給PC機(jī)處理。

3.4 基本程序清單

4 PC軟件設(shè)計(jì)

PC軟件由串行通訊和圖形顯示兩部分組成。為提高運(yùn)行速度,用PC語言進(jìn)行程序設(shè)計(jì)。

串行通訊主要是通訊協(xié)議和對(duì)異步串行通訊接口的有關(guān)寄存器如通訊線控制寄存器3FBH、通訊狀態(tài)寄存器3FDH、數(shù)據(jù)發(fā)送保持/數(shù)據(jù)接收緩沖寄存器3F8H等進(jìn)行相應(yīng)的設(shè)置和處理。

圖形顯示部分主要有640×350彩色圖形顯示方式的設(shè)置,X、Y坐標(biāo)軸的描繪及圖像點(diǎn)的繪制和清除。鑒于PC語言較繁雜,在此不具體介紹。

5 效果實(shí)例

圖2、圖3分別是RC充放電A/D電路和RC微分A/D電路,圖4、5、6分別為電容充電(按下按鈕1)、放電(按下按鈕2)、微分(按下按鈕3)過程的波形圖;每調(diào)整一下電位器,曲線就相應(yīng)變化;圖形清晰、翔實(shí)、實(shí)時(shí)性好,真實(shí)、生動(dòng)地描繪了上述過程電容電壓的實(shí)際變化情況,使用非常方便。



在PC已經(jīng)非常普及的情況下,花幾百元配置這樣一個(gè)系統(tǒng),是非常值得的。如果再加上器和調(diào)理電路,其用途將會(huì)非常廣泛。



關(guān)鍵詞: 傳感 存儲(chǔ) 編程 匯編

評(píng)論


技術(shù)專區(qū)

關(guān)閉