Scanlab RTC6 PCIe Board Installation And Operation Manual page 272

Real time control of scan systems and lasers rtc6 software package v1.16.0
Table of Contents

Advertisement

case FAST:
{
// fast
Pixel Output Mode
// 1 value of 16 bit per pixel
// 4 pixel per
set_pixel
//-------------------------------------------------------
// |
pixel2
|
// |
16 Bit
|
// |
PortOutValue1
//-------------------------------------------------------
HalfPeriod
= (UINT)round(1.0 * 32.0);
PulseLength = (UINT)round(0.5 * 64.0);
set_laser_pulses(HalfPeriod, PulseLength);
jump_abs(PixelLineStartPosX, PixelLineStartPosY);
set_pixel_line(Channel, HalfPeriod, dx, dy);
// low 16 bit - first pixel, high 16 bit - second pixel
PortOutValue1 = PixelArray[1] | (PixelArray[2] << 16);
PortOutValue2 = PixelArray[3] | (PixelArray[4] << 16);
set_n_pixel(PortOutValue1, PortOutValue2, Number);
PortOutValue1 = PixelArray[5] | (PixelArray[6] << 16);
PortOutValue2 = PixelArray[7] | (PixelArray[8] << 16);
set_n_pixel(PortOutValue1, PortOutValue2, Number * 2);
//--> pixel output: pixel 5, pixel 6, pixel 7, pixel 8, pixel 5, pixel 6, pixel 7, pixel 8
}
break;
case ULTRAFAST:
{
// ultra fast
Pixel Output Mode
// 1 value of 8 bit per pixel
// 8 pixel per
set_pixel
//----------------------------------------------------------------------------------------------------------
//|
pixel4
|
pixel3
//|
8 Bit
|
//|
PortOutValue1
//----------------------------------------------------------------------------------------------------------
HalfPeriod
= (UINT)round(0.5
PulseLength = (UINT)round(0.25 * 64.0);
set_laser_pulses(HalfPeriod, PulseLength);
jump_abs(PixelLineStartPosX, PixelLineStartPosY);
set_pixel_line(Channel, HalfPeriod, dx, dy);
// lowest 8 bit - first pixel, highest 8 bit - fourth
PortOutValue1 = PixelArray[1] | (PixelArray[2] << 8) | (PixelArray[3] << 16) | (PixelArray[4] << 24);
PortOutValue2 = PixelArray[5] | (PixelArray[6] << 8) | (PixelArray[7] << 16) | (PixelArray[8] << 24);
// pixel 4 + pixel 3 + pixel 2 + pixel 1, pixel 8 + pixel 7 + pixel 6 + pixel 5
set_n_pixel(PortOutValue1, PortOutValue2, Number);
PortOutValue1 = PixelArray[ 9] | (PixelArray[10] << 8) | (PixelArray[11] << 16) | (PixelArray[12] << 24);
PortOutValue2 = PixelArray[13] | (PixelArray[14] << 8) | (PixelArray[15] << 16) | (PixelArray[16] << 24);
// (pixel 12 + pixel 11 + pixel 10 + pixel 9, pixel 16 + pixel 15 + pixel 14 + pixel 13)*2
set_n_pixel(PortOutValue1, PortOutValue2, Number * 2);
// --> pixel output: pixel 9, pixel 10, pixel 11, pixel 12, pixel 13, pixel 14, pixel 15, pixel 16,
//
pixel 9, pixel 10, pixel 11, pixel 12, pixel 13, pixel 14, pixel 15, pixel 16
}
break;
default:
break;
}
set_end_of_list();
RTC6 boards
Doc. Rev. 1.0.21 en-US
8 Advanced Functions for Scan Head Control and Laser Control
up to 1.6 MHz (Mode = 32) - needs UFPM-Option
command
pixel1
||
pixel4
|
16 Bit
||
16 Bit
|
||
PortOutValue2
// Period = 1 µs, PixelFrequency = 1 MHz
// PulseLength = 0.5 µs
up to 3.2 MHz (Mode = 64) - needs UFPM-Option
command
|
pixel2
|
8 Bit
|
8 Bit
|
* 32.0);
// Period = 0.5 µs, PixelFrequency = 2 MHz
// PulseLength = 0.25 µs
pixel3
|
16 Bit
|
|
// pixel 2 + pixel 1, pixel 4 + pixel 3
// (pixel 6 + pixel 5, pixel 8 + pixel 7)*2
pixel1
||
pixel8
|
8 Bit
||
8 Bit
||
PortOutValue2
pixel
pixel7
|
pixel6
|
8 Bit
|
8 Bit
|
pixel5
|
|
8 Bit
|
272

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the RTC6 PCIe Board and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Related Products for Scanlab RTC6 PCIe Board

This manual is also suitable for:

Rtc6 ethernet board

Table of Contents

Save PDF