-
AP110 AP110L
使
用
手
册
?
?
?
?
?
?
PC104
总线
AD
采集板
< br>16
路
12
位
< br>AD
工作模式:软件查询
2
路
12
位静态
DA
(
AP110
)
< br>
开关量:
16DI/16DO
两路
24
位计数器
wwlab
2012/04
在开始使用前请仔细阅读下面说明
检查
打开包装请查验如下:
?
?
?
AP110
采集卡。
光盘。
20
线、
40
线电缆各一套。
安装
<
/p>
关掉
PC
机电源,将
AP110
插入主机的任何一个
8
位或
16
位的
PC104
插槽中并将外部的输入、输出线
连好。如果主机有多套卡,请每次只安装一个
卡。软件启动安装请查看第
5
章说明。
保修
本产
品自售出之日起一年内,用户遵守储存、运输和使用要求,而产品质量不合要求,凭保修单免费维
修。因违反操作规定和要求而造成损坏的,需缴纳器件费和维修费及相应的运输费用。如果板卡有明显烧
毁、
烧糊情况则不予维修。如果板卡开箱测试有问题,可以免费维修(限购买板卡
10
天内)。
软件支持服务
自销售之日起,提供
6
个月的免费开发咨询。
目录
一、
AP110
说明
.
....................................
.........................................
4
1.1
AP110
板简介
.
..............................................
......................... 4
相关产品
............
..................................................
............. 4
配套端子板
...........
..................................................
............ 4
1.2
主要特点
、性能
.............
..................................................
..... 4
AD
部分
.
.......................................
..................................... 4
AD
工作模式
.
.....................................
................................... 5
DA
输出
.
.......................................
..................................... 5
开关量输入输出及计数器
.....
..................................................
...... 5
软件支持
..........................................
................................. 6
其他
..............
..................................................
............... 6
二、控制地址选择说明
......
..................................................
............... 7
2.1
地址选择
.
....................................
.......................................
7
2.2
板卡
I/O
功能说明
.......
..................................................
.......... 7
STATE
:
0H
。读
AD
状态
.......................
........................................
8
RUN
:
1H
。启动
AD
转换
< br>
...................................
............................ 8
< br>通道(
CH
):
0H
,
AD
输入通道号、
si
di
及增益设置
.
< br>...................................... 9
ADH
、
ADL
:
3H
和
2H
,读
AD
转换结果
............................................
....... 9
DA
操作:
p>
2H
、
3H
,写入
DA
数据
.
..................................................
.... 10
数字
I/O-
开关量读写
.
..
..................................................
........... 11
计数器操作方式
.........
..................................................
......... 11
计数器控制字
cntc
.............................................
................. 11
设置计数器数据方式
.......
..................................................
... 12
读计数器状态
..........................................
........................ 12
读计数器数据
..........
..................................................
...... 13
利用
IO
端口操作对计数器编程
....................
................................... 13
8H
、
9H
、
AH
:写
24
位计数器数据
.................................................
13
8H
、
9H
、
AH
:读
24
位计数器数据
.................................................
14
8H
、
9H
、
AH
:读
24
位定时器数据
.................................................
14
BH
:写计数器控制字
cop
及通道
cntch
.....................................
........ 15
BH
:读计数器状态
..............................................
................ 16
三、原理说明
..........
..................................................
.................. 17
3.1
简介
..............
..................................................
.............. 17
3.2
模拟输入及
AD
数据计算
.......................................
...................... 18
模拟输入
..................................................
........................ 18
AD
输入校正
.
.....................................
.................................. 18
AD
转换数据格式与计算
............................................ .................. 19
3.3
开关量部分
...........
..................................................
........... 19
3.4
计数器
.............
..................................................
............. 20
3.5
DA
.........................
..................................................
..... 21
四
安装与连接
...........
..................................................
................ 22
4.1
安装
..............
..................................................
.............. 22
信号连接注意事项
........
..................................................
........ 22
4.2
连接器插座定义
.........
..................................................
......... 22
P1
定义
.
.......................................
.................................... 23
P2
定义
.
.......................................
.................................... 23
开关量复合用脚
.........
..................................................
......... 24
4.3
配套端子板
...........
..................................................
........... 24
4.4
常用信号的连接、处理
......
..................................................
...... 24
五
软件
..............
..................................................
................... 26
5.1
软件安装与说明
.........
..................................................
......... 26
软件说明
.......................................
................................... 26
驱动安装
............
..................................................
............ 27
5.2
接口函数说明
..........
..................................................
.......... 28
函数简介
............
..................................................
............ 28
设备操作函数
..........
..................................................
.......... 28
AD
操作函数
.
.....................................
.................................. 29
DA
操作函数
.
.....................................
.................................. 30
开关量操作函数
.........
..................................................
......... 31
计数器操作函数
.........
..................................................
......... 32
5.3
VC
程序编程说明
.
..............................................
.................... 33
5.4
VB
程序编程说明
.
..............................................
.................... 34
5.5
DOS
程序编程说明
.
.............................................
.................... 35
AD
部分
.
.......................................
.................................... 35
DA
部分
.
.......................................
.................................... 36
开关量
.............
..................................................
............. 37
脉冲计数器
...........
..................................................
........... 38
六
附录
..............
..................................................
................... 42
AP110
、
AP110L
示意图
.
......................
............................................
42
一、
AP110
说明
< br>
1.1 AP110
板简介
AP110
是一款
PC104
总线
12
位采集模块,具有
16
路模拟输入、
2
路静态输出<
/p>
DA
(
AP110L
无此功能)、
16
路输入
/16<
/p>
路输出开关量及
2
路
24
位计数器(计数器引脚与开关量共用)。
AD
支持软件启动。采用
PC104
总线,
采用大规模可编程门阵列设计,提高可靠性。适用于慢速信号的采集,不适合波形采集分析。
p>
相关产品
?
?
?
?
p>
AC6613
:
12
位查询
AD
、
DA
< br>的
PCI
总线采集卡。
MP411/MP411L
:
12
位查询的
USB
采集卡。
MP412
:
12
位查询
AD
、
DA
的
USB
总线采集卡。
p>
AC1081B
:
12
位查询
AD
、
DA
的
ISA
总线采集卡。
配套端子板
?
?
?
ACS410
:支持
16
路模拟输入及低通滤波、
IV
转换,
40
脚开关量输入输出,
DA
输出。
AC142
:
40
路通用接线板(开关
量连接应用)。
AC145N
:隔离
16
入
/16
出端子板。输入电压
0-24
伏
/
p>
输出为共阴输出,驱动电流
100
毫安,可
以直接输
出共地电压。需要配接外部电源,输出电压
=
外部电源电压。
?
?
AC1
40E
:隔离
16
入
< br>/16
路继电器端子板。
AC
110
:
4
路
mV
级小信号放大板。
1.2
主要特点
、性能
AD
部分
?
16
路单
端输入。输入电压:
5
伏
/10
伏
/
±
5
伏
/
±
10
伏,软件控制。
?
?
?
?
?
?
?
AD<
/p>
转换器:
12
位
AD
,速度
100KHz
(
10uS
转换时间)。
软件查询模式速度(通过率)为
10-30KHz
。
通道输入阻抗:
10M
欧姆。
输入插座:
IDC20
p>
插座。
系统精度:±
0.1%
FSR
。
分辨率:
< br>12
位。
噪音(峰值):小于
±
1LSB(
典型,
1000
个采样点
)
。
AD
工作模式
?
?
启动模式:软件查询。
软件查询模式:对设置的任意一个通道进行一次采样。
DA
输出
2
路
12
位
DA
转换器。性能如下:
?
?
?
?
?
?
?
12<
/p>
位
DA
,分辨率
1LSB
。
每路输出可以单独软件设
置为:
0
~
10V
或±
10V
。
< br>输出信号上升速率:大于
0.5V/uS
。
输出电流:最大±
5
毫安
。
精度:
0.3%
FSR
。
零点误差:
10V
档:±
20
毫伏
/
±
10V
p>
档:±
50
毫伏。
输出上电为
0
。
开关量输入输出及计数器
?
16
路输入通道,性能:
1.
2.
3.
4.
5.
输入电压:
TTL
电平,兼容
3
伏电平。
p>
高电平:大于
2
伏。
低电平:小于
0.8
伏。
输入电压范围:
0
-5
伏。
输入端口内部通过
10K
电阻上拉到
3.3
伏。因此悬空时,输入
=1
。
?
16
路输出通道,性能:
1.
输出电压:
5
伏电平,兼容
TTL
电平。
p>
2.
3.
4.
5.
?
高电平:大于
2.5
伏。
低电平:小于
0.5
伏。
最大输
出电流:
10
毫安
/
< br>路。
开关量输出上电自动清零。
两路
p>
24
位计数器:
两路
24
位减法计数器通道
0
、
1
号(
CNT0
p>
、
CNT1
),范围
0-
。计数器同时具有测量任意个脉冲之间的时
间间隔功能。
1.
2.
3.
4.
5.
6.
7.
输入电平:与开关量输入相同。
最大
计数频率:
10MHz
。
计数器输入时钟上升边沿有效。
硬件锁存计数器溢出标志(计数器归零),并可以软件读出。
可以测量
N
个脉冲上升边沿之间的时间
间隔(
N=2-
),可以快速测量信号的频率。(注)
计数器输入通道
0
号
与开关量输入
DI14
共用。
计数器输入通道
1
号与开关量输入
DI15
共用。
注:
对于慢速信号,采用常规的频率
测量方法,需要至少
100-1000
个脉冲计数,而
AP110
只要设置
N=2
,即可
准确测量
2
个脉冲边沿间的
时间间隔,即:等效一个脉冲的时间宽度,从而计算出信号频率。
软件支持
1.
2.
3.
操作
系统支持
win98/win2000/winXP/win7
32
位操作系统。
开发包:驱动程序
、
DLL
库函数。
< br>例子:
MFC
、
VB
、
MSC
(
DOS
)。
位置:光盘的
PC104AP110
目录。
其他
?
?
总线:符合
5
伏
PC104
标准。
内部板卡尺寸:
96mm x
90mm
。
二、控制地址选择说明
2.1
地址选择
首先关掉电源,选好
AP110
的
I/O
地址(由拨码开关
SW1
来控制
),然后将
AP110
插入
PC
机的任何一
个
8
位或
16
位的
PC104
< br>插槽中,连接好
I/O
接线电缆。
SW1
是
I/O
地址选择的
6
位拨码开关,位
于板卡的左下部分。
AP110
占用四位(
A0-A3
)地址线,
I/O
译<
/p>
码由
A4-A9
六位决定。
AP110
的空间为
100H-3FFH
。
SW1
的选择方式(按二进制方法计算),
p>
SW1
对应位
为“
ON
”时,对应选择译码位为“
0
”;
SW1
对应位为“
OFF
”时,对应选择译码位为“
1
”。设置如下:
SW1
1
2
3
4
5
6
:
:
:
:
:
:
A4
A5
A6
A7
A8
A9
注
:
当以下
拨码开关为
ON
时为短路,表示为“
X
”;
当以下拨码开关为
OFF
时为开路,表示为“
-
”。
AP110
的实际操作地址:
+
基地址(
BASE
< br>)。
BASE
由
SW1
选择,为
100H-3FFH
。
例如:欲选择
ADR=310H
,
SW1
设置方法如下:
SW1
ON
1
2
3
4
5
6
-
-
-
X
X
X
A4
A5
A6
A7
A8
A9
*
此地址为该卡出厂时的缺省地址。
注:
PC
常
用
I/O
地址:
-260H
,
280H-2E0H
,
300H-330H
。
2.2
p>
板卡
I/O
功能说明
AP110
板卡
I/O
地址分配如下。
AP
110
占用
4
条地址线,共有
16
个
I/O
地址,分
配如下。
偏移地址
A0-A3
0H
1H
2H
3H
8H
9H
AH
BH
EH
FH
?
?
out
p(adr,data)
:写
8
位数据
。
inp(adr
)
:读
8
位数据。
读操作(
RD
)
AD
状态
state
启动
AD
转换
AD
结果低
8
位,
ADL
AD
结果高
4
位,
ADH
读计数器低
8
位数据
cntl
< br>读计数器中
8
位数据
cntm
读计数器高
8
位数据
< br>cnth
计数器状态
cntst
写操作(
WR
)
AD
输入通道号及量程设置
设置
DA
低
8
位数据,
DAL
< br>设置
DA
高
8
< br>位数据,
DAH
写入计数器低
8
位数据
cwrl
写入计数器中
8
位数据
cwr
m
写入计数器高
8
位数据
cwrh
计数器控制字
cntc
读入开关量输入口数据低
8
位
写入开关量输出口数据低
8
位<
/p>
读入开关量输入口数据高
8
位
写入开关量输出口数据高
8
位
AP110
的地址计算:地址
=
设置的基地址
+
偏移地址
例:如果要启动
AD
操作,
B
ASE=310h
,
Offset=1h
,则操作地址为
310h+1h=311h
。
STATE
:
0H
。读
AD
状态
读入
8
位数据:<
/p>
D7-D0
,最低位
D0=1
时,
AD
正在转换;
D0
=0
时,
AD
转换结束。
例如:
MSC
语言
do
{
i=inp(0x310) & 1;
}while(i!=0);//AD
转换结束与否标志
RUN
:
1
H
。启动
AD
转换
例:
MSC
语言
inp(0x311);
通道(
CH
):
0H
,
AD
输入通道号、
< br>sidi
及增益设置
0H
:
D7
控制
p>
sidi
信号,默认为
0
< br>;
D6-D5
控制
AD
增益;
D3-D0
控制
AD
转换的输入通道号。
D7
0
D6
D5
0
0
1
1
D3-D0
:
0x0-0xf
,分别对应
0-15
通道。
例如:
MSC
语言
设置通道号为
1
,量程为
0-10V
。
outp(0x310,0x21);//
0
1
0
1
AD
增益
0
~
5v
0
~
10v
-5v
~
+5v
-10v
~
+10v
D6
D5
D4
0
D3
D2
D1
D0
adg[1]
adg[0]
ch[3]
ch[2]
ch[1]
ch[0]
ADH
、
ADL
:
3H
和
2H
,读
AD
转换结果
ADH
:高
4
位;
ADL
:低
8
位。定义如
下:
ADH
ADL
< br>AD11-AD0
:
12
位
p>
AD
转换结果。计算方法如下:
数据:
DATA=ADH*256+ADL
对应电压:
0-5V
(单位为
mv
)
V = DATA * 5000.0 / 4095
D7
0
D6
0
D5
0
D4
0
D3
D2
D1
D0
AD11
AD10
AD9
AD8
AD3
AD2
AD1
AD0
AD7
AD6
AD5
AD4
0-10V
(单位为
mv
)
V = DATA * 10000.0 / 4095
p>
±
5V
(单位为
m
v
)
V = ( DATA
–
2048 ) * 5000.0 /
2048
±
10V
< br>(单位为
mv
)
V = ( DATA
–
2048
) * 10000.0 / 2048
例:量程为单极性状态
0-5V
MS
C
:
adh=inp(0x313);
adl=inp(0x312);
data=adh * 256 + adl;
v=(float) (data) * 5000.0 / 4095;
DA
操作:
2H
、
3H
,写入
DA
数据
2H
写入操作,
设置
DA
输出的低
8
位
(
DAL
)
数据;
3H
写入操作,
设置
DA
输出的高
8
位数据
(
DAH
)
< br>。
注意:
DA
操作必须按照先写
入低
8
位后写入高
8
< br>位的顺序操作。
12
位
DA
数据及通道、量程格式如下:
DAL
DAH
D0-D11
:
12
位
DA
数据,
0-4095
。<
/p>
D12
:
DA
通道设置,
0
、
1
。
D14
:
DA
量程设置,
0
(
0-10v
)、
1
(±
10v
)。
12
位
DA
数据
DATA=DAL + DAH
* 256
,范围是
0-4095
。<
/p>
对应电压:
0-10V
输出:
V = DATA * 10000.0 / 4095
(mv)
±
10V
< br>输出:
V = ( DATA - 2048) *
10000.0 / 2048 (mv)
D7
D6
D5
D4
D3
DA3
D11
D2
DA2
D10
D1
D0
DA7
DA6
DA5
DA4
D15
0
D14
dag
D13
0
D12
DA1
DA0
D9
D8
dach
DA11
DA10
DA9
DA8
例:设
置输出
5V
电压(量程选择
0-10V
,通道为
1
通道)
MSC
:
data=0x1800;//0001 1000 0000 0000
dal=data & 0xff;
dah=(data
>> 8) & 0xff;
outp(0x312,dal);
outp(0x313,dah);
数字
I/O-
开关量读写
AP110
具有
16
路开关量输入和
16
路开关量输出。分别分为高
8
< br>位和低
8
位。具体对应关系如下
;
操作
DIL
DIH
DOL
DOH
例:
MSC
:
读
低
8
位开关量
state=inp(0x31e);//state = 0-255
写高
8
位开关量
outp(0x31f,data); //data = 0-255
D7
D6
D5
D4
D3
D2
D1
D0
偏移
DI6
DI5
DI4
DI3
DI2
DI1
DI0
EH
读
DI7
FH
读
DI15
DI14
DI13
DI12
DI11
DI10
DI9
DI8
EH
写
DO7
DO6
DO5
DO4
DO3
DO2
DO1
DO0
FH
写
DO15
DO14
DO13
DO12
DO11
DO10
DO9
DO8
计数器操作方式
AP110
具有
2
路
24
位减法计数器,每个计数器有
2
个
24
位寄存器,分别存储:计数器设置、定时器数
值
。
计数器操作可以分为:写入或读出数据、启动计数器、停止
计数器。其中数据的读入或写入需要多次
IO
操作。
计数器控制字
cntc
计数器操作都由控制字
cntc
控制,操作偏移地址位
BH
。定义如下:
定义:
8
位数据
D7-D0
adr
D7
D6
D5
D4
D3
D2
D1
D0
BH
0
0
0
cntch
cntc[3]
cntc[2]
cntc[1]
cntc[0]
cntch
:选择计数器通道数,
=0-1
。
cntc
:计数器控制字,
=0
、
1
、
2
、
4
、
5
。
cntc:
定义
cntc
operation
0
启动计数器
1
停止计数器
2
初始化计数器
4
读计数器数据
5
读定时器数据
设置计数器数据方式
功能:设置
p>
24
位计数器数据
操作步骤:
1.
2.
3.
4.
5.
注:
计数器控制字
cntc
定义见下面说明。
写计数器低
8
位数据
cd[7:0]
。
8H
写<
/p>
写计数器中
8
位数据
cd[15:8]
。
9H
写
写计数器高
8<
/p>
位数据
cd[23:16]
。
AH
写
写入
BH
计数器控制字
cntc
,模式:初始化计数器数据。
写入
BH
计数器控制字
cntc
,模式:启动计数器。
读计数器状态
功能:读入计数器状态,判断是否溢出。
状态
st=BH
读操作。
8
位数据(
D7..D0
)定义:
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
0
0
cov1
cov0
cov0 cov1
:对应计数器通
道
0
、
1
的状
态,
=1
表示计数器数据溢出。
注意:在频率测量模式下,必须等到相应的计数器溢出后,测
量的时间数据才有效!
读计数器数据
功能:读入计数器或定时器数据。
操作步骤:
1.
2.
3.
4.
注:
1.
2.
计数器控制字
cntc
定义见下面说明。
cd[23:0]
为
24
位计数器数据,
td
[23:0]
为
24
位定时器数据。<
/p>
写入
8
位计数
器控制字
cntc
,操作模式:读入计数器或定时器数据。
p>
读数据低
8
位<
/p>
cd[7:0]
或
td[7:0]
。
读数据中
8
p>
位
cd[15:8]
或
td[15:8]
。
读数据高<
/p>
8
位
cd[23:16]
或
td[23:16]
。
<
/p>
利用
IO
端口操作对计数器编程
8H
、
9H
、
AH
:写
24
位计数器数据
A
P110
具有
2
路
24
位减法计数器。
8H
:写计数器低
8
位
数据
cdl
。
9H
:写计数器中
8
位数据
cdm
。
AH
:写计数器高
8
位数据
cdh
。
cd
D7
D6
D5
D4
D3
D2
D1
D0
cdl
cd[7]
cd[6]
cd[5]
cd[4]
cd[3]
cd[2]
cd[1]
cd[0]
cdm
cd[15]
cd[14]
cd[13]
cd[12]
cd[11]
cd[10]
cd[9]
cd[8]
cdh
cd[23]
cd[22]
cd[21]
cd[20]
cd[19]
cd[18]
cd[17]
cd[16]
例:
MSC
:
long
cd;//24
位计数器数据
long cdl,cdm,cdh;
cdl=cd & 0xff;
cdm=(cd >> 8)
& 0xff;
cdh=(cd >> 16) & 0xff;
out
p(0x318,cdl);//
写计数器低
8
位数据
outp(0x319,cdm);//
p>
写计数器中
8
位数据
outp(0x31a,cdh);//
写计数器高
8
位数据
8H
、
9H
、
AH
:读
24
位计数
器数据
8H
:读计数器低
8
位数据
cdl
。
9H
:读计数器中
8
位数据
cdm
。
AH
:读计数器高
8
位数据
cdh
。
cd
D7
D6
D5
D4
D3
D2
D1
D0
cdl
cd[7]
cd[6]
cd[5]
cd[4]
cd[3]
cd[2]
cd[1]
cd[0]
cdm
cd[15]
cd[14]
cd[13]
cd[12]
cd[11]
cd[10]
cd[9]
cd[8]
cdh
cd[23]
cd[22]
cd[21]
cd[20]
cd[19]
cd[18]
cd[17]
cd[16]
例:
MSC
:
long cd;
//24
位计数器数据
long
cdl,cdm,cdh;
cdl=inp(0x318)
& 0xff;//
读计数器低
8
位数
据
cdm=inp(0x319) & 0xff;//
p>
读计数器中
8
位数据
cdh=inp(0x31a) & 0xff;//
读计
数器高
8
位数据
cd=cdl | (cdm << 8) | (cdh
<< 16);
8H
、
9H
、
AH
:读
24
位定时器数据
8
H
:读定时器低
8
位数据
tdl
。
9H
:读定时器中
8
位数据
t
dm
。
AH
:读定时器高
8
位数据
tdh
。
td
D7
D6
D5
D4
D3
D2
D1
D0
tdl
td[7]
td[6]
td[5]
td[4]
td[3]
td[2]
td[1]
td[0]
tdm
td[15]
td[14]
td[13]
td[12]
td[11]
td[10]
td[9]
td[8]
tdh
td[23]
td[22]
td[21]
td[20]
td[19]
td[18]
td[17]
td[16]
例:
MSC
:
long
td;//24
位定时器数据
long ,tdh;
tdl=inp(0x318) & 0xff;//
读定时器
低
8
位数据
tdm=inp(0x319) & 0xff;//
读定时器
中
8
位数据
tdh=inp(0x31a) & 0xff;//
读定时器
高
8
位数据
td=tdl | (tdm << 8) | (tdh << 16);
BH
:写计数器控制字
cntc
及通道
cntch
cntch
:计数器通道数,
=0-1
。
cntc
:计数器控制字,
p>
=0
、
1
、
2
、
4
、
5
。
D7-D0
定义
adr
D7
D6
D5
D4
D3
D2
D1
D0
BH
0
0
0
cntch
cntc[3]
cntc[2]
cntc[1]
cntc[0]
cntc
定义
cntc
operation
0
启动计数器
1
停止计数器
2
初始化计数器
4
读计数器数据
5
读定时器数据
例:
MSC
:
long
cntc;//
计数器控制字
long
cntch;//
计数器通道
cntch=cntch << 4;
cntc =0x0;
//
启动计数器
cntc=cntch | cntc;
outp(0x31b,cntc);
cntc=0x1;
//
停止计数器
cntc=cntch | cntc;
outp(0x31b,cntc);
cntc=0x2;
//
初始化计数器
cntc=cntch | cntc;
outp(0x31b,cntc);
cntc=0x4;
//
读计数器数据
cntc=cntch | cntc;
outp(0x31b,cntc);
cntc=0x5;
//
读定时器数据
cntc=cntch | cntc;
outp(0x31b,cntc);
BH
:读计数器状态
状态定义:
8
位读出数据
D7-D0
的低
2
位
D1
、
D0
p>
分别对应计数器通道
1
、
< br>0
的状态。
D1
:
cov1
D0
:
cov0
cov:
=1
,代表计数器溢出;
cov:
=0
,代表计数器未溢出。
注意:在
频率测量模式下,必须等到相应的计数器溢出后,测量的时间数据才有效!
MSC
例子:
读计数器状态
st
。
st=1
,代表计数器溢出;
st=0
,代表计数器未
溢出。
long
st;//
计数器状态
long
cntch;//
计数器通道数
st=inp(0x31b);
st=st >>
cntch;
st=st & 1;
以上各个部分的
DOS
详细编程部分参考光盘目录“
pc104ap110dos
”部分。
三、原理说明
3.1
简介
AP110
采用
PC104
接口,软件控制。
AP110
具有
16
路
AD
输入,工作方式为软件查询模式。具有
2
路
静态输出
DA
、
p>
16
路输入
/16
路输出开关量及
2
路
24
位计数器(计数器引脚与开关量
DI14
和
DI15
共用)。
本卡在出厂之前,
AD
和
DA
均已校正。待板卡上电稳定后,即可调用相关函数进行
< br>AD
和
DA
的测试。
具体函数说明参考第
5
章部分。
< br>
原理框图:
模拟输入
SW
输入
选择
12
位
AD
数据
16DI
PC104
门
阵
列
16DO
地址
总
线
输出
12
位
DA
3.2
模拟输入及
AD
数据计算
模拟输入
AP110
具有
16
路模拟输入,输入阻抗为
10M
欧姆。输入具有过压保护,可以承受瞬时
±
20
伏的电压。
<
/p>
SW
1
1K
1<
/p>
4
INPUT
2
1
2
3
1
1<
/p>
2
2
10M
8<
/p>
2
模拟信号由
IDC20
插座输入,
经过输入保护电阻
R=1K
到电子开关输入选择通道,
并经过缓冲放大到
p>
AD
输入。输入对地的
10M
下拉电阻,保证输入在没有连接的情况下近似为“
0
”。
AD
输入有
4
档量程,由软件控制(详细见编程部分说明,分别对应
增益选择:
0
、
1
、
2
、
3
号)。
输入范围如下:
单极性:
0-5V
单极性:
0-10V
双极性
:
-5V - +5V
双极性
:
-10V - +10V
注:
单极
性指输入电压相对地线为大于
0
的信号。
双极性指输入电压相对地线为±输入的信号。
以上功能在软件查询模式中由
AP1
10_AD
()函数中的参数控制,如下:
1.
2.
ch
:控制
AD
采样的通道号(
=0-15
)。<
/p>
gain
:
=
0
、
1
、
2<
/p>
、
3
,对应选择输入范围为:
0-5V
、
0-10V
、
±
5V
、±
10V
。
AD
输入校正
AD
采用软件校正。板卡在出厂前,
AD
的校正数据事先已经存入
EEPROM
的相应位置,用户只
需在板
卡上电稳定后,调用函数
AP110_AD()
进行
AD
采样即可得到正确的
< br>AD
采样数据。
-
U3A
外部输入
Ain
+
AD
输入
AD
转换数据格式与计算
在查询模式,函数直接返回
AD
采样数据。
数据格式:
16
位读出数据(
D15-D0
)定义如下
:
D15
0
D7
D14
0
D6
D13
0
D5
D12
0
D4
D11
D10
D9
D8
AD11
AD10
AD9
AD8
D3
AD3
D2
AD2
D1
D0
AD7
AD6
AD5
AD4
-
-
12
位转换数据范围为
0-4095
,对应电压计算:
< br>设:
data
为
12
位转换结果。
0-5
伏:
电压
=data*5000.0/4095 (mV)
0-10
伏:
电压
=data*10000.0/4095 (mV)
±
5
伏:
电压
=(data-2048)*5000.0/2048
(mV)
±
10
伏:
电压
=(data-2048)*10000.0/2048
(mV)
D15-D0
:
16
位数据,从高到低位。
AD1
AD0
AD11-AD0<
/p>
:
12
位
AD<
/p>
采样数据(
MSB -
LSB
)。
3.3
开关量部分
AP110
开关量提供了
16
个输入及
16
个输出接口。所有的输出口在上电初始时为“
0
”或低电平。输入
接口内部上拉到正电源,因此如果没有外部输入,读入数
据为“
1
”。
16<
/p>
位输入
DI0-DI15
由函数
AP110_DI()
读入。
16
位输出
DO0-DO15
由函数
AP110_DO()
设置。
AP110
的
DIO
兼容
5
伏
TTL
电平,输入可以承受
8<
/p>
伏电压,输出高电平通常为
2.8
伏
p>
-5
伏(
5
伏
p>
TTL
,
逻辑通常大于
2.3
伏,就认为是逻辑
1
)。<
/p>
开关量输
入
DI14
和
DI15
分别与计数器
0
、计数器<
/p>
1
等特殊输入共用,不用为特殊输入时,可以作为正
常开关量输入使用。
3.4
计数器
AP110
具有
2
路
24
位计数器
cnt0
、
cnt1
。
工作模式:减法计数模式,同时支持测频或
N
个脉冲上升边
沿间的间隔时间测量。计数器
< br>0
及
1
号输入时钟分别与开关量
输入
DI14
、
DI15
共用。
当用户利用函数
AP110_CNT_Run
设置计数器初始化数值和通道后,
溢出标志位自动清零并开始减法计
数,
同时内部
24
位定时器开始清零并在第一个有效输入脉冲边沿到来时开始加法计数
(计数时钟为
10MHz
)
< br>。
用户可以通过调用
AP110_CNT_Read
p>
函数,
随时读入
24
位计数器数值
cdata
及定时器数值
tdata
。
如果计数器
溢出(从<
/p>
0
减到
FFFFFFH
< br>),则返回数值
=1
,硬件会自动保留溢出状态及此时的
定时器数据直到用户重新设
置计数器。
因此用户可以在计数的同时,测量信号的频率或脉冲间隔。例
如:如果初始化计数器数值
=2
,那么定时
器的时间表示两个上升脉冲之间的宽度或一个波形的宽度,通过宽度,用户可以方便的计算出信号的频率。< /p>
当然,
用户也可以将计数器初始化数值设置为任何大于
2
的
24
位数据,
来测量
N
个边沿之间的时间。
但需要
注意,定时器的最大定时长度为
1600mS<
/p>
,数值
=FFFFFFH(
即:
)
,如果读出数据等于
FFFFFFH
,表示定时器
已经超量程。
脉冲宽度
=tdata*0.1uS
tdata
:定时器数值
计数器的波形示意图:
TGate
……
CLK
……
OVER
N 10 9
8 7 1 0 FFFFFFH
定时器测量完毕
设置计数器初始化数据
=10
Tgate=1
时,定时器工作;
=0
完毕