MP4221使用手册文档格式.docx
《MP4221使用手册文档格式.docx》由会员分享,可在线阅读,更多相关《MP4221使用手册文档格式.docx(46页珍藏版)》请在冰豆网上搜索。
2-1:
简介10
2-2:
AD及数据计算11
模拟输入11
AD输入校正12
AD转换数据格式与计算12
2-3:
AD采样的工作模式13
连续采样模式:
13
存储采样模式:
MP4221硬件转换控制模式:
14
定时器与外部时钟14
触发开始采样15
小结:
采样模式15
相关函数:
15
2-4:
开关量部分的原理:
16
2-5:
计数器16
2-6:
冲输出原理17
相关操作函数:
18
PWM方波输出18
单次脉冲输出(SP模式,软件触发单稳态输出)19
PLP模式:
个数可编程脉冲输出19
2-7:
DA20
三、安装与连接21
3-1:
安装21
关于USB21
3-2:
信号连接注意事项21
3-3:
连接器插座定义22
P1定义:
23
P2定义:
开关量复合用脚24
辅助电源插座:
24
内部电源选择25
3-4:
配套端子板25
ACS420说明25
3-5:
常用信号的连接、处理。
26
加入隔离电容采集交流信号26
利用开关量输出驱动继电器27
开关量输出驱动光藕27
开关量输入隔离27
四、软件28
4-1:
软件安装与说明28
软件说明28
驱动安装29
4-2:
接口函数说明31
函数简介31
设备操作函数32
连续采集AD操作函数32
存储采集AD操作函数36
DA操作函数39
开关量操作函数40
计数器操作函数41
脉冲发生操作函数42
EEPROM读写操作函数43
4-3:
VC程序编程说明44
4-4:
VB程序编程说明44
4-5Labview程序编程说明45
五、附录47
示意图47
一、MP4221说明
MP4221板简介
MP4221是一款USB2.0总线多功能12位高速采集模块,具有8路模拟输入、开关量16路输入/16路输出、二路24位减法计数器(支持脉冲间隔或频率测量功能)、两路脉冲发生器、两路12位静态输出DA。
采用USB2.0总线,支持即插即用。
MP4221内置8MByteDFIFO提供2秒的采集数据缓冲,可以更好支持全速实时不间断全速采集及多个MP4221并行工作。
采集支持:
内、外部触发采集模式及内外时钟模式;
支持连续数据采集或存储式定长采集(此模式下采集长度可以软件设置为1点-2M点,采集过程硬件自动控制)。
存储采集模式不占用计算机资源,适合:
多个模块并行工作、低速计算机系统。
MP4221为用户提供了32byte的EEPROM空间,用户可以利用EEPROM记录数据在板上,并且掉电后不会丢失。
注:
MP4221必须在USB2.0接口条件下应用,不支持1.0接口。
用户可以通过PCI或PCMCIA插槽扩充2.0接口。
⏹8路单端输入,采样通道自动扫描。
⏹12位2MHzAD,采用软件自动校正技术,自动校正零点及满度数值。
⏹AD输入范围,0-5V、0-10V、±
5V(软件控制、所有通道输入范围一样)。
⏹两种采集模式:
连续采集及存储定长采集。
⏹AD启动方式:
软件、硬件触发。
与开关量输入通道12共用。
外部触发可以选择上升或下降边沿触发
⏹AD转换时钟:
内部、外部触发。
与开关量输入通道13共用。
外部时钟可以选择上升或下降边沿有效。
⏹AD输入通道自动扫描转换,用户可以任意设置转换的起始及结束通道。
⏹两路独立12位DA,输出5V/±
5V(软件控制)。
⏹开关量:
16入(DI0-DI15)/16出(DO0-DO15)(TTL电平)。
⏹2路24位计数器,支持减法计数及任意个脉冲间隔时间测量(或频率测量)。
最大计数频率10MHZ,脉冲间隔测量采用24位定时器,基础时钟10MHz,测量范围200nS-1.6S。
输入与开关量输入14、15通道共用。
⏹2路20位脉冲输出,时钟:
10MHz。
支持PWM方波、单次正脉冲输出、可编程个数及频率方波输出。
脉冲输出与开关量输出14、15号共用(用户可以软件选择输出通道:
开关量输出或脉冲输出)。
MP420E:
12位500KHzUSB2.0采集模块。
MP421:
12位1000KHzUSB2.0采集模块。
MP424:
12位4X1MHz四路并行USB2.0采集模块。
⏹ACS420螺丝端子接线板。
⏹AC1128路BNC插座输入放大缓冲板。
⏹AC145N隔离16入/16出(共地输出)。
⏹AC140E:
隔离16入,16路继电器板。
⏹AC115:
2路电压到4-20毫安电流转换板。
⏹AD转换器:
12位AD,速度2000KHZ(0.5uS转换时间)。
⏹通道输入阻抗:
1兆欧姆。
⏹输入插座:
20线扁平电缆插座。
⏹输入通道支持任意起始到任意结束通道的自动扫描。
⏹系统精度:
±
0.2%FSR
⏹分辨率:
12位。
⏹噪音(峰值):
1.5LSB
采集模式
MP4221AD有2种采集模式,分别对应函数MP4221_ADXXXMP4221_FADXXX,即:
连续采集模式;
存储采样模式。
用户可以连续不间断进行采样。
启动转换后,用户不断从AD数据缓冲存储器中不断读入数据,这些数据由硬件保证为一个连续的数据流,直到用户测量完毕关闭转换。
这种模式需要软件不断读出数据,但采集长度或时间可以无限长。
适合连续状态检测或长时间记录信号的应用场合。
用户设置需要采样的总长度(最大2,000,000点),启动转换后,硬件自动将采样数据存储在MP4221的存储器中,直道达到设置采样长度后自动停止转换。
这种模式在启动后不需要用户干预,由硬件自动控制、不占用计算机任何资源,更佳适合多个MP4221同时工作,但最大采样长度只有点。
适合定长采样及分析应用。
启动及转换控制
⏹启动模式:
软件、外部硬件触发,软件选择。
1.软件启动:
当用户软件发出启动命令后,AD开始转换。
2.外部触发启动:
用户启动转换后,一个有效的硬件触发边沿输入信号启动AD开始转换。
-输入:
TTL电平,高电平2-5伏,低电平0-0.8伏。
-触发电平:
大于2伏(误差±
10%)。
-触发模式:
软件选择,上升或下降边沿触发。
-触发延时:
1个转换时钟周期(内部时钟)+50nS
-触发输入与开关量输入通道DI12共用。
-可以利用触发同步多个采集模块同时启动
⏹转换时钟:
内部10MHz时钟、外部时钟,软件选择。
1.外部时钟模式:
MP4221支持外部同步时钟输入,可以由外部时钟来控制AD转换,一个有效时钟边沿(上升或下降)进行一次AD转换(转换一个通道)。
-转换时钟可以由外部输入(与开关量输入DI13共用)
-时钟输入电平与开关量输入相同。
-外部时钟输入延时小于50nS。
-外部时钟输入可以软件选择输入的上升或下降边沿有效。
2.内部时钟:
10MHz基准时钟,16位可编程定时器(范围:
25-65535),可以按照100nS一步的精度设置AD转换周期。
⏹定时器:
内部16位定时器,基准时钟10MHZ(0.1uS周期),16位定时器设置范围为“5-65535”之间的任何数据。
转换速度约160Hz-2000KHZ,对应AD的转换周期600uS–0.5uS,用户调节步长0.1uS。
DA输出
MP4221具有2路12位DA转换器,输出为静态输出,适合作为控制信号,不能作为波形发生器。
性能如下:
⏹12位DA,分辨率±
1LSB。
⏹准静态输出,速度大于1000次/秒
⏹输出:
0-5V或±
5V,软件控制。
⏹输出信号上升速率:
大于0.5V/uS。
⏹输出电流:
最大±
5毫安。
⏹精度:
0.3%FSR。
⏹零点误差:
5V档:
10毫伏/±
20毫伏。
⏹输出上电为0。
开关量输入输出及计数器
⏹16路输入通道,性能:
1.输入电压:
TTL电平,兼容3伏电平。
2.高电平:
大于2伏。
3.低电平:
小于0.8伏。
4.输入电压范围:
0-5伏
5.输入端口内部通过10K电阻上拉到3伏。
因此悬空时,输入=1。
⏹16路输出通道,性能:
1.输出电压:
5伏电平,兼容TTL电平。
大于2.5伏。
小于0.5伏。
4.最大输出电流:
10毫安/路。
5.开关量输出上电自动清零。
⏹二路24位计数器:
MP4221有二路24位减法计数器通道0及1号(CNT0、CNT1),范围0-16,777,215。
计数器同时具有测量任意个脉冲间的时间间隔功能。
1.输入电平:
与开关量输入相同。
2.最大计数频率:
3.计数器输入时钟上升边沿有效。
4.硬件锁存计数器溢出标志(计数器归零),并可以软件读出。
5.可以测量N个脉冲上升边沿之间的时间间隔(N=2-)。
可以快速测量信号的频率。
注1
6.计数器输入通道0号与开关量输入DI14共用。
7.计数器输入通道1号与开关量输入DI15共用。
⏹2路20位脉冲输出
1.基准时钟:
2.20位计时器。
3.3种输出模式:
●支持PWM方波(占空比可编程方波)
●单次正脉冲输出
●可编程个数及频率方波输出。
4.脉冲输出与开关量输出14、15号共用(用户可以软件选择输出通道:
5.输出特性与开关量输出相同。
1.操作系统支持win98/win2000/winXP/win732位版本
2.开发包:
驱动程序、DLL库函数
3.例子:
MFC、VB
4.测试程序
5.LABVIEW例子。
位置:
光盘的\USB\MP4221目录。
其他特性
⏹总线:
符合USB2.0标准
⏹工作电流:
小于500mA。
⏹电源:
USB供电,可以选择外部5伏电源供电。
⏹外部电源输入电压:
5伏,±
5%。
供电为miniUSB接口。
用户也可以选择内部3位“PW1”连接器供电。
⏹内部板卡尺寸:
10cmx11.5cm
二、原理说明
简介
MP4221采用USB2.0接口,控制接口采用Cypress公司的CY68013芯片,提供16MByte/s的高速通讯速率。
AD部分接口采用GPIF与FIFO接口,数据自动传输、无需板上CPU干预,内部数据传输速率可以达到20MByte/s。
针对USB供电电源不稳定,板上设计了开关式DC-DC电源,使MP4221从4.6V-5.5V输入电源都可以稳定工作。
AD转换器采用12位2000KHZAD,支持2000KHZ速度的连续采集及存储采集(最大长度2百万点)。
开关量采用FPGA门阵列芯片,提供4个8位I/O口:
16输入/16输出。
输出上电自动清零。
并在内部设计集成了2个24位计数器、2个20位脉冲发生器。
2路静态输出12位DA。
原理框图:
AD及数据计算
模拟输入
MP4221具有8路单端模拟输入:
AIN0-AIN7,输入阻抗1兆欧姆。
输入具有过压保护,可以承受瞬时±
20伏的电压。
单端输入:
输入信号以地线为参考零点。
采样时,用户可以任意设置起始采样通道stch及停止采样通道endch,要求endch>
=stch。
AD输入有3档量程,由软件控制(详细见编程部分说明,分别对应增益选择:
0-2号)。
输入范围:
增益选择G
输入范围
0-5V
1
5V
2
0-10V
以上的功能由MP4221_AD()函数中的参数控制,如下:
1.stch:
控制AD采样的起始通道号(=0-15)
2.endch:
控制AD采样的结束通道号(=0-15)
3.gain:
=0-2。
4.sidi:
单端输入或差分输入,MP4221此参数=0。
AD输入校正
AD采用自动软件校正,能够有效的减小温度偏移带来的误差。
用户在开始采样工作之前必须调用一次MP4221_CAL()函数,对AD进行一次校正操作,否则采样误差将极大!
AD转换数据格式与计算
AD采样的数据按从stch开始到endch结束的通道扫描顺序,循环存放,每一个16位采样结果按低8位在前,高8位在后的顺序排列,如下:
stch,stch+1,….,endch…….stch,..,endch,……结束
MP4221函数在将数据发送给客户时已经按照顺序将数据存放到客户指定的数组中了(32位长整形,其中低12位为12位AD采样结果)。
MP4221采用DAfifo(动态异步缓存)接口,容量为8192Kbyte,具有空(EF)、半满(HF)、溢出(FF)标志,标志为“0”时有效。
采样数据不断的写入FIFO中,当发生用户读入数据操作时,GPIF接口自动将FIFO中所有的数据传输到计算机中。
如果用户没有及时读出数据,FIFO将溢出,数据队列顺序会打乱(新进入的数据将冲掉最先写入的数据)。
如果出现FIFO溢出,只能靠提高计算机速度或降低采样速度或扩大存储器容量来弥补,也可以采用存储采集模式(此模式不受计算机速度限制)。
数据格式:
16位读出数据(D15-D0)定义如下:
D15
D14
D13
D12
D11
D10
D9
D8
AD11
AD10
AD9
AD8
D7
D6
D5
D4
D3
D2
D1
D0
AD7
AD6
AD5
AD4
AD3
AD2
AD1
AD0
-D16-D0:
32位读入数据的低16位数据的从高到低位。
-AD11-AD0:
12位采样数据,(MSB-LSB)。
12位转换数据范围为0-4095,对应电压计算:
设:
data为12位转换结果
0-5伏,G=0
电压=data*5000.0/4095.0(mV)
0-10伏,G=2
电压=data*10000.0/4095.0(mV)
5伏,G=1
电压=(data-2048)*5000.0/2048.0(mV)
用户可以调用MP4221_ADV()函数来计算电压。
AD采样的工作模式
MP4221具有2种采样数据控制模式,分别对应MP4221_ADXXXMP4221_FADXXX函数,如下:
启动转换后,用户可以利用定时器从AD数据缓冲存储器中不断读入数据,这些数据由硬件保证为一个连续的数据流(按照用户设置的通道转换顺序连续输出),直道用户测量完毕关闭转换。
用户读出数据可以顺序放在一个大数组中或直接实时存盘(要求磁盘的速度足够快)。
这种数据模式的特点是:
可以连续不间断的长时间采样,但用户需要不断从缓冲中读出数据以保证硬件缓冲不溢出。
这种模式在启动后不需要用户干预、不占用计算机任何资源,更佳适合多个MP4221同时工作或低速计算机系统,但最大采样长度只有点。
这种采样模式的特点:
启动转换后不需要软件干预、自动采集。
两种模式的硬件控制方法相同,如下:
⏹MP4221的启动模式为:
软件启动/外部触发启动。
由MP4221_AD()函数的trsl、trpol控制
⏹转换时钟:
内部/外部时钟。
由MP4221_AD()函数的clksl、clkpol控制
当由定时器脉冲或外部时钟有效边沿启动后,AD开始第一次转换,采样通道为当前通道,并在启动AD后自动将输入通道设置为下一个转换通道。
通道转换顺序为:
从第N通道开始顺序转换到第M通道结束,然后又重新从N到M通道,如此循环直到用户结束转换,(N、M定义同上)。
转换数据顺序写入Dfifo中。
此模式下各个通道之间的时间间隔相等,大小为转换时钟的周期。
每个通道的采样速度f如下:
f=定时器频率/转换通道的个数
相同通道号之间的采样数据的时间间隔:
T=转换通道的个数*定时器设定的时间周期
定时器与外部时钟
MP4221的AD启动转换时钟可以软件选择由板上或外部时钟控制,MP4221_AD()函数的clksl=0内部时钟/=1选择外部时钟。
外部时钟的极性可以软件选择为上升或下降边沿启动一次或一周转换,clkpol变量=0选择上升边沿有效/=1下降边沿有效。
内部定时器输入基准时钟为10MHz,周期为100ns(0.1uS),位数:
16位。
定时器数据由MP4221_AD()函数的tdata变量设置。
定时器为减法计数器,当由用户设置数值tdata减到1时,发出启动脉冲并自动将定时器数据重新设置为tdata。
16位数据取值(tdata):
5-65535:
转换周期T=0.1*N(uS),N:
设置的16位定时器数据tdata。
转换频率f=10000/tdata(KHz)
最小转换周期为0.5uS(tdata=5),由此转换周期为:
0.5uS~6553uS。
相应总转换频率或速度为:
f=10000/tdata(KHz)tdata:
16位定时器数据。
外部转换时钟的周期或速度要求同板上定时器,如果在AD转换结束前,有外部时钟触发,MP4221将丢掉这个有效触发时钟。
外部时钟输入与开关量输入DI13共用。
触发开始采样
MP4221的启动或触发控制分为二种:
软件启动/外部硬件触发,由MP4221_AD()函数trsl控制,trsl=0:
选择软件触发启动/trsl=1:
选择外部硬件触发启动。
硬件触发的极性可以软件控制,TRPOL=0/TRPOL=1选择为:
上升边沿/下降边沿触发。
外部触发输入为数字电平输入。
软件启动:
指用户发出启动命令后转换自动开始,直到用户发出停止命令而结束。
硬件触发启动:
指用户发出启动命令后,当一个有效的触发到来后AD才开始工作,直到用户停止AD。
转换启动选择可以在触发选择中设置:
由软件或外部硬件触发启动整个转换过程,除非用户终止转换,否则将一直转换下去。
硬件触发可以在触发极性选择中设置为“上升边沿”或“下降边沿”有效。
一旦启动转换,AD转换将在板上定时器时钟驱动下按用户设置的起始(STCH)、终止通道(ENDCH)逐一通道顺序、循环转换。
MP4221的触发电路为TTL电平(详细见第一章说明),缺省触发电平设置在2伏左右。
触发输入与开关量输入通道DI12共用。
采样模式
1.采样数据控制模式:
连续采样、定长存储采样。
2.转换触发启动:
软件/硬件(trsl=0/1)。
3.转换时钟:
内部/外部(clksl=0/1)。
4.硬件触发极性:
上升/下降边沿(trpol=0/1)。
5.外部时钟极性:
上升/下降边沿(clkpol=0/1)。
6.采样通道控制:
起始通道/结束通道(stch/endch)。
7.定时器设置:
tdata控制转换速度。
连续模式函数
存储模式函数
功能
MP4221_AD()
MP4221_FAD()
启动转换
MP4221_ADPoll()
查询硬件缓冲中采样数据长度
MP4221_ADRead()
MP4221_FRead()
读出采样数据(FRead返回是否采样结束标志,=0结束)
MP4221_ADStop()
停止转换
MP4221开关量提供16个输入及16个输出接口。
所有的输出口在上电初始时为“0”或低电平。
输入接口内部上拉到+电源,如果没有外部输入,读入数据为1。
16位输入DI0-DI15由函数MP4221_DI()读入。
16位输出DO0-DO15由函数MP4221_DO()设置。
输入或输出的32位数据的低16位(D15-D0)有效,分别对应输入或输出通道15-0号。
MP4221的DIO兼容5伏TTL电平,输入可以承受8伏电压,输出高电平通常为2.8伏-5伏(5伏TTL逻辑通常大于2.3伏,就认为为逻辑1)。
开关量输入DI12DI13DI14DI15分别与触发、AD外部时钟、计数器0、计数器1等特殊输入共用,不用为特殊输入时,可以作为正常开关量输入使用。
计数器
MP4221具有2路24位计数器cnt0、cnt1。
工作模式:
减法计数模式,同时支持测频或N个脉冲上升边沿间的间隔时间测量。
计数器0及1号输入时钟与开关量输入DI14、DI15共用。
当用户利用函数MP4221_CNT_Run设置计数器初始化数值、工作模式后,溢出标志位自动清零并开始减法计数,同时内部24位定时器开始清零并在第一个有效输入脉冲边沿到来时开始加法计数(计数时钟为10MHz)。
用户可以通过调用MP4221_CNT_Read()函数,随时读入24位计数器数值cdata及定时器数值tdata,如果计数器溢出(从0减到FFFFFFH),返回数值=1,硬件会自动保留溢出状态及此时的定时器数据直到用户重新设置计数器。
测量信号的频率或脉冲间隔,例如:
如果初始化计数器数值=2,那末定时器的时间表示两个上升脉冲之间的宽度或一个波形的宽度,通过宽度,用户可以方便的计算出信号的频率,注意必须等到计数器完全计数完毕后,读出的时间才是有效时间(读出函数的返回数值=1时)。
当然,用户也可以将计数器初始化数值设置为如何大于2的24位数据,来测量N个边沿之间的时间。
但需要注意,定时器的最大定时长度为1600mS,数值=FFFFFFH(即:
),如果读出数据等于FFFFFFH,表示定时器已经超量程。
脉冲宽度=tdata*0.1uStdata:
定时器数值
计数器的波形示意图:
1.TGate:
定时器开始工作标