background image

50

OPTOIO-PCIe16

ULTRA 

© 2017 by Messcomp Datentechnik GmbH 

DV01

50

OPTOIO-PCIe16

ULTRA 

© 2017 by Messcomp Datentechnik GmbH 

EV04

50

50

wasco

®

wasco

®

10.2.3 Application example

1. How to configure the OC unit

a)  Deactivate  the  unit  by  clearing  (=  0)  the  en-Bit  in  the  register 
OCUNITxe
b) Connect the OC unit to the required optocoupler output. For this, select 
the source in the OPTOOUTMUXx register (see chapter optocoupler output 
multiplexer)
c) Preload the OC timer of the OC unit with the value 0. For this, write 
0x00000000 to the register OCTIMERx.
d) Load the pulse duration wanted to the register OCPERIODx (see also 
chapter 10.02.2 Calculation of the register values)
e) Load the word 1 to the register OCUNITORx.
f) Select the mode Single Pulse by writing the value 1 to the mode section 
in the register OCCONFIGx.

2. How to output a pulse

a) Deactivate OC unit by clearing the enable bit in register OCUNITxe.
b) Activate OC unit by setting the enable bit in register OCUNITxe. As a 
result the pulse is applied to the selected output.

10.2.3 Anwendungsbeispiel

1. OC-Einheit konfigurieren

a) Deaktivieren Sie die Einheit durch Löschen (= 0) des en-Bits im Register 
OCUNITxe
b)  OC-Einheit  mit  dem  gewünschten  Optokopplerausgang  verbinden. 
Dafür muss in dem zum Optokoppler gehörigen OPTOOUTMUXx-Register 
die  Quelle  ausgewählt  werden  (siehe  Kapitel  Optokopplerausgangs-
multiplexer).
c) Laden Sie den OC-Timer mit dem Wert 0 vor, indem Sie das Register 
OCTIMERx mit 0x00000000 beschreiben
d) Laden Sie die gewünschte Pulsdauer in das Register OCPERIODx 
(siehe auch Kapitel 10.2.2 Berechnung der Registerwerte)
e) Laden Sie das Register OCUNITORx mit dem Wort 1
f) Wählen Sie den Single-Puls-Modus aus, indem Sie den Wert 1 in den 
Mode-Bereich im Register OCCONFIGx schreiben

2. Puls ausgeben

a)  OC-Einheit  durch  Löschen  des  Enable-Bits  im  Register  OCUNITxe 
deaktivieren
b) OC-Einheit durch Setzen des Enable-Bits im Register OCUNITxe akti-
vieren. Daraufhin wird am ausgewählten Ausgang der Puls angelegt.

Summary of Contents for OPTOIO-PCIe16 ULTRA

Page 1: ...User s Guide wasco OPTOIO PCIe16 ULTRA EDP No A 829410 16 optocoupler isolated digital inputs 16 optocoupler isolated digital outputs 16 32 bit Counter Timer OC and IC Units Board Identification...

Page 2: ...hout preannouncement No parts of this manual are allowed to be reproduced copied translated or transmitted in any way without a prior written consent of Messcomp Datentechnik GmbH Registered Trademark...

Page 3: ...5 16 Optocoupler Isolated Digital Inputs 13 5 1 Pin assignment of the input optocouplers 13 5 2 Input voltage ranges 14 5 3 Input wiring 16 5 4 Input current 16 5 5 Access to the inputs 17 5 6 Optocou...

Page 4: ...rogramming under Windows 71 13 1 Installation of the Windows driver 71 13 2 Installation of the Windows development files 71 13 3 Programming the OPTOIO PCIe16 with wasco driver 74 13 4 Access to the...

Page 5: ...counters areavailableaswellasOutputCompareunits e g PWM andInputCapture units e g for period measurement All optocoupler inputs counters IC units and the two 32 bit timers time dependent can initiate...

Page 6: ...e computer Inserting the interface card in a running system may cause damaging or destroying not only the card OPTOIO PCIe16ULTRA but even other already inserted cards of your com puter Select an empt...

Page 7: ...PTOIO PCIe16ULTRA 2017 by Messcomp Datentechnik GmbH EV04 7 wasco 3 Connectors 3 1 Position of the connector plugs on the board CN1 Optocoupler Output OUT00 OUT15 CN2 Optocoupler Input IN00 IN15 CN1 C...

