AC1810使用手册Word下载.docx
《AC1810使用手册Word下载.docx》由会员分享,可在线阅读,更多相关《AC1810使用手册Word下载.docx(17页珍藏版)》请在冰点文库上搜索。
![AC1810使用手册Word下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/4/ca3e0323-522b-4047-bb11-b4624c0387d2/ca3e0323-522b-4047-bb11-b4624c0387d21.gif)
IRQ10,11,12,跳线器选择
AD数据读入采用16位ISA总线,16位操作。
其它:
译码地址:
100H-3FFH
开关量DIO,8入及8出,TTL电平,输入电流小于0.5毫安,输出电流大于5毫安。
采用20PIN扁平电缆插座。
尺寸:
20X12厘米
板上DC-DC为模拟部分供电。
工作温度范围:
0-50度。
§
1:
简介P1
2:
跳线器设置P5
2-1:
IO地址设置
2-2:
中断
2-3:
输入范围
3:
IO译码与编程P7
4:
软、硬件说明及编程P15
4-1安装P15
4-2原理P15
4-3编程P17
5:
跳线器位置与连接器定义P24
2跳线器设置
2-1:
S1I/O地址选择
S1-6位跳线选择器是AC1810的I/O地址选择跳线器,位于AC1810板的中下部分。
AC1810占用4位A0-A3地址线,I/O译码由A4-A9,6位决定,AC1810的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
-
1
2
3
4
5
6
AC1810的实际操作地址:
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模拟输入极性选择
AC1810可以工作在单极性或双极性状态。
S3三针跳线器可选择1-2或2-3二个位置,定义输入范围:
1-2位置:
对应单极性输入(UNI),0-10V基本量程。
2-3位置:
对应双极性输入(BIP),0-±
5V(对应S4跳线器为1,2位置)或0-±
10V(对应S4跳线器为2,3位置)
2-3:
S4双极性量程选择
注意:
S4跳线器只对双极性输入有效。
有两档双极性输入方式量程可供用户选择,1-2短路:
0-5V、2-3短路:
0-10V。
*注意:
S3,S4应结合使用。
S4的1,1相连时,单、双极性均可选。
但,S4的2,3相连时,只能选择双极性。
2-4:
S2中断选择
S2用于选择AC1810的中断,S3的1,2,3三个位置对应选择中断10,11,12号。
如果不用中断,可以将短路器去掉。
3IO译码地址及使用说明
AC1810占用16个IO译码地址,对应四条地址线A0-A3,地址的偏移分配如下(OFFSET):
偏移
读操作
写操作
0H
状态字,STATE
1H
启动RUN
2H
16操作,读FIFO数据
4H
模式字,MODE
5H
REW,AC1810复位
7H
8位开关量输入,DIN
8位开关量输出,DOUT
CH
定时器通道0,TD0
DH
定时器通道1,TD1
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)
outportB(adr,data)
VBDLLvboutadr,data
说明:
0H读,STATE:
读入状态
读入数据的8位D0-D8定义如下:
D0=0:
FIFO半满
D1=0:
FIFO溢出
D2=1:
外部触发有效
其它无用
1H写,RUN:
写入1H偏移,启动AC1810。
AC1810的二种启动模式下,RUN的作用:
1.AC1810在软件启动模式时,启动后AC1810开始运行。
2.AC1810在外部触发模式时,启动后在外部触发有效(上升边沿输入到来)后,AC1810开始采样
2H16位读,功能:
读取FIFO中的数据,16位IO操作。
当检测到FIFO半满或AC1810中断有效时,用户一次将FIFO中的512个16BIT采样数据读走。
数据转换:
数据范围DATA=0-4095,对应12位采样数据,定义如下:
单极性输入:
电压V=DATA×
10000/4095(毫伏)
双极性输入:
当输入设置为0-±
5V时:
V=(DATA-2048)×
5000/(2048)(毫伏)
输入为0-±
10V时,
10000/(2048)(毫伏)
数据顺序:
FIFO中的数据存放顺序是按照通道采样顺序顺序存放。
即:
0,1,....,N,顺序循环存放,N为设置的采样通道的最后一个号码。
4H写,模式控制
MODE:
控制AC1810的通道转换路数、启动方式及时钟输入选择。
MODE的D0-D7八位的定义:
D0:
启动模式控制
D0=0,软件启动,AC1810在时钟完毕后,写入RUN开始工作
D0=1,外部触发启动,设置后,写入RUN后并在外部触发有效后,AC1810启动。
D1:
时钟选择
D1=0,选择板上时钟,AC1810转换依靠板上时钟启动
D1=1,选择外部时钟,依靠外部时钟驱动。
D4、D5、D6:
选择采样的通道的停止通道号(STOPCH)
D4-D6=0-7,对应选择采样的通道数为0-7道,采样永远从通道0开始,D4-D6定义的为结束通道,AC1810的通道号为:
0-7。
5H写,REW-复位AC1810
写入5H偏移量,复位AC1810。
在设置AC1810前及启动AC1810前应该进行REW操作。
如果用户中途希望停止AC1810的操作,写入REW即可。
功能:
复位AC1810及停止AC1810的采集。
7H读、写,开关量操作
AC1810具有8个开关量输入及8个开关量输出(带锁存)口。
7H的读操作的8位数据D0-D7对应读入开关量的DI0-DI7,7H的写操作的8位数据D0-D7对应设置输出DO0-DO7。
例:
读入DI放在DATAIN中,同时输出8位数据AAH。
#include<
conio.h>
main()
{
intdatain;
intdatao=0xaa;
datain=inp(0x307);
outp(0x307,datao);
}
C、D、FH定时器设置
AC1810的板上定时器为8253或8254,应用定时器必需对8253进行设置及初始化。
初始化包括控制字(FH写),通道0,1的16位数据。
注意8253的数据为16位,必需连续分二次写入,第一次为低8为,第二次为高8位。
AC1810的板上基准时钟为4HMZ,250nS。
FH:
的初始化操作为连续写入二个控制字,控制字为:
34H74H。
DH:
连续写入二个8位数据为:
40(28H)及0H
CH或外时钟控制AC1810的转换周期,即每隔多少时间AC1810进行一轮转换(同时采集用户设置的通道)。
DH的数据控制一轮中AD的采样速度,AD转换速度为10微秒,基准时钟为4MHZ,因此16位数据为0028H(40)。
CH:
决定N个通道的采样周期(N为MODE中设置的采样通道数量),采样周期为:
T=10uS+10uSXN(微秒)
N为通道数,即MODE中的STOPCH+1。
10微秒为采样保持器需要的建立时间。
AC1810的采样时间控制不同与通常的AD卡,定时器控制的时通道采样一轮的时间,而不是每一个通道的采样时间。
设置AC1810的采样为软件启动、内时钟、采样停止通道为7(8个通道),采样周期为100微秒(数据=400)。
inttdata=100*4;
mode=0x70;
inti,j,k;
//rew
outp(0x305,0);
//mode
outp(0x304,mode);
//timercnrl
outp(0x30f,0x34);
outp(0x30f,0x74);
//timer1’sdata
outp(0x30d,40);
outp(0x30d,0);
//samplingT
outp(0x30c,tdata&
0xff);
outp(0x30c,tdata>
>
8);
4软、硬件说明及编程
4-1:
安装
1.关闭PC机电源
2.设置AC1810的IO地址、中断及输入选择跳线
3.插入AC1810,并将接线连接好
1.模拟输入连线必需采样屏蔽电缆,电缆的屏蔽外层只能在一端连接到地线。
2.输入的模拟地用于模拟信号的地线,数字地用于外部触发等输入的数字信号地(如果不用,可以悬空)。
二个地线不能在AC1810上连接,如果需要可以在前端接地。
3.模拟输入电压不能超过,±
15V,外部触发。
外部时钟输入电压不能超过5V,不能小于0V。
4.如果外部地线干扰较大(如电力系统),用户需要用一条粗导线将PC的外壳与前端的地线连接起来。
4-2:
AC1810原理
AC1810输入部分采用8路并行采样保持器,提供同相位采样的能力。
AD转换采用12位100KHZ模数转换器,输入8通道自动扫描(从通道0开始),通道数量可以程控。
同时提供软件触发与硬件触发二种启动模式。
板上提供4MHZ基准时钟的16位定时器,用来控制采样周期。
AC1810的定时器控制,不同于通常的定时器。
定时器每触发一次,AC1810将进行N道的连续采样,N为用户设置的采样通道的数量。
AC1810与PC的数据传输采用1K字的FIFO接口,提供连续采样的能力。
通常的586机器可以支持到800K左右的数据传输速率,因此一台PC可以支持1-8套AC1810同时工作。
框图:
8路输入8SH8:
1A/D1K×
16
多路开关FIFO
16位定时器通道控制
4MHZ采样控制
外触发
8路DIPC总线
开关量
8路DO
AC1810的8路模拟量与外部触发、时钟输入由DB25(控)-P1输入,DIO8人、8出由P2-20PIN扁平电缆输入,定义见§
5章。
4-3:
采样控制与编程
读数:
AC1810的FIFO数据按用户设置的采样通道数(从0开始)顺序存放在FIFO中,FIFO的数据宽度为16位,其中低12位为采样有效数据,高4位自动设置为“0”。
数据顺序为:
数据:
012…N,(N+1),(N+2),…
通道:
012…N,0,1,…
用户查询到FIFO半满(STATE的D0=0)时或中断到来时,可以一次读取1-512个采样点,通常读取512点。
由于AC1810的FIFO与PC为16位接口,读取512点等效读取512个采样数据。
AC1810采样数据的校正:
AD转换结果为DATA=0-4095,12位,对应的电压为:
0-10V输入时:
V=DATA×
0-±
5V时
5000/2048(毫伏)
10V时
10000/2048(毫伏)
输入量程由跳线器S3,S4设置。
设置方法见第二章。
AC1810的工作模式:
AD数据缓冲FIFO状态的判别:
查询、中断。
读入STATE,可以判断FIFO半满或溢出。
注意如果FIFO溢出(产生数据错误),在读取FIFO一个数据后,FIFO溢出标志将消失,因此读入STATE并判断FIFO半满有效后应该同时判别FIFO溢出状态。
如果溢出,以后的数据无效。
AD的启动模式:
软件、硬件触发(上升边沿有效)
软件启动:
设置AC1810的模式、定时器后,启动AC1810,AD开始采样。
硬件触发:
设置AC1810的模式、定时器后,启动AC1810,当由外部触发输入时,AD开始采样。
时钟模式:
AC1810支持板上时钟(4M基准,16位可编程定时器)或外部时钟。
当外部或板上时钟触发到来时,AC1810将会对通道0-用户设置停止通道进行一轮采样。
AC1810的编程顺序:
1.REW,复位1810
2.设置工作模式及停止通道(MODE)
3.设置定时器控制字、初始化数据
4.REW复位
5.启动AC1810
6.判断FIFO是否半满
7.判断FIFO是否溢出,是,退出并报措。
8.一次读入512个采样数据放在用户电源的数组中,并数组指针+512。
9.是否继续采样,是,跳转到6。
10.写入REW,停止采样。
设置AC1810
软件启动、应用板上定时器,周期200微秒(数据为800),停止通道为7(8个采样通道)。
采样数据放在DATA中,采样长度为10000(等效20次左右的读取数据,每次512点)。
intdata[11000];
inttdata=800;
inti,j,k;
int*dpt;
//rew
outp(0x305,0);
//mode
out(0x304,0x70);
//timercnrldata
outp(0x30f,0x34);
outp(0x30f,0x74);
//timer1’sdata
outp(0x30d,40);
outp(0x30d,0);
//samplespeedcnrl
outp(0x30c,tdata&
outp(0x30c,tdata>
//run
outp(0x301,0);
//rddata
dpt=0;
for(i=0;
i<
20;
I++)
//iffifook
do{
j=inp(0x300);
k=j&
1;
}while(k!
=0);
//ifFIFOoverflow
j=j&
0x2;
if(j==0)
{
//overflow
printf(“FIFOerro\n\a”);
exit(0);
}
//rd512data
for(j=0;
j<
512;
j++)
*(dpt+j)=inpw(0x302);
//pointer+512;
dpt=dpt+521;
AC1810的附送盘中的程序AC1810中,有二个MSC(可以直接移植到VC或BORLANDC)的子程序:
ac1810_ini(inttrsl,intclksl,intstop_ch,unsignedinttimer_data)
初始化AC1810。
trsl:
=0软件启动,=1硬件触发
clksl:
=0应用板上时钟,=1应用外部时钟
stop_ch:
采样停止通道,=0-7
timer_data:
采样速度控制定时器数据,16位无符号整形
intac1810_sam(int*data_pr,longsam_l)
从FIFO中读取长度为sam_l长的数据,放在data_pr指向的数组中。
返回=0表示FIFO溢出,=1表示数据有效。
上面的例子可以应用以上子程序,如下:
#include<
unsignedinttdata=800;
//ini
ac1810_ini(0,0,7,tdata);
//sampling
ac1810_sam(data,10000L);
4-4DIO
开关量由P2-20PIN扁平电缆插座输入、输出。
P2的定义见下一章。
DIO的操作直接对7H偏移口进行读写即可。
5跳线器位置与插座定义
5-1:
跳线器位置
S41
1S313
P2P1
321
S2S116
5-2插座定义:
P2:
24681012141618
1357911131517
缺口
脚:
1,2,3,4,5,6,7,8:
对应开关量输出通道DO0-DO7。
11,12,13,14,15,16,17,18:
对应开关量输入DI0-DI7。
9,10,19,20:
GND
P1:
DB25插座
插座上标记有脚的号码。
1,2,3,4,5,6,7,8对应模拟输入0-7通道。
9,22:
模拟GND
脚12:
外部触发输入
脚13:
外时钟输入
脚25:
数字GND(触发与时钟输入应用)