馮忠?guī)X,童英華,陳學(xué)煌
(1.青海師范大學(xué) 物理系,青海 西寧 810008;2.青海師范大學(xué) 計(jì)算機(jī)系,青海 西寧 810008)
心音和脈搏是反映人體生理及病理的兩項(xiàng)重要指標(biāo),它們分別是診斷人體疾病的重要手段之一,具有非常重要的臨床意義。只有將心音、脈搏信號(hào)進(jìn)行有效的A/D轉(zhuǎn)換成數(shù)字量后,才能輸入單片機(jī)中進(jìn)行處理,這也直接影響著PC端的波形顯示效果,以及后續(xù)的信號(hào)分析。因此筆者提出了基于ADC0809的心音、脈搏信號(hào)的A/D轉(zhuǎn)換。
ADC0809是帶有 8位 A/D轉(zhuǎn)換器、8路多路開(kāi)關(guān)以及微處理機(jī)兼容的控制邏輯的CMOS組件,它的模數(shù)轉(zhuǎn)換原理采用逐次逼近型,芯片由單個(gè)+5 V電源供電,可以分時(shí)對(duì) 8路輸入模擬量進(jìn)行 AD轉(zhuǎn)換,典型的 AD轉(zhuǎn)換時(shí)間為 100 μs左右。在同類(lèi)型產(chǎn)品中,ADC0809模數(shù)轉(zhuǎn)換器的分辨率、轉(zhuǎn)換速度和價(jià)位都屬于居中位置,可以和單片機(jī)直接接口。
如圖1所示,它包含以下幾個(gè)部分。
1)8路模擬量選擇開(kāi)關(guān) 根據(jù)地址鎖存與譯碼裝置所提供的地址,從8個(gè)輸入的0~5 V模擬量中選擇一個(gè)輸出。
2)8位A/D轉(zhuǎn)換器 能對(duì)所選擇的模擬量進(jìn)行A/D轉(zhuǎn)換。
3)3位地址碼的鎖存與譯碼裝置 對(duì)所輸入的3位地址碼進(jìn)行鎖存和譯碼,并將地址選擇結(jié)果送給8路模擬量選擇開(kāi)關(guān)。
4)三態(tài)輸出的鎖存緩沖器 是TTL結(jié)構(gòu),負(fù)責(zé)輸出轉(zhuǎn)換的最終結(jié)果。此結(jié)果可直接連到單片機(jī)的數(shù)據(jù)總線(xiàn)上[1]。
圖1 ADC0809內(nèi)部邏輯結(jié)構(gòu)圖Fig.1 Internal logic structure diagram of ADC0809
1)IN0~I(xiàn)N7:8 路模擬電壓量輸入, 0~5 V 或者-5~+5 V或者-10~+10 V,用于輸入需轉(zhuǎn)換的模擬電壓;
2)D0~D7:8 位 A/D 轉(zhuǎn)換結(jié)果輸出口;
3)VREF(+)、VREF(-):參考電壓輸入線(xiàn),VREF(+)常和VCC相連,VREF(-)常接地或負(fù)電源電壓;
4)ALE:地址鎖存允許輸入線(xiàn),高電平有效;在 ALE=1時(shí),鎖存ADDA-ADDC,選中模擬量輸入。
5)START:?jiǎn)?dòng)A/D轉(zhuǎn)換控制輸入,加正脈沖后 A/D轉(zhuǎn)換開(kāi)始;
6)CLOCK:實(shí)時(shí)時(shí)鐘,頻率范圍為 10~1 280 kHz,典型值為640 kHz。
7)ADDA、ADDB、ADDC:3 位地址輸入線(xiàn), 其 8 個(gè)地址值分別選中8路輸入模擬量IN0~I(xiàn)N7之一進(jìn)行模數(shù)轉(zhuǎn)換。ADDC是高位地址,ADDA是最低位地址;選擇結(jié)果如表1所示。
8)OE:轉(zhuǎn)換結(jié)果輸出允許線(xiàn)。
9)EOC:轉(zhuǎn)換結(jié)束信號(hào)。轉(zhuǎn)換開(kāi)始時(shí),EOC信號(hào)變低電平;轉(zhuǎn)換結(jié)束時(shí),EOC信號(hào)返回高電平。該信號(hào)可以作為CPU查詢(xún)A/D轉(zhuǎn)換是否完成的信號(hào),也可以作為向CPU發(fā)出中斷申請(qǐng)的信號(hào)。
10)VCC:+5 V 電源輸入線(xiàn)。
11)GND:芯片接地端。
表1 地址與模擬量通道之間的對(duì)應(yīng)關(guān)系Tab.1 Correspondence between analog channel and address
1)地址線(xiàn)與數(shù)據(jù)線(xiàn)的連接 ADC0809的內(nèi)部輸出電路有三態(tài)緩沖器,所以其8位輸出數(shù)據(jù)線(xiàn)可以直接和AT89C51的P1口相連。本系統(tǒng)中有兩路模擬量(心音、脈搏)的輸入,它的通道地址選擇信號(hào)ADDB、ADDC接地,而ADDA接到單片機(jī)的P2.6口,用于選擇輸入的模擬量IN0和IN1。
2)時(shí)鐘信號(hào)的連接 ADC0809必須外接時(shí)鐘,本系統(tǒng)借用AT89C51的ALE輸出,AT89C51的晶振率采用11.059 2 MHz,此時(shí)ALE的頻率約為2 MHz,經(jīng)CD4013芯片四分頻后約為 500 kHz,與 ADC0809的CLK時(shí)鐘端相連[2-3]。
3)控制信號(hào)的連接 由于ADC0809的ALE和START均為正脈沖,而且基本同步,所以可以由AT89C51的P2.7和WR或非而成。同理,OE信號(hào)也可以由AT89C51的P2.7和RD或非而成。EOC信號(hào)經(jīng)或非后與AT89C51的INT1相連,可申請(qǐng)中斷。在控制信號(hào)線(xiàn)的連接中,或非功能的實(shí)現(xiàn)可以借助芯片74LS02實(shí)現(xiàn)[4]。圖2是系統(tǒng)的部分原理圖。
A/D轉(zhuǎn)換程序用來(lái)控制對(duì)ADC0809兩路模擬輸入信號(hào)(心音和脈搏)的轉(zhuǎn)換,并將對(duì)應(yīng)的數(shù)值分別存放到外存數(shù)據(jù)段1和外存數(shù)據(jù)段2中,數(shù)據(jù)的讀取方式采用中斷讀取。根據(jù)電路采用中斷讀取的方式,ADC0809的轉(zhuǎn)換控制如下:選擇通道并啟動(dòng)轉(zhuǎn)換,等待中斷讀取轉(zhuǎn)換結(jié)果[5-6]。A/D轉(zhuǎn)換子程序的流程圖如圖3所示。
圖2 系統(tǒng)前端硬件原理圖Fig.2 Front hardware schematic of the system
圖3 ADC0809轉(zhuǎn)換子程序流程圖Fig.3 Flow chart of ADC0809 conversion subroutine
A/D轉(zhuǎn)換主要程序代碼為:
START: MOV SP,#60H
SETB EA
SETB IT1;∥外部中斷發(fā)生負(fù)跳變時(shí)激活I(lǐng)E1外
部中斷請(qǐng)求標(biāo)志位
SETB EX1;∥外部中斷INT1響應(yīng)允許位
MOV R1,#00H
CLR P2.6 ;∥使ADDA為0,選擇通道0
MOV DPTR,#DATA1
START1: CLR P2.5;∥外部存儲(chǔ)器6264的片選信號(hào)有效
CLR P2.7;∥使得A/D的ALE和START均為正
脈沖
MOVX@DPTR,A ;∥啟動(dòng) A/D轉(zhuǎn)換
LOOP1: SJMP$
INT_1: MOVX A,@DPTR ;∥讀取轉(zhuǎn)換結(jié)果,并存入外存
MOV A,P1
MOVX@DPTR,A
INC DPTR
INC R1
CJNE R1,#N,LOOP2;∥采樣數(shù)據(jù)個(gè)數(shù)為 N 個(gè)
JB P2.6,LOOP8
SJMP LOOP9
LOOP8:CPL P2.6
MOV R1,#00H
MOV DPTR,#DATA1
MOVX@DPTR,A ;∥啟動(dòng) A/D轉(zhuǎn)換
SJMP LOOP2
LOOP9:CPL P2.6
MOV R1,#00H
MOV DPTR,#DATA2
MOVX@DPTR,A ;∥啟動(dòng) A/D轉(zhuǎn)換SJMP LOOP2
LOOP2:RETI
調(diào)試結(jié)果表明,該A/D轉(zhuǎn)換模塊能有效地實(shí)現(xiàn)心音、脈搏信號(hào)的模數(shù)轉(zhuǎn)換。這就為以后輸入單片機(jī)處理,從單片機(jī)到PC機(jī)端的數(shù)據(jù)發(fā)送,以及信號(hào)波形的顯示和后續(xù)的信號(hào)分析奠定了基礎(chǔ)。
[1]張曄,王玉民,倪志蓮.單片機(jī)應(yīng)用技術(shù)[M].北京:高等教育出版社, 2006:193-196.
[2]李詩(shī)海.CD4013 原理與應(yīng)用[J].電子制作,2000(1):38.LI Shi-hai.Theory and application of CD4013[J].Electronic Production,2000(1):38.
[3]王卿.淺談器件 CD4013[J].新余高專(zhuān)學(xué)報(bào),2005(2):34-36.WANG Qin.Simple analysis of CD4013[J].Journal of Xinyu Junior College[J],2005(2):34-36.
[4]周美娟.肖來(lái)勝.單片機(jī)技術(shù)及系統(tǒng)設(shè)計(jì)[M].北京:電子工業(yè)出版社,2007:215-227.
[5]張迎新.單片機(jī)原理及應(yīng)用[M].北京:電子工業(yè)出版社,2008:141-157.
[6]趙領(lǐng)國(guó),薛園園.51單片機(jī)開(kāi)發(fā)與應(yīng)用技術(shù)詳解[M].北京:電子工業(yè)出版社,2009:372-380.