Page 8: ...tage across this pin GND Ground connection only when a wiring bridge is soldered to L12 NC not connected OUT00 OUT01 OUT02 OUT03 OUT04 OUT05 OUT06 OUT07 OUT08 OUT09 OUT10 OUT11 OUT12 OUT13 OUT14 OUT15...

Page 9: ...oltage across this pin GND Ground connection only when a wiring bridge is soldered to L22 NC not connected NC NC NC Vcc GND Vcc GND NC IN15 IN15 IN14 IN14 IN13 IN13 IN12 IN12 IN11 IN11 IN10 IN10 IN09...

Page 10: ...1 Never apply an external voltage across this pin GND Ground connection only when a wiring bridge is soldered to L22 NC not connected IN00 IN01 IN02 IN03 IN04 IN05 IN06 IN07 IN08 IN09 IN10 IN11 IN12 I...

Page 11: ...System Components PCIe x1 PCIe Bus Interface Control and Interrupt Logic 12V 32 bit Internal Data Bus 12V 5V GND 40 pin Pin Header 37 pin Sub D Jack Optocoupler Inputs IN00 IN15 Optocoupler Outputs OU...

Page 12: ...resses relevant to the OPTOIO PCIe16 arise depending on the BIOS assigned base address Access to the OPTOIO PCIe16 is exclusively in double word access For reasons of compatibility the wasco driver fe...

Page 13: ...channels each of which is optically isolated by optocouplers The isolation voltage between GND and input is 500 VDC The voltage within the input channels is limited to 50 VDC 5 1 Pin assignment of the...

Page 14: ...Messcomp Datentechnik GmbH EV04 14 wasco 5 2 Input voltage ranges You can choose between two different input voltage ranges for each opto coupler input by setting jumpers on the blocks JP4 JP6 JP7 an...

Page 15: ...o 0 1V Low and 5 15V High The remaining input voltage ranges keep unaffected For the data of the two input voltage ranges please refer to the following table Jumper LOW HIGH closed 0 1 V 5 15 V open 0...

Page 16: ...Ie16ULTRA 2017 by Messcomp Datentechnik GmbH EV04 16 wasco 5 3 Input wiring 5 4 Input current UE 1 1V 3400 IE Jumper open UE 1 1V 1000 IE Jumper closed Abb 5 3 Optocoupler Jumper IN IN 1K 2K4 UE Prote...

Page 17: ...single input by an AND link operation 5 6 Optocoupler inputs with digital filters Each of the optocoupler inputs of the board WASCO PCIe8117 has its own configurable digital filter to filter spurious...

Page 18: ...considerung these switching times may lead to a filtering out of signals at the optocoupler input even though theoretically they are applied long enough 5 7 Interrupt functions of the optocoupler inp...

Page 19: ...tion is enabled by writing the 32bit register OPTOINFe Each single bit represents one input As shown in the table port addresses chapter 11 1 the respective bit indicates activation of the interrupt f...

Page 20: ...made available for download on our homepage Configuration 1 Activation of the card s interrupt function see chapter Interrupt Controller 2 Enable the required interrupt Before enabling an edge detecti...

Page 21: ...0x00000001 On the other hand the user can determine via the 32 bit register OPTOINICCe which one of the inputs should be considered for the detection In the event of a change at the inputs the corresp...

Page 22: ...OINFIL10 7 0 17 1 18 2 19 3 20 4 21 5 22 6 23 7 24 8 reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Ran...

Page 23: ...eserved OPTOINFIL14 15 0 reserved OPTOINFIL15 15 0 17 1 18 2 19 3 20 4 21 5 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 Reg...

Page 24: ...each bit corresponds to one optocoupler input e g IN00 OPTOIN 0 IN13 OPTOIN 13 If a HIGH is applied to an input the associated bit is 1 otherwise it is 0 Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 2...

Page 25: ...ach of which is op tically isolated by optocouplers likewise The isolation voltage between GND and output is 500 V 6 2 Optocoupler data Voltage CE max 50V Voltage EC 0 1V Current CE 150 mA 6 1 Pin ass...

