測·控領域專業互動媒體平臺
推動測試測量,檢測診斷,傳感物聯,遙測自控智能化發展
當前位置:CK365測控網 > 技術中心 > 典型應用 >

高精度AD芯片ADS8364在生理信號數據采集中的應用

中電網 2005-09-27 00:00:00

華中科技大學電子與信息工程系 王忠友 吳鴻修

    由于生物體微弱的電信號和豐富的信息量,在生物體多參數測量中,高精度采集也就顯得尤為重要。基于此我們研制的生理信號采集系統的采集電路部分采用了ADS8364和DS87C520單片機。

ADS8364是美國TI公司的一種高速、低能耗、6通道同步采樣轉換,單+5V供電的16位高速并行接口的高性能模數轉換芯片,片上帶2.5V基準電壓源,可用作ADS8364的參考電壓。每片ADS8364實際由3個轉換速率為250ksps(當外部時鐘為5MHz)的ADC構成,每個ADC有2個模擬輸入通道,每個通道都有采樣保持器,3個ADC組成3對模擬輸入端,可同時對其中的1~2對輸入信號同時采樣保持,然后逐個轉換。由于6個通道可以同時采樣,很適合用于需同時采集多種信號的場合。


ADS8364前端調理電路

由于輸入的模擬信號變化范圍較大,通常不是AD芯片所要求的范圍,在高精度、高要求的AD采樣電路中,為使輸入的模擬信號與AD采樣所需求的信號相匹配,通常在AD采樣電路前加入前端調理電路,以縮放和平移要采樣的信號,從而使調理后的信號適合A/D轉換器的模擬輸入要求。圖1是ADS8364一個輸入通道的前端調理電路。

ADS8364模擬輸入通道+IN和-IN的最大電壓輸入范圍為-0.3V~+6V(ADS8364用+5V供電)。圖1電路中使用了2個運放,A2用作跟隨器,用來緩沖ADS8364輸出的2.5V基準電壓;A1和四個電阻構成了信號調理網絡,適當配置R1~R4電阻可以實現對輸入信號Vi的縮放和平移,以適合ADS8364模擬通道的輸入要求。由于R5
=R6則+IN端的輸入電壓為:

這樣,在保證V+IN=0~5V的前提下,Vi可以是雙極信號,調整R2、R4的比例使Vi有合適的輸入范圍。表1是針對不同雙極性模擬輸入的配置實例。

ADS8364與單片機連接電路

ADS8364與單片機連接電路見圖2。ADS8364轉換后的結果可通過兩種方式輸出:①當BYTE=0時,以DB0~DB15
16位輸出;②當BYTE=1時,則轉換結果分兩個字節從DB0~DB7讀出,此時采用8位單片機讀取非常方便。

本系統中采用8位單片機,根據要求ADS8364的BYTE設為高電平,在第一個/RD信號里,輸出低8位數據,第二個RD信號后讀出高8位。ADS8364的/HOLDA、/HOLDA
、/HOLDC信號由單片機P1口的P1.0輸出的信號控制;A0~A2通過DS87C520的P0口輸出,控制線ADD硬件接低電平。圖2是DS87C520與ADS8364的連接電路。


系統采用與DS87C520相連的GAL16V8時給出ADS8364的地址為5000H,當DS87C520的/WR=0,且ADS8364的/CS=0時DS87C520將通過數據口對ADS8364寫入控制字;當DS87C520的P1.0=0時才開啟ADS8364進行AD轉換,轉換結束后的信號/EOC對DS87C520發出中斷請求,則DS87C520在/RD=0時響應中斷請求,讀取ADS8364的轉換結果。

數據采集

ADS8364轉換器初始化操作

AD轉換前,首先要進行控制字的寫入,信號ADD、A0、A1、A2的設置,配合TYPE確定了數據的輸入和輸出方式,/RESET、/HOLDA、
/HOLDB和/HOLDC的設置可對AD轉換的數據輸出寄存器進行清除操作和其
他復位操作。信號對應控制字的各位見表2。

寫入控制字時,在軟件命令控制下根據ADS8364的口地址,在/CS有效時將表中數據通過低8位數據線寫入ADS8364內部寄存器。
軟件命令時序如圖3所示。

ADS8364的轉換啟動與數據讀取

系統的最終目標是要獲取數據,然后進行處理。根據TYPE、ADD、A0、A1和A2,DS87C520需三次讀完一路轉換的數據,DS87C520控制ADS8364轉換和讀取轉換結果的C51程序如下(寫入外部數據RAM的程序省略):

#include <reg52.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>
#include <intrins.h>
#include <absacc.h>


sbit p10=P1^0;
#define uint unsigned int
#define uchar unsigned char
#define ADS_A0 XBYTE[0X5000]


#define ADS_C1 XBYTE[0X5005]
uchar xdata *Sample;
void delay(uchar n) //延時模塊
{
uchar i;
for(i=0;i<n;i++)
{
_nop_();
}
}
void enable_int0(void) //開中斷
{
EA=1;
EX0=1;
IT0=1;
}
void Start_Conver(void) //啟動6路AD轉換
{
p10=1;
p10=0;
delay(1);
p10=1;
}
void main(void)
{
int i;
p10=1;
Start_Conver();
ADS_A0=0x07; //ADS8364寫入控制字
ADS_A0=0x9e;
EA=0;
while(1){
delay(1);
Start_Conver();
delay(10); //等待轉換結束采集數據
for(i=0;i<18;i++) // 讀取6路轉換數據
{
*Sample++=XBYTE[0X5006];
}
}
}

啟動轉換后,在讀取數據前需要延遲的指令周期數需根據DS87C520和ADS8364的運行速度來調整。


結語

利用ADS8364設計的生理信號采集系統可同時采集多路信號,采集精度高,經初步臨床驗證完全滿足臨床要求。

本文摘自《世界電子元器件》
[整理編輯:CK365測控網]
標簽:  AD芯片[1]    ADS8364[29]    生理信號[2]
 
[ 技術中心搜索 ]  [ ]  [ 好友分享 ]  [ 打印本文 ]  [ 關閉窗口 ]  [ 返回頂部 ]

版權與免責聲明:

①凡本網注明"來源:CK365測控網"的所有作品,版權均屬于CK365測控網,轉載請必須注明CK365測控網 www.fakhmv.com.cn。違反者本網將追究相關法律責任。
②本網轉載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。如其他媒體、網站或個人從本網下載使用,必須保留本網注明的"稿件來源",并自負版權等法律責任。
③如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。

注冊成為CK365測控網會員

可以無需任何費用瀏覽專業技術文章

 
 
注冊CK365測控網會員以便瀏覽全文
 
 
老时时彩个位走势
李嘉诚的理财之道 网球比分直播 投资理财一万变三万 日本av女优性爱片 湖北快3 网球比分和淄博 河南快赢481 老时时彩 10万元买理财还是国债 雪缘园足球即时指数 青海快3 线上棒球比分 足球比分直播500 场外配资合同是什么 腾讯分分彩 极速飞艇