Dual-core intel atom epic sbc with h.264 hardware video decoder (68 pages)
Summary of Contents for ADLINK Technology PCI-8124
Page 1
ADLINK PCI-8124 Manual Get Pricing & Availability at ApexWaves.com Call Today: 1-800-915-6216 Email: sales@apexwaves.com https://www.apexwaves.com/modular-systems/adlink-technology-inc./motion-control/PCI-8124...
Page 2
PCI-8124 4 Channel Encoder Compare and Trigger Board User’s Manual Manual Rev. 2.00 Revision Date: February 12, 2007 Part No: 50-11138-1000 Advance Technologies; Automate the World.
Page 3
Copyright 2007 ADLINK TECHNOLOGY INC. All Rights Reserved. The information in this document is subject to change without prior notice in order to improve reliability, design, and function and does not represent a commitment on the part of the manufacturer.
Page 4
Getting Service from ADLINK Customer Satisfaction is top priority for ADLINK Technology Inc. Please contact us should you require any service or assistance. ADLINK TECHNOLOGY INC. Web Site: http://www.adlinktech.com Sales & Service: Service@adlinktech.com TEL: +886-2-82265877 FAX: +886-2-82265717 Address: 9F, No. 166, Jian Yi Road, Chungho City,...
Page 7
Homing with EZ Signal ..........31 Trigger Pulse Width ............31 Linear Function ............. 31 FIFO ................32 PWM & Mapping ............32 Trigger Board Operation ............ 33 Position Comparison ............. 33 Position Latch ............... 34 Linear Function ............. 34 FIFO mode ..............
List of Tables Table 2-1: CN1 Pin Assignments ..........13 Table 2-2: CN2 Pin Assignments: TTL Output ......14 Table 5-1: Data type definitions ..........41 List of Tables...
With FPGA calculation, it can also save CPU loading of host PC. The PCI-8124 utilizes a FPGA and FIFO to realize the purpose. All comparing points will automatically load into FIFO and be com- pared with the internal comparators. As a result, users do not have to handle this with software.
Page 11
ADLINK provides a Windows WDM driver for users. Users can use DLL function library to build up the application. The block dia- gram of PCI-8124 is as follows. Figure 1-1: PCI-8124 Block Diagram Introduction...
1.1 Features PCI Rev 2.2, 32-bit/33Mhz Compliment Support both PCI-X (3.3V) and PCI (5V) slots Support 4-bit board ID for multiple boards in one system 4 differential quardrature encoder counter input channels Each encoder counter input pair supports 1/2/4x A/B phase, dual pulse (CW/CCW) and signed pulse (OUT/DIR) modes 4 trigger output channels via both open collector and TTL pins Trigger pulse width is software programmable from 0.1µs to...
1.2 Specifications Main Chip Chip Vendor: ACTEL Model No: A3P1000 Power usage: 3.3V and 1.5V Reference clock: 40Mhz Encoder Counters: Number of channels: 4 Type of wiring: dual differential pairs or single-ended pair Input Isolated photo coupler: PS9115 Isolated Voltage: 2500 Vrms Maximum input frequency: 10 MHz Supported modes: AB phase x1/2/4, CW/CCW, OUT/DIR Data length: 32-bit...
Page 14
Trigger Output: Number of channels: 4 Maximum output frequency: 5Mhz Output types: Open collector or TTL Open collector Isolated photo-coupler: PS9115 Open collector Isolated: 2500 Vrms Continuous triggering method: Timer, FIFO or Linear func- tion data reloading Interrupt: Yes, when triggered Comparator FIFO: Number of FIFO: 4 FIFO depth: 1023x32bits...
Page 15
TTL Input Number of input pins: 4 Photo-coupler Isolated: No TTL input mode: General purpose or timer synchronous start signal TTL output Number of output pins: 4 Photo-coupler Isolated: No TTL output mode: General purpose output or trigger output General Specifications Connectors: 50-pin SCSI-type connector °...
1.3 Supported Software 1.3.1 Programming Library ADLINK provides Windows WDM driver and DLL function library for the PCI-8124. These function libraries are shipped with the board. It supports for Windows 2000/XP/Vista. Introduction...
Installation This chapter describes how to install the PCI-8124. Please follow these steps below: Check what you have (Section 2.1) Check the PCB (Section 2.2) Install the hardware (Section 2.3) Install the software driver (Section 2.4) Understanding the I/O signal connections (Chapter 3) and their operation (Chapter 4) 2.1 Package Contents...
2.3.2 PCI slot selection Your computer system may have both PCI and ISA slots. Do not force the PCI card into a PC/AT slot. The PCI-8124 can be used in any PCI slot. It also supports dual voltage PCI bus.
If not, check the PCI settings in the BIOS or use another PCI slot. 2.4 Software Driver Installation Using the All-In-One CD with PCI-8124 package and execute the following steps: 1. Autorun the ADLINK All-In-One CD. 2. Follow the procedures of the installer.
2.5 CN1 Pin Assignments CN1 is the 50-pin SCSI type connector for I/O signals. Name Function Name Function INCOM1 Latch input common INCOM3 Latch input common LTC1 Latch input LTC3 Latch input INCOM2 Latch input INCOM4 Latch input common LTC2 Latch input LTC4 Latch input...
2.6 CN2 Pin Assignments: TTL Output CN2 is a 6-pin header as follows: Name Function +5V power supply TTL-OUT1 O TTL output signal TTL-OUT2 O TTL output signal TTL-OUT3 O TTL output signal TTL-OUT4 O TTL output signal DGND TTL signal ground Table 2-2: CN2 Pin Assignments: TTL Output Note: +5V and DGND pins are provided by the PCI-Bus.
Signal Connections Signal connections of all I/O’s are described in this chapter. Refer to the contents of this chapter before wiring any cables between the PCI-8124 and the end device. This chapter contains the following sections: Section 3.1 Connector (CN1) Pin Definition Section 3.2...
3.1 Connector (CN1) Pin Definition There are 4 Isolated Latch Inputs, 4 A-B-Z Encoder Inputs, 4 TTL level Inputs, 4 TTL level outputs and 4 Isolated Outputs on PCI- 8124. The following table shows the pin assignment of CN1. CN1No. Name Function INCOM1...
3.2 Isolated Input Ports (LTC, INCOM) There are 4 pairs of isolated input ports on PCI-8124. Each pair has two terminals. One is INCOMx, and the other is LTCx. Because the input port of the photo coupler utilized on PCI-8124 is single-directional, LTC signal must be lower than INCOM signal.
3.3 Isolated Encoder Differential Input There are 4 pairs of A-B-Z encoder signal inputs on PCI-8124. The pin assignment of these encoder inputs are listed in the following table. The typical forward voltage of the input diode is 1.65V. And the forward current of the input diode is 7.5mA to 12.5mA.
3.4 Isolated Output Ports (TRG, EGND) There are 4 independent isolated output ports on PCI-8124. Because the use of photo coupler PS9115, the output pull high is not needed. The pin assignment of the isolated output ports on PCI-8124 is as follows, and PS9115 output characteristics are described in the following figure.
Page 30
PCI-8124 Outside PCI-8124 220Ω TRGx Signal Connections...
3.5 TTL Input Ports There are 4 single ended TTL-level input ports on PCI-8124. The following table shows the pin assignment of these TTL inputs. CN1 Pin No. Name Description TTL-IN1 TTL Level Input port 1 TTL-IN2 TTL Level Input port 2...
3.6 TTL Output Ports There are 4 single ended TTL-level output ports on PCI-8124. The following table shows the pin assignment of these TTL outputs. CN1 Pin No. Name Description TTL-OUT1 TTL Level Output port 1 TTL-OUT2 TTL Level Output port 2...
Operation Theory This chapter describes the detail operation of the PCI-8124 board. Contents of the following sections are as follows: Section 4.1: The trigger board overview Section 4.2: Trigger board operation Section 4.3: Multiple boards operation Section 4.4: Interrupt Control...
4.1 Trigger Board Overview The input and output relationships are shown as follows: Operation Theory...
Page 36
Inside the PCI-8124, all the position comparison and mapping tasks will be executed within the FPGA. The functional block is as follows: The FIFO will automatically load the comparing points into 32-bit comparator. The comparator will compare the data from counter and FIFO individually.
4.1.1 Encoder Channel The PCI-8124 has four 32-bit binary up/down counters to keep the present feedback position from each encoder channel. The counter counts signal inputs from the EA and EB pins. The counter source could be assigned to internal timer.
Page 38
Dual Pulse Mode (CW/CCW Mode) In this mode, EA is dedicated to count the pulses from external source and view it as clockwise direction (CW). EB is dedicated to count the pulses from external source and view it as counterclock- wise direction (CCW).
90° phase shifted signals (AB phase Mode) In this mode, EA signal is a 90° phase leading or lagging to EB signal. “Lead” or “lag” of phase difference between two signals is caused by the turning direction of the motor. The up/down counters counts up when the phase of EA signal leads the phase of EB signal.
4.1.3 Homing with EZ Signal The PCI-8124 can clear the counter value as zero according to the edge of EZ signal. Homing by edge can let users meet best hom- ing positioning purpose. Rising or falling edge is supported. The following diagram shows the case about the homing by rising edge.
4.1.6 FIFO FIFO is first-in-first-out storage. It is used for storing some preset position data for comparing. Every time the position is compared, a new data is retrieve from FIFO into comparator. This mechanism makes a the continuous triggering function. 4.1.7 PWM &...
Example: Using the continuous position comparison function. In this application, the table is controlled by the motion command, and the CCD Camera is controlled by the position comparison out- put of the PCI-8124. An image of the moving object is easily obtained. Operation Theory...
User’s can read the latch reg- ister any time. 4.2.3 Linear Function There are 10 linear functions in PCI-8124. Each function is inde- pendent. It means that linear function range overlapped is possible when operation. Each linear function has its own comparator and the comparator could be linked to any one of four counters.
4.2.5 Timer function There are 4 timers on PCI-8124. The timer is started by TTL input and the timer can be set to counters to simulate encoder inputs. It can also output to trigger pins directly. The timer is designed by a down-counter.
S1. With this benefit, users can control each board accordingly without any confusion. For example, if three PCI-8124 cards are plugged in to PCI slots, then the corre- sponding channel number on each card will be: CH No.
4.4 Interrupt Control The PCI-8124 can generate an INT signal to the host PC. Users have to enable the interrupt service with this function call, _8124_set_int_factor. On the contrary, the parameter of intFactor of function is set to 0 to disable the interrupt service.
Page 47
Use wait function we provided to wait interrupts under Win- dows To detect an interrupt signal from the PCI-8124 under Windows, we provided an easier way to deal with the interrupt process. The following steps are described that how you use those interrupt functions.
Page 48
Steps: 1. Enable the interrupt factors that you want to be wait. “_8124_get_int_factor” 2. Using wait function to wait the specified interrupt. “_8124_wait_single_int” 3. In the end of interrupt process, you should disable the interrupt service. “_8124_get_int_factor” Example: _8124_set_int_factor( CardId, Channel, 0x4); // FIFO empty …(FIFO operation)…...
Boolean Boolean logic value TRUE, FALSE Table 5-1: Data type definitions The functions of the PCI-8124’s software drivers use full-names to represent the functions real meaning. The naming convention rules are: In a ‘C’ programming environment: _{8124}_{action_name (lower case)} e.g. _8124_initial () In order to recognize the difference between a C library and a VB library, a capital “B”...
Page 51
System: Section 5.2 Function Name Description _8124_initialSw PCI-8124 Cards Initialization _8124_close Release the resources of PCI-8124 Cards _8124_get_version Get the hardware and software versions Encoder & Counter: Section 5.3 Function Name Description _8124_set_encoder_input_mode Set the pulse input decoded mode _8124_set_encoder_value Set the encoder’s(counter’s) value...
Page 52
FIFO Comparing: Section 5.7 Function Name Description _8124_reset_fifo Reset FIFO data _8124_get_fifo_sts Get the current FIFO status _8124_set_fifo_data Set a comparing data to FIFO _8124_set_fifo_array Set comparing data array to FIFO _8124_set_fifo_shift Shift the FIFO data to comparator _8124_set_fifo_level Set the FIFO low level _8124_get_fifo_level Get the FIFO low level Linear Comparing: Section 5.8...
Page 53
Function Name Description _8124_start_timer Start the timer manually Interrupt Control: Section 5.13 Function Name Description _8124_set_int_factor Set (Enable) the interrupt factors _8124_get_int_factor Get the setting of interrupt factors _8124_wait_single_int Wait the single interrupt event _8124_reset_int Set the interrupt event to a non-signaled state Function Library...
Get the hardware and software versions @ Description _8124_initialSw: This function is used to initialize the PCI-8124 cards in your system. All PCI-8124 cards must be initialized by this function before calling other functions. The ID of cards can be assigned by system automatically or dip switch (SW1) manually.
Page 55
@ Arguments I16 *CardIdInBit: The information of PCI-8124 cards’ card ID in bit format. Ex. CardIdInBit = 0x0009; It means there are two PCI-8124 cards in your system Card_0’s ID = 0, Card_1’s ID = 3 I16 ManualId: Cards’ ID decided by SW1...
5.3 Encoder & Counter @ Name _8124_set_encoder_input_mode Set the pulse input decoded mode _8124_set_encoder_value Set the encoder’s(counter’s) value _8124_get_encoder_value Get the encoder’s(counter’s) value _8124_set_encoder_up_down_count Set count up or count down for counter _8124_set_ez_clear Configure the EZ clear operation _8124_set_counter_source Set the source of counter @ Description _8124_set_encoder_input_mode: There are 5 types of pulse input mode(EA/EB) including OUT/...
Page 57
_8124_set_counter_source: This function is used to set the counter source. The source could be one of the EA/EB input channels or timers. The default counter source is EA/EB. About timer, please refer the section 5.12 Timer. @ Syntax C/C++ (Windows 2000/XP) I16 _8124_set_encoder_input_mode( I16 CardId, I16 Channel, I16 IptMode );...
Page 58
B_8124_set_counter_source (ByVal CardId As Integer, ByVal Channel As Integer, ByVal CtnSrc As Integer) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 Channel: The specified channel number. (0 – 3) I16 IptMode: The pulse input mode. 0: OUT/DIR (default)
5.4 PWM Configuration @ Name _8124_set_pwm_source Set the source of PWM _8124_set_pwm_mode Set the mode of PWM ( Pulse or Toggle output) _8124_set_pwm_pulse_width Set the output pulse width _8124_set_pwm_toggle_dir Set the count direction to toggle the level output @ Description _8124_set_pwm_source: This function is used to set the PWM source (trigger source).
Page 60
B_8124_set_pwm_toggle_dir (ByVal CardId As Integer, ByVal Channel As Integer, ByVal ToggleDir As Integer) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 Channel: The channel’s number of PWM I16 CmpEn: Enable CMP(FIFO comparing) source (0: Disable, 1: Enable) I16 LinearEn: Enable Linear comparing (0: Disable, 1: Enable) I16 TimerEn: Enable timer source.
Page 61
I16 ToggleDir: Toggled condition select 0: Directionless 1: Count up 2: Count down Function Library...
5.5 TRG-OUT & TTL-OUT Configuration @ Name _8124_set_trigger_source Set the source of TRG-OUT _8124_set_trgOut_logic Set the logic of TRG-OUT _8124_set_ttlOut_source Set the source of TTL-OUT _8124_set_ttlOut Set the TTL-OUT when it is as a digital output @ Description _8124_set_trigger_source: There are two kinds of TGR sources. One is from SW2 setting, the other is from PWM or DI signals.
Page 63
B_8124_set_ttlOut (ByVal CardId As Integer, ByVal Channel As Integer, ByVal TtlOutValue As Integer) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 Channel: The channel’s number of TRG-OUT / TTL-OUT. I16 GroupSel: The TRG-OUT source. 0: Output according to SW2 setting 1: PWM / TTL-IN / EZ signal I16 PwmInBit: The source of PWM channel in bit format.
Page 64
I16 EzInBit: The source of EZ channel in bit format. Ex: EzInBit = 0x1, means EZ_0 I16 TtlOutSrc: The TTL-OUT output source 0: use as Digital output 1: Follow TRG-OUT I16 TtlOutValue: TTL-OUT output control 0: DGND. 1: D5V. Function Library...
B_8124_get_comparator_data (ByVal CardId As Integer, ByVal Channel As Integer, CmpData As Long) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 Channel: The channel’s number of comparator (CMP). I32 CmpData: The current comparing data in comparator. Function Library...
5.7 FIFO Comparing @ Name _8124_reset_fifo Reset FIFO data _8124_get_fifo_sts Get the current FIFO status _8124_set_fifo_data Set a comparing data to FIFO _8124_set_fifo_array Set comparing data array to FIFO _8124_set_fifo_shift Shift the FIFO data to comparator _8124_set_fifo_level Set the FIFO low level _8124_get_fifo_level Get the FIFO low level @ Description...
Page 67
_8124_set_fifo_data: This function is used to set the specified comparing data to the FIFO. The capacity of FIFO is 1023. When the status of FIFO is full, the data cannot be set into FIFO. This function won’t check the FIFO status. _8124_set_fifo_array: This function is used to set comparing data array to the FIFO.
Page 68
ByVal Channel As Integer, Level As Integer) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 Channel: The channel’s number of FIFO ( 0 – 3 ) I16 *FifoSts: The FIFO status. 0: FIFO datas = Empty ≥...
_8124_set_linear_source: There are 10 linear sets in PCI-8124. Use this function to assign which sets will be used in the specified trigger channel. One trigger channel can have more then one linear set.
Page 71
_8124_enable_linear_set: The PCI-8124 has 10 linear sets. Before using these linear sets, enable the linear set by this function. When linear sets are no longer needed, it is recommended that the the linear set be disabled, or it could be unexpectedly triggered.
Page 72
I16 Enable: Enable/Disable linear set 0: disable, 1: enable Function Library...
I16 _8124_manual_trigger( I16 CardId, I16 Channel ); Visual Basic (Windows 2000/XP) B_8124_manual_trigger (ByVal CardId As Integer, ByVal Channel As Integer) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 Channel: The channel’s number of PWM( 0 – 3 ) Function Library...
TtlStsInBit As Integer, LtcStsInBit As Integer, EzStsInBit As Integer) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 *TtlStsInBit: The TTL-IN status in bit format. I16 *LtcStsInBit: The LTC status in bit format. I16 *EzStsInBit: The EZ status in bit format.
5.11 Latch @ Name _8124_set_latch Configure the latch function _8124_get_latch_event_sts Get the latch event status _8124_get_latch_value Get the latched value @ Description _8124_set_latch: This function is used to enable or disable the high-speed posi- tion capture (latch) function and set the latch condition. When- ever the users enable it and configure the latch condition (Rising or falling active) correctly, the current position will be latched when it receive the latch signal.
Page 76
ByVal Channel As Integer, LatchValue As Long) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 Channel: The channel’s number of Latch ( 0 – 3 ) I16 Enable: Enable the Latch function (0: Disable, 1: Enable) I16 EdgeSel: Latching condition ⇒...
Integer, ByVal TtlTrigLogic As Integer, ByVal Interval As Integer) As Integer B_8124_start_timer (ByVal CardId As Integer, ByVal Channel As Integer, ByVal Start As Integer) As Integer @ Argument I16 CardId: The PCI-8124 card’s ID number. I16 Channel: The channel’s number of timer. Function Library...
Page 78
WaitTtlIn: Enable TTL-IN start timer (0: Disable, 1: Enable) I16 TtlTrigLogic: TTL-IN start timer condition 0: Falling edge of TTL-IN signal 1: Rising edge of TTL-IN signal I16 Interval: Timer interval ( 0 – 16383) Timer tick interval = (Interval x 16 + 4) x 25 (ns) I16 Start: Start timer 0: Stop timer 1: Start timer...
5.13 Interrupt @ Name _8124_set_int_factor Set (Enable) the interrupt factors _8124_get_int_factor Get the setting of interrupt factors _8124_wait_single_int Wait the single interrupt event Set the interrupt event to a non-signaled _8124_reset_int state @ Description _8124_set_int_factor: This function is used to enable/disable the interrupt source. Users can use the function, “_8124_wait_single_int”...
Page 80
function was time out. This function returns when one of the fol- lowing occurs: 1. The specified interrupt factor is in the signaled state. 2. The time-out interval elapses. This function checks the current state of the specified interrupt factor. If the state is non-signaled, the calling thread enters the wait state.
Page 81
@ Argument I16 IntFactorsInBit: Interrupt event factor setting in bit for- mat. I16 FactorBitNum: Specified the bit number of the IntFactors- InBit. I32 TimeOutMs: Specify the time-out interval, in milliseconds. If TimeOutMs is zero, the function tests the states of the specified event and returns immediately.
5.14 Return Erros The following table provides a list of possible return value in our library. If the return value is not zero, it means there are some errors occurred. This could help you to check the program easier and make it correctly. Error Codes: Code Define...
Warranty Policy Thank you for choosing ADLINK. To understand your rights and enjoy all the after-sales services we offer, please read the follow- ing carefully. 1. Before using ADLINK’s products please read the user man- ual and follow the instructions exactly. When sending in damaged products for repair, please attach an RMA appli- cation form which can be downloaded from: http:// rma.adlinktech.com/policy/.
Page 85
3. Our repair service is not covered by ADLINK's guarantee in the following situations: Damage caused by not following instructions in the User's Manual. Damage caused by carelessness on the user's part dur- ing product transportation. Damage caused by fire, earthquakes, floods, lightening, pollution, other acts of God, and/or incorrect usage of voltage transformers.
Need help?
Do you have a question about the PCI-8124 and is the answer not in the manual?
Questions and answers