AC1820AC1830使用手册模板.docx
《AC1820AC1830使用手册模板.docx》由会员分享,可在线阅读,更多相关《AC1820AC1830使用手册模板.docx(17页珍藏版)》请在冰点文库上搜索。
AC1820AC1830使用手册模板
AC1820AC1830
使用手册
✧AC1820:
12位800KHZA/D板
✧AC1830:
16位200KHZA/D板
W&WLAB
©1999.5.
AC1820
使用手册
简介
AC1820提供16路单端输入12位AD转换,AD转换速度最快为800KHZ,支持1-16路的波形信号的采集。
AC1820采用板上RAM存储方式,可以脱机采样,适合WINDOWS系统的应用。
AC1820板上带128K字RAM,可以扩充到512K字。
AC1820适合:
中高速信号、波形采集及记录等应用场合。
性能、指标:
模拟部分
●16路单端输入。
输入范围-5V-+5V,输入建立时间小于1微秒
●输入通道自动扫描,可以程控从任意通道开始到任意通道结束。
输入采用DB25(孔)插座。
●12位800KHZAD(ADS7819),分辨率12位,系统精度0.1%,RMS噪音小于1.5LSB,多通道时每通道的采样速度:
800K/通道数量。
●输入最大耐压±12V,输入阻抗大于100M。
工作方式:
●板上自带128KX16BITRAM,可以扩充到512K字,存储方式
●AD启动方式:
软件、外部触发(上升边沿有效)
●AD转换控制:
板上16位定时器(4MHZ基准)、外部时钟输入
●外部触发电平:
TTL电平
●外部时钟输入:
TTL电平
●板上时钟:
4MHZ基准,16位分辨率,程控转换速度800KHZ-16毫秒。
●程控采样长度,16位计数器+16倍分频器控制。
采样长度16-512K,程控。
●中断占用:
IRQ10,11,12,15跳线器选择
●AD数据读入采用16位ISA总线,16位操作。
其它:
●译码地址:
100H-3FFH
●开关量DIO,8入及8出,TTL电平,输入电流小于0.5毫安,输出电流大于5毫安。
采用20PIN扁平电缆插座。
●尺寸:
20X12厘米,+5V供电,ISA总线插卡。
●板上DC-DC为模拟部分供电。
●工作温度范围:
0-70度。
§1:
简介
§2:
跳线器设置
2-1:
IO地址设置
2-2:
中断
§3:
IO译码与编程
§4:
软、硬件说明及编程
4-1安装
4-2原理
4-3编程
§5:
跳线器位置与连接器定义
§2跳线器设置
2-1:
S1I/O地址选择
S1-6位跳线选择器是AC1820的I/O地址选择跳线器,位于AC1820板的中下部分。
AC1820占用4位A0-A3地址线,I/O译码由A4-A9,6位决定,AC1820的I/O空间为100H-3FFH。
S1按二进制方法定,S1的1号跳线位置对应选择地址A4.......6号对应A9。
S1的相应位为“跳线器短路-表示为“X”“时,对应选择相应位为“0”,“开路-表示为“-”“时对应选择相应位为“1”。
S2的选择方式如下,S1的设置地址为300H。
S1
A4
A5
A6
A7
A8
A9
X
X
X
X
-
-
1
2
3
4
5
6
AC1820的实际操作地址:
ADR=偏移地址(OFFSET)+基地址(BASE)
BASE由S1选择,为100H-3FFH。
例:
欲选择ADR=300H,上面是S1=300H的设置方法(*此地址为出厂时的缺省地址)
注:
1AC1056的译码地址为:
100-3FFH
2PC常用I/O地址:
210H-26FH,280H-2EF0H,300-36FH
2-2:
S3中断选择
S3用于选择AC1820的中断,S3的1,2,3,4四个位置对应选择中断10,11,12,15号。
如果不用中断,可以将短路器去掉。
§3IO译码地址及使用说明
AC1820占用16个IO译码地址,对应四条地址线A0-A3,地址的偏移分配如下(OFFSET):
偏移
读操作
写操作
0H
状态字,STATE
设置起始及结束通道号,CH
1H
REW,AC1820复位
启动RUN
2H
16操作,读RAM数据,RADN
4H
模式字,MODE
8H
8位开关量输入,DIN
8位开关量输出,DOUT
CH
定时器通道0,TD
DH
采样长度计数通道1,LD
FH
定时器初始化,TCNRL
附:
常用的IO操作命令:
读:
MSC:
i=inp(adr),i=inpw(adr)(16BITI/O)
TC:
i=inportb(adr)i=inportw(adr)(16bitI/O)
VBDLLi=vbinp(adr)i=vbinpw(adr)
写:
MSC:
outp(adr,data)
TC:
outportb(adr,data)
VBDLLvboutadr,data
说明:
0H读,STATE:
读入状态
读入数据的8位D0-D7的D0位有效,其余可以忽略,定义如下:
D0=0:
AD转换结束
D0=1:
AD正在转换
0H写,CH:
设置起始及停止采样通道号
AC1820支持自动通道扫描,即用户可以设置采样的起始及结束通道号码,启动后AC1820自动按照从起始到结束通道号码的顺序自动/循环转换通道并进行采样,直到采集到用户定义的采样长度后结束。
对0H偏移进行连续二次写入操作,设置通道模式。
注意:
必须进行连续二次同样的通道设置操作。
CH的8为数据D0-D7定义:
D0-D3=0-15,对应采样的起始通道号STARTCH
D4-D5=0-15,对应采样的结束通道号,STOPCH
注意:
STOPCH必须大于或等于STARTCH。
1H写,RUN:
写入1H偏移,启动AC1820。
AC1820的二种启动模式下,RUN的作用:
1.AC1820在软件启动模式时,启动后AC1820开始运行。
2.AC1820在外部触发模式时,启动后在外部触发有效(上升边沿输入到来)后,AC1820开始采样
2H16位读,功能:
读取RAM中的数据,16位IO操作。
当检测AC1820转换结束或中断有效时,用户一次将RAM中的16BIT采样数据顺序读走,即对2H口进行设置采样长度的连续读入操作。
数据转换:
数据DATA为12位补码,范围DATA=0H-FFFH,对应12位采样数据,定义如下:
双极性输入(0-±5V):
16进制10进制对应电压
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
0H0+0V
3FFH1023+2.5V
7FFH2047+5V
800H2048-5V
C00H3072-2.5V
FFFH4095-0V
DATA如果转换为12位有符号数,既:
DATA=DATA*16/16
电压V=DATA×5000/(2048)(毫伏)
数据顺序:
RAM中的数据存放顺序是按照通道采样顺序顺序存放的,例如起始通道为N,结束通道为M,顺序为:
N,N+1,....,M,N,N+1,….,顺序循环存放,M为设置的采样通道的最后一个号码。
4H写,模式控制
MODE:
控制AC1820的触发启动方式及时钟输入选择。
MODE的D0-D7八位的定义:
D0:
启动模式控制
D0=0,软件启动,AC1820在设置完毕后,写入RUN开始工作
D0=1,外部触发启动,设置后,写入RUN后并在外部触发有效后,AC1820启动。
D1:
时钟选择
D1=0,选择板上时钟,AC1820转换依靠板上时钟驱动转换,一次时钟脉冲AD转换一次。
D1=1,选择外部时钟,依靠外部时钟驱动转换,一次外部时钟脉冲的上升边沿启动AD一次转换。
1H读,REW-复位AC1820
对1H偏移量进行一次读入操作,复位AC1820。
在设置AC1820前及启动AC1820或进行读数前应该进行REW操作。
如果用户中途希望停止AC1820的操作,写入REW即可。
功能:
复位AC1820及停止AC1820的采集。
8H读、写,开关量操作
AC1820具有8个开关量输入及8个开关量输出(带锁存)口。
7H的读操作的8位数据D0-D7对应读入开关量的DI0-DI7,7H的写操作的8位数据D0-D7对应设置输出DO0-DO7。
例:
读入DI放在DATAIN中,同时输出8位数据AAH。
#include
main()
{
intdatain;
intdatao=0xaa;
datain=inp(0x308);
outp(0x308,datao);
}
C、D、FH定时器设置
AC1820的板上定时器为8253或8254,应用定时器必需对8253进行设置及初始化。
初始化包括控制字(FH写),通道0,1的16位数据。
注意8253的数据为16位,必需连续分二次写入,第一次为低8为,第二次为高8位。
AC1820的板上基准时钟为4HMZ,250nS。
FH:
的初始化操作为连续写入二个控制字,控制字为:
34H74H。
DH:
AC1820采样长度控制计数器,AC1820的采样长度:
L=LD*16,LD计数器设置的16位数值
CH:
决定AD采样周期,采样周期为:
T=0.25uSXN(微秒)
例:
设置AC1820的采样为软件启动、内时钟、采样起始通道为1,停止通道为15,采样周期为1.25微秒(800KHZ,数据=5)。
采样长度为l=10000
#include
inttdata=5;
intmode=0;
intstartch=1;
intstopch=15;
unsignedintl=10000;
main()
{
inti,j,k;
//rew
I=inp(0x301);
//通道
i=startch+stopch*16;
outp(0x300,I);
outp(0x300,I);
//mode
outp(0x304,mode);
//timercnrl
outp(0x30f,0x34);
outp(0x30f,0x74);
//timer1‘sdata
outp(0x30c,5);
outp(0x30c,0);
//sampling长度
outp(0x30d,l&0xff);
outp(0x30d,l>>8);
}
§4软、硬件说明及编程
4-1:
安装
1.关闭PC机电源
2.设置AC1820的IO地址、中断及输入选择跳线
3.插入AC1820,并将接线连接好
注意:
1.模拟输入连线必需采样屏蔽电缆,电缆的屏蔽外层只能在一端连接到地线。
2.输入的模拟地用于模拟信号的地线,数字地用于外部触发等输入的数字信号地(如果不用,可以悬空)。
二个地线不能在AC1820上连接,如果需要可以在前端接地。
3.模拟输入电压不能超过,±15V,外部触发。
外部时钟输入电压不能超过5V,不能小于0V。
4-2:
AC1820原理
AC1820由模拟输入转换开关,AD转换器,数据存储RAM,采样控制等部分构成。
AD转换采用12位800KHZ模数转换器,输入16通道自动扫描,通道的起始与结束通道可以程控。
同时提供软件触发与硬件触发二种启动模式。
板上8253的通道0,提供4MHZ基准时钟的16位定时器,用来控制采样周期。
8253的通道1提供采样长度计数的功能。
框图:
16路输入DB2516:
1A/D128K×16
插座多路开关RAM
16位定时器通道控制
4MHZ采样控制地址计数器
外部时钟
外触发
8路DIPC总线
开关量8路DO
AC1820的16路模拟量与外部触发、时钟输入由DB25(控)-P1输入,DIO8人、8出由P2-20PIN扁平电缆输入,定义见§5章。
4-3:
采样控制与编程
读数:
AC1820的RAM中等数据按用户设置的采样通道数顺序从地址“0”开始存放在RAM中,数据宽度为16位,其中低12位为采样有效数据,高4位自动设置为“0”。
例:
起始通道为“0”,结束通道为“N”,数据顺序为:
数据:
012…N,(N+1),(N+2),…
通道:
012…N,0,1,…
读数时,应用REW复位操作将地址复位到“0”,用户连续从2H偏移量口读入数据,等效顺序从第一个采样电开始读入数据。
AC1820采样数据的校正:
AD转换结果为DATA=0-4095,12位,对应的电压变换见上一章,“2H读操作”一段。
AC1820的工作模式:
●AD的启动模式:
软件、硬件触发(上升边沿有效)
软件启动:
设置AC1820的模式、定时器后,启动AC1820,AD开始采样。
硬件触发:
设置AC1820的模式、定时器后,启动AC1820,当由外部触发输入时,AD开始采样。
●时钟模式:
AC1820支持板上时钟(4M基准,16位可编程定时器)或外部时钟。
当外部或板上时钟触发到来时,AC1820将会对通道0-用户设置停止通道进行一轮采样。
AC1820的编程顺序:
1.REW,复位1820
2.设置采样起始及结束通道,并进行二次连续写入CH操作
3.设置工作模式(MODE)
4.设置定时器及采样长度控制字、初始化数据
5.REW复位
6.启动AC1820
7.判断0H读状态的D0是否为“0”
8.是,采样结束。
9.写入REW,复位地址计数器
10.读入采样数据放在用户数组中
例:
设置AC1820
软件启动、应用板上定时器,周期1.25微秒(数据为5),起始通道为0,停止通道为15(16个采样通道)。
采样数据放在DATA中,采样长度为16000。
#include
intdata[20000];
inttdata=5;
intstartch=0;
intstopch=15;
longsaml=16000;
main()
{
inti,j,k;
longl;
//rew
I=inp(0x301);
//channel
I=startch+stopch*16;
Outp(0x300,I);
Outp(0x300,I);
//mode
out(0x304,0);
//timercnrldata
outp(0x30f,0x34);
outp(0x30f,0x74);
//timer1‘sdata,samlength
l=saml/16;
outp(0x30d,(l)&0xff);
outp(0x30d,(l>>8));
//samplespeedcnrl
outp(0x30c,tdata&0xff);
outp(0x30c,tdata>>8);
//rew
I=inp(0x301);
//run
outp(0x301,0);
//ifsamend?
do{
j=inp(0x300)&1;
}while(i!
=0);
//rddata
//rew
I=inp(0x301);
for(l=0;l{
data(dpt+l)=inpw(0x302);
}
在AC1820的附送盘中,有二个子程序
●ac1820_ini(inttdata,longsaml,intstartch,intstopch,inttrsl,intclksl)
功能:
初始化AC1820。
trsl:
=0软件启动,=1硬件触发
clksl:
=0应用板上时钟,=1应用外部时钟
startch:
采样起始通道,=0-15
stopch:
采样停止通道,=0-15
tdata:
采样速度控制定时器数据,采样速度=4000/tdata(KHZ)
saml:
长整形,采样长度,16-128K
●ac1820_sam(int*data_pr,longsam_l)
功能:
启动AD,判断采样结束,从RAM中读取长度为sam_l长的数据,放在data_pr指向的数组中。
上面的例子可以应用以上子程序,如下:
#include
intdata[16000];
unsignedinttdata=5;
main()
{
inti,j,k;
//ini
ac1820_ini(tdata,16000L,0,15,0,0);
//sampling
ac1820_sam(data,16000L);
}
在AC1820的附送盘中,有如下DLL程序
●初始化AC1820,并启动AD转换
integerac1820_ini(base,tdata,saml,startch,stopch,trsl,clksl)
base:
16bit整形,AC1830的跳线器选择的基地址
tdata:
16bit整形,定时器初始化数据=5-65535
saml:
32bit长整形,采样长度,16-128K
startch:
16bit整形,采样起始通道
stopch:
16bit整形,采样结束通道
trsl:
16bit整形,触发选择,=0软件,=1外部触发
clksl:
16bit整形,时钟选择,=0板上时钟,=1外部时钟
例:
I=ac1820_ini(&H300,20,1000,0,15,0,0)
采样通道0-15,速度200KHZ,长度1000,设置地址300H,软件触发,应用板上时钟。
●判断AC1820转换是否结束,如果结束从RAM中读入长度为SAML的数据
integerac1820_rd(base,data(0),saml)
功能:
1.判断转换是否结束,如果AC1820_RD的返回值为“0”,表示AD转换正在进行。
如果返回数值为“1”,表示转换结束并DATA数值中等数值有效。
2.从AC1820的板上RAM中读入数据放在DATA数组中,数据长度为SAML,数据=-2048-+2047,对应电压-5V-+5V,电压V=数据*5000/2048(毫伏)。
注意:
此函数传递的是数组指针或地址,VB声明中应用BYREF声明,C语言应用指针变量。
BASE:
16位整形,AC1820的基地址
DATA(0):
VB定义的16位整形数组的第一个单元,或C语言中的指针
SAML:
LONG32位长整形。
例:
设置AC1820采样长度1000,速度200KHZ,起始通道/结束通道为0、15,软件启动,板上时钟,采样数据存放在DATA中,BASE地址为300H。
Dimdata(10000)asinteger
Dimsamlaslong
REM初始化
Saml=1000
i=ac1820_ini(&h300,20,saml,0,15,0,0)
REM判断转换结束并读数
do
I=ac1820_rd(&h300,data(0),saml)
LoopuntilI=1
●8位DIO操作
integerac1820_do(base,data)
写入8位DO数据DATA(整形,低8位有效)
integerac1820_di(base)
读入DI的8位数据,由AC1820_DI返回。
注意:
1.DLL库必须放在WINDOWS的SYSTEM的目录下或当前工作目录中或在DLL的VB模块声明中给出详细的路径。
2.AC1820.BAS为一个VB的声明模块,可以在VB的模块选项中插入
4-4DIO
开关量由P2-20PIN扁平电缆插座输入、输出。
P2的定义见下一章。
DIO的操作直接对8H偏移口进行读写即可。
§5跳线器位置与插座定义
5-1:
跳线器位置
P2P1
S3S1
16
5-2插座定义:
P2:
2468101214161820
135791113151719
缺口
脚:
1,2,3,4,5,6,7,8:
对应开关量输入通道DI0-DI7。
脚:
11,12,13,14,15,16,17,18:
对应开关量输出DO0-DO7
脚:
9,10,19,20:
GND
P1:
DB25插座
插座上标记有脚的号码。
脚:
1,2,3,4,5,6,7,8对应模拟输入0-7通道。
脚:
14,15,16,17,18,19,20,21对应输入通道8-15。
脚:
9,22:
模拟GND
脚12:
外部触发输入
脚13:
外时钟输入
脚25:
数字GND(触发与时钟输入应用)