Page 26: ...PTOOUT 6 4 2 Assigning optocouplers with other hardware components In addition to the basic function which allows easy access to the opto coupler outputs it is possible to assign different hardware co...

Page 27: ...19 3 20 4 reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved 21 5 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15...

Page 28: ...reserved OPTOOUTMUX15 3 0 17 1 18 2 19 3 20 4 reserved reserved reserved reserved reserved 21 5 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16...

Page 29: ...ds to one optocoupler output OPTOOUT 0 OUT00 OPTOOUT 13 OUT13 If the respective bit is 1 the corresponding optocoupler output is enabled If the respective bit is 0 the corresponding optocoupler output...

Page 30: ...the bit allocated to the counter in the register COUNTIRr 4 To determine the counter value read out the register COUNTxx The board WASCO PCIe8117 provides a total of 16 32 bit event counters rising e...

Page 31: ...eserved reserved reserved reserved reserved 18 2 19 3 20 4 21 5 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 31 1...

Page 32: ...NT6 15 0 17 1 reserved reserved reserved reserved 18 2 19 3 20 4 21 5 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15...

Page 33: ...erved COUNTMUX1 7 0 reserved COUNTMUX2 7 0 17 1 18 2 19 3 20 4 21 5 22 6 23 7 24 8 reserved reserved reserved 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16...

Page 34: ...23 7 24 8 reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0...

Page 35: ...1 reserved value 0 is written Bit 0 COUNTxe 0 default 0 lock or enable the counter 0 lock default 1 enable Register COUNTx Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29 21 13 5 Bit 28 20 12 4 Bit 27...

Page 36: ...t 26 18 10 2 Bit 25 17 9 1 Bit 24 16 8 0 31 24 U reserved 23 16 U reserved 15 8 U reserved 7 0 R W COUNTMUXx 7 0 Bit 31 8 reserved value 0 is written Bit 7 0 COUNTMUXx 7 0 default 0 the register value...

Page 37: ...register TIMERx 2 Next determinate the interval The duration of the interval is set in the writable 32 bit register TIMERCOMPx Interval duration TIMERCOMPx 1 1 s 3 In order to trigger an interrupt aft...

Page 38: ...6 TIMERCOMP0 15 0 TIMERCOMP1 31 16 TIMERCOMP1 15 0 17 1 reserved reserved 18 2 19 3 20 4 21 5 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16 1...

Page 39: ...Bit 31 1 reserved value 0 is written Bit 0 TIMERxe 0 default 0 start or stop the timer 0 stopped default 1 started Register TIMERx Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29 21 13 5 Bit 28 20 12 4...

Page 40: ...t 29 21 13 5 Bit 28 20 12 4 Bit 27 19 11 3 Bit 26 18 10 2 Bit 25 17 9 1 Bit 24 16 8 0 31 24 R W TIMERCOMPx 31 24 23 16 R W TIMERCOMPx 23 16 15 8 R W TIMERCOMPx 15 8 7 0 R W TIMERCOMPx 7 0 Bit 31 0 TIM...

Page 41: ...completed automatically the period duration and the pulse duration is computed and the values are written to the registers ICPERIODLx and ICPULSLx At the next rising edge the unit starts to measure by...

Page 42: ...od and the pulse duration it is possible to trigger an interrupt after completion For this you activate the interrupt function by setting the corresponding bit in register ICUNITRe When the interrupt...

Page 43: ...ICPERIOD1 15 0 17 1 reserved reserved 18 2 19 3 20 4 reserved reserved 21 5 22 6 23 7 24 8 reserved reserved 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16...

Page 44: ...lt 0 Start and stop the IC Unit 0 stopped default 1 started operating measuring Register ICCONFIGx Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29 21 13 5 Bit 28 20 12 4 Bit 27 19 11 3 Bit 26 18 10 2 B...

Page 45: ...3 Bit 26 18 10 2 Bit 25 17 9 1 Bit 24 16 8 0 31 24 U reserved 23 16 U reserved 15 8 U reserved 7 0 R W ICMUXx 7 0 Bit 31 8 reserved value 0 is written Bit 7 0 ICMUXx 7 0 default 0 The register value d...

Page 46: ...16 15 8 R ICPULSx 15 8 7 0 R ICPULSx 7 0 Bit 31 0 ICPULSx 31 0 From this register read out the last measured pulse duration in s Register ICPERIODx Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29 21 13...

Page 47: ...realize the PWM the OC Unit is using a writable 32 bit timer with adjustable period duration in s OCPERIODx and a two level compare register OCUNITORx to set the pulse duration in s If the OC Unit is...

Page 48: ...eriod duration of the PWM For this write the period duration to the register OCUNITORx as follows OCPERIODx Period duration 1 s 5 Define the pulse duration For this write the pulse duration to the reg...

Page 49: ...ty To output separate positive pulses optocoupler enabled you primarily have to configure the registers Then each time the en bit is cleared and then set in the register OCUNITxe you can issue a pulse...

Page 50: ...imer of the OC unit with the value 0 For this write 0x00000000 to the register OCTIMERx d Load the pulse duration wanted to the register OCPERIODx see also chapter 10 02 2 Calculation of the register...

Page 51: ...DE0 3 0 reserved OCMODE1 3 0 17 1 reserved reserved 18 2 19 3 20 4 reserved reserved 21 5 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0...

Page 52: ...served value 0 is written Bit 0 OCUNITxe 0 default 0 Start or stop OC Unit 0 stopped default 1 started operating measurements Register OCTIMERx Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29 21 13 5 B...

Page 53: ...5 8 7 0 R OCUNITORx 7 0 Bit 31 0 OCUNITORx 31 0 default 0 Defines the pulse duration of the OC Unit x in s Pulse duration OCUNITORx s Register OCPERIODx Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29...

Page 54: ...t 28 20 12 4 Bit 27 19 11 3 Bit 26 18 10 2 Bit 25 17 9 1 Bit 24 16 8 0 31 24 U reserved 23 16 U reserved 15 8 U reserved 7 0 U R W reserved OCMODEx 3 0 Bit 31 4 reserved value 0 is written Bit 3 0 OCM...

Page 55: ...INTe 1 and the register is reset The interrupt line to the PC is blocked for any further interrupts when an interrupt has been triggered To enable again the line the source has to be determined and t...

Page 56: ...ally to be an interrupt source OPTOINFe and enabled again after an interrupt is triggered and serviced OPTOINFr The process completed the respective bit in the register INTCON is set to 0 automaticall...

Page 57: ...served reserved 18 2 reserved 19 3 20 4 INT4 21 5 INT5 22 6 INT6 23 7 INT7 24 8 reserved 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 31 16 15 0 31 16...

Page 58: ...ved TIMERIR 1 0 17 1 18 2 reserved reserved reserved reserved reserved reserved 19 3 20 4 21 5 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 31 16 15 0 31 16 15 0 31 16...

Page 59: ...1 reserved write the vlaue 0 Bit 0 INTe 0 default 0 Enable or lock the card s interrupt function 0 Interrupt locked default 1 Interrupt enabled Register INTr Bit Range Bit 31 23 15 7 Bit 30 22 14 6 B...

Page 60: ...s 0 no interrupt was triggered by a timer 1 one of the timers has triggered an interrupt Bit 4 INTCON 4 signals an interrupt from one of the counters 0 no interrupt was triggered by a counter 1 one of...

Page 61: ...e 0 IN13 OPTOINIFe 13 If a bit is 1 the function for edge interrupt of the optocoupler input is enabled if it is 0 the function is blocked Register OPTOINIFr Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bi...

Page 62: ...onds to an opto coupler input e g IN00 OPTOINIF 0 IN13 OPTOINIF 13 A 1 in the respective bit it indicates that there has been a rising edge on the input since the last reset a 0 stands for no edge app...

Page 63: ...optocoupler inputs Each bit corresponds to an optocoupler input e g IN00 OPTOINICCe 0 IN13 OPTOINICCe 13 0 Interrupt locked default 1 Interrupt enabled Register OPTOINICr Bit Range Bit 31 23 15 7 Bit...

Page 64: ...r inputs 0 no change 1 change to an enabled optocoupler input Register COUNTIRe Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29 21 13 5 Bit 28 20 12 4 Bit 27 19 11 3 Bit 26 18 10 2 Bit 25 17 9 1 Bit 24...

Page 65: ...en triggered from a counter its signal bit in the COUNTIR register has to be reset This is done by setting 1 the corresponding COUNTIRr bit The COUNTIRr bits are set to 0 auto matically after reset Re...

Page 66: ...IMERIRe 0 timer 1 TIMERIRe 1 0 Interrupt locked default 1 Interrupt enabled Register TIMERIRr Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29 21 13 5 Bit 28 20 12 4 Bit 27 19 11 3 Bit 26 18 10 2 Bit 25...

Page 67: ...ed from a timer Each bit corresponds to a timer e g Timer 0 TIMERIR 0 Timer 1 TIMERIR 1 0 no interrupt 1 interrupt triggered Register ICUNITIRe Bit Range Bit 31 23 15 7 Bit 30 22 14 6 Bit 29 21 13 5 B...

Page 68: ...en triggered from a IC Unit its signal bit in the ICUNITIR register has to be reset This is done by setting 1 the corresponding ICUNITIRr bit The ICUNITIRr bits are set to 0 auto matically after reset...

Page 69: ...y a jumper block which can be read by software The board identification to be read consists of one Byte 8 Bit and is structured as follows x is 1 if the jumper is set otherwise 0 The jumper setting of...

Page 70: ...EV04 70 wasco Bits 16 0 reserved Board ID 17 1 18 2 19 3 20 4 21 5 reserved 22 6 23 7 24 8 25 9 26 10 27 11 28 12 29 13 30 14 31 15 Bit Range 31 16 15 0 Register Name BOARDID Offset Address 0xOFF8 12...

Page 71: ...and 7 automatically reports after starting the PC that a new hardware component has been found In this case insert the data medium and instruct to the system to install the driver files herefrom If t...

Page 72: ...sscomp Datentechnik GmbH EV04 72 wasco Once the driver and development files have been installed completely you will find an icon in the control panel of your computer to localize all wasco PCI and PC...

Page 73: ...pears An OPTOIO PCIe16ULTRA is used as an example If your card has been detected in the system the board name WASCO PCIe8117 Board ID I O address as well as the possible interrupt number of the respec...

Page 74: ...of Kithara by means of the setup program thefolderwascocontainsoftherelevantdevelopmentfilesandthesample programs Further sample programs specified for access to the OPTOIO PCIe16 you can find on the...

Page 75: ...are components depend on the base address as shown in following table using a few examples Port Register BA Offset RD WR Optocoupler Input Port BA 0 RD IN00 IN15 Optocoupler Output Port BA 8 RD WR OUT...

Page 76: ...R200DS37 or DS37R500DS37 Alternatives KMDB 37 with or without prototype area KMDB 37S Connecting parts EDP No PDB37F23PB40 Ribbon cable A 497500 DS37R100DS37 Connecting wire 1 meter A 202200 DS37R200D...

Page 77: ...prototype area XMOD REL 8 Connection parts EDP No D Sub plug 37 pin for solder connection A 5506 Junction shell 37 pin plug solder connection A 5586 D Sub connector male 37 pin for flat ribbon cable A...

Page 78: ...act your dealer or distributor to solve your problem 1st Is OPTOIO PCIe16 properly inserted to the connector 2nd Are all cable connections all right 3rd Did your system detect the card correctly Pleas...

Page 79: ...z Optocoupler Outputs Optocoupler 16 channels galvanically decoupled socketed Galvanic isolation likewise between each single channel with each two separate connectors Overvoltage protection by protec...

Page 80: ...pected not to observe the necessary safety instructions when handling this product It must therefore always be shown that the non commercial end user was made familiar with the safety rules In the int...

Page 81: ...s or wires which are connected with the unit the components or the boards must be examined for insulation faults or breaks In case of any defect the device must be taken out of service immediately unt...

Page 82: ...the products are not fully complied with The following standards were considered EN 55011 2009 A1 2010 Group 1 Class A EN 55022 2010 AC 2011 EN 55024 2010 EN 61000 6 4 2007 A1 2011 EN 61000 6 2 2005...

Page 83: ...g additional computer components simultaneously Thus the information to the CE conformity exclusively refers to the following reference system for the intended use of the PC expansion card Control Cab...

Reviews: