USB3-FRM13 API 매뉴얼

Similar documents
API 매뉴얼

USB3-FRM01 API 매뉴얼

USB3-DIO01

API 매뉴얼

USB-AIO11 API

DVI-CL01 매뉴얼

USB-EK001 매뉴얼

USB-EK001 매뉴얼

ez-md+_manual01

슬라이드 1

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

마리오와 소닉 리우 올림픽™

T100MD+

CANTUS Evaluation Board Ap. Note

매뉴얼

PICe-FRM26_B 매뉴얼

PICe-FRM26_B 매뉴얼

인디쓔피-IOM핸돜벁닄큐1014pdf, page Preflight ( IOM핸돜벁닄큐__1014 )

Microsoft Word _whitepaper_latency_throughput_v1.0.1_for_

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -

Chapter #01 Subject

10X56_NWG_KOR.indd

매뉴얼

매뉴얼

Index Process Specification Data Dictionary

슬라이드 1

USB3-FRM10 매뉴얼

Microsoft PowerPoint - T1 ERS (Elevator Reservation System)SASD2.pptx

DWCOM15/17_manual

USB3-FRM13_B 매뉴얼

NET-FRM01 매뉴얼

Microsoft PowerPoint - es-arduino-lecture-03

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

AN2629

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

!K_InDesginCS_NFH

인켈(국문)pdf.pdf

Copyrights and Trademarks Autodesk SketchBook Mobile (2.0.2) 2013 Autodesk, Inc. All Rights Reserved. Except as otherwise permitted by Autodesk, Inc.,

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

BMP 파일 처리

untitled

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper

UART.h #ifndef _UART_H_ #define _UART_H_ #define DIR_TXD #define DIR_RXD sbi(portd,4) cbi(portd,4) #define CPU_CLOCK_HZ UL UART PORT1 void UAR

USB-EK001 매뉴얼

MAX+plus II Getting Started - 무작정따라하기

슬라이드 1

PowerPoint 프레젠테이션

Microsoft Word - JAVS_UDT-1_상세_메뉴얼.doc

Microsoft PowerPoint - chap06-2pointer.ppt

Chap 6: Graphs

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>

PICe-FRM24 매뉴얼

PCIe-FRM22 매뉴얼

USB3-FRM13 매뉴얼

B _02-M_Korean.indd

PCIe-FRM16_B 매뉴얼

PICe-OPT02 매뉴얼

공급 에는 3권역 내에 준공된 프라임 오피스가 없었다. 4분기에는 3개동의 프라임 오피스가 신규로 준공 될 예정이다.(사옥1개동, 임대용 오피스 2개동) 수요와 공실률 2014년 10월 한국은행이 발표한 자료에 따르면 한국의 2014년 경제성장률 예측치는 3.5%로 지

PowerPoint 프레젠테이션

bn2019_2

매뉴얼

KEY 디바이스 드라이버

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

K&R2 Reference Manual 번역본

1217 WebTrafMon II

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

DE1-SoC Board

Microsoft PowerPoint - 알고리즘_5주차_1차시.pptx

Microsoft Word doc

목차 제 1 장 inexio Touch Driver소개 소개 및 주요 기능 제품사양... 4 제 2 장 설치 및 실행 설치 시 주의사항 설치 권고 사양 프로그램 설치 하드웨

PowerChute Personal Edition v3.1.0 에이전트 사용 설명서

NET-AIO12 매뉴얼

1

PowerPoint Template

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

PICe-FRM24 매뉴얼

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont

chapter4

RVC Robot Vaccum Cleaner

H3050(aap)

금오공대 컴퓨터공학전공 강의자료

untitled

1 1. INTRODUCTION 2 2. DOWNLOAD Windows Desktop & Server Max OS X, Linux, Windows CE 2 3. API REFERENCE CAN_OpenVcp CAN_Op

PowerPoint 프레젠테이션

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

Microsoft PowerPoint - ch07.ppt

매뉴얼

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

ISP and CodeVisionAVR C Compiler.hwp

Product A4

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지

vm-웨어-앞부속

Microsoft Word - Installation and User Manual_CMD V2.2_.doc

untitled

, DVR. DVR. > > > " ". DVR.. ("wisenetlife.com" )? _

Microsoft Word - Automap3

Microsoft PowerPoint - polling.pptx

歯설명서_020925_.PDF

Microsoft Word - PEB08_USER_GUIDE.doc

BSC Discussion 1

Transcription:

USB3-FRM13 API Programming (Rev 1.2) Windows, Windows2000, Windows NT and Windows XP are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations mentioned in this document as their own property. Information furnished by DAQ system is believed to be accurate and reliable. However, no responsibility is assumed by DAQ system for its use, nor for any infringements of patents or other rights of third parties which may result from its use. No license is granted by implication or otherwise under any patent or copyrights of DAQ system. The information in this document is subject to change without notice and no part of this document may be copied or reproduced without the prior written consent. Copyrights 2010 DAQ system, All rights reserved.

Board Level API Functions Overview int int OpenDAQDevice (void) ResetBoard (int nboard) CloseDAQDevice (void) GetBoardNum (void) IsConnected(void) OpenDAQDevice 디바이스를 Open 한다. 프로그램에서초기에반드시한번함수를호출하여디바이스를 Open 하여야한다. Int OpenDAQDevice (void) 없음. 함수호출에성공한경우, 설치된보드의개수를리턴한다. ( 멀티보드인경우최대 4까지가능 ) 함수호출에실패한경우, 0 을리턴한다. 이것의의미는시스템에장치가없다는의미이다. ResetBoard 현재시스템 (PC) 에장착된디바이스를초기화한다. ResetBoard (int nboard) nboard : 현재시스템에장착되어있는보드번호를알려준다. 보드번호는보드의 DIP 스위치를이용하여설정한다. 함수호출에성공일경우 TRUE 을리턴함. 함수호출에실패한경우, 어떤 API함수도호출할수없고 CloseDAQDevice() 를부른다.

CloseDAQDevice Open된디바이스를 Close한다. 장치의사용이끝나게되면, 반드시장치를 Close하여다른프로그램에서사용할수있도록한다. CloseDAQDevice (void) 없음. 디바이스 Open에성공할경우 TRUE를실패할경우 FALSE를리턴한다. GetBoardNum 시스템에서오픈된후보드의개수를알려준다. int GetBoardNum (void) 없음. 보드의개수. ( 멀티보드인경우최대 4까지가능 ) IsConnected USB 에연결이되어있는지를알려준다. IsConnected (void) 없음.

LVDS(Camera Link) API Functions Overview DWORD LVDS_Init (void) LVDS_Start (void) LVDS_GetFrame (DWORD* ncnt, unsigned char* buf) LVDS_Close (void) LVDS_GetResolution (DWORD *xres, DWORD *yres) LVDS_Stop (void) LVDS_SetDataMode (int nmode) LVDS_GetVersion (int *nfpgaver, int *nfirmver) LVDS_GetError (DWORD *dwstatuse) LVDS_BufferFlush (void) LVDS_SetDeUse ( buse) LVDS_SetHsPol ( bpol) LVDS_CameraMode (int nmode) LVDS_SetReferrenceClock (int nclock) LVDS_ConfigureCc (DWORD dwcfg) LVDS_CcOutput (DWORD dwcc) LVDS_SetLineCount (DWORD dwcount) LVDS_SetPageStart (DWORD dwevent) LVDS_SetPageDelay (DWORD dwcount) LVDS_ConfigureTrig1 (DWORD dwevent, DWORD dwdelay, DWORD dwwidth, DWORD dwblank) LVDS_ConfigureTrig2 (DWORD dwevent, DWORD dwdelay, DWORD dwwidth, DWORD dwblank) LVDS_SetTrigger ( buse) LVDS_SetTrigEdge ( buse) LVDS_SetPoCLDelay (int nmode)

LVDS_Init LVDS sub-system 의자원, 예를들어 interrupt 와 LVDS control register 을초기화한다. LVDS_Init (void) 없음. LVDS_Start 프레임데이터수집을시작한다. 이함수를호출한후에 LVDS_GetFrame 함수를 호출하여데이터가완성이되었는가를확인할수있다. LVDS_Start (void) 없음. LVDS_GetFrame 프레임데이터가완성이되었는가를검사하고완성이되었으면프레임데이터를가 져온다. 이때데이터를받아올버퍼크기를반드시알려주어야한다. LVDS_GetFrame (DWORD* ncnt, unsigned char* buf) ncnt : 프레임데이터를받아올버퍼의크기가저장되어있는변수의번지이다. 함수를호출할때버퍼크기를지정하고호출한후에는변수값을읽어서실제로읽어온개수를확인한다. 데이터크기는바이트단위이다. buf : 프레임버퍼포인터. 호출이성공하면 ncnt 값을확인하여원하는크기만큼읽어졌는가를확인한다. 프레임데이터가완성이되지않았으면바로 FALSE를리턴하고 ncnt 값을 0으로해서리턴이일어난다.

LVDS_Close LVDS 함수에서사용된모든자원을되돌려준다. 어플리케이션프로그램은프로그램 종료시이함수를부른다. LVDS_Close (void) 없음. LVDS_GetResolution Video 입력의해상도를가져온다. LVDS_GetResolution (DWORD *xres, DWORD *yres) *xres : 수평해상도값즉, Frame의 Width를가져온다. *yres : 수직해상도값즉, Frame의 Height를가져온다. LVDS_Stop 프레임데이터 Capture 를중지한다. LVDS_Stop (void) 없음.

LVDS_SetDataMode 프레임 ( 이미지 ) 데이터모드를선택한다. LVDS_SetDataMode (int nmode) nmode : 0 이면 8bit Mode이고 1 이면 16bit Mode이고 2 이면 32bit Mode이고 3 이면 64bit Mode이다. LVDS_GetVersion 현재프로그램의버전을가져온다. LVDS_GetVersion (int *nfpgaver, int *nfirmver) *nfpgaver : 현재 FPGA 버전값. *nfirmver : 현재 Firmware 버전값. LVDS_GetError 프레임 ( 이미지 ) 에러를가져온다. DWORD LVDS_GetError (DWORD *dwstatus) *dwstatus : 에러상태값을가져온다. 1 이면 Overflow error 2 이면 Read error 4 이면 Size error

LVDS_BufferFlush 버퍼를초기화한다. LVDS_BufferFlush (void) 없음. LVDS_SetDeUse 데이터유효 (Data Valid) 신호선을선택한다. LVDS_SetDUse ( buse) buse : True 이면 DVAL(Data Validation) 사용하고 False 이면 HSYNC (Horizontal Synchronization) 를사용한다 LVDS_SetHsPol 수평신호 (HSYNC : Horizontal Synchronization) 신호선을선택한다. LVDS_SetHsPol ( bpol) bpol : True 이면 Normal HSYNC 사용하고 False 이면 Inverse HSYNC를사용한다

LVDS_CameraMode 카메라모드가 Area Line Scan Camera 인지 Line Scan Camera 인지를선택한다. LVDS_CameraMode (int nmode) nmode : 0 이면 Area Scan Camera 이고 (Default) Others 이면 Line Scan Camera 이다 LVDS_SetReferenceClock 레퍼런스클럭을무엇으로사용할것인지를선택한다. LVDS_SetReferenceClock (int nclcok) nclock : 0 이면프레임그레버내의 Internal Clcok 을사용하고 (Default) Others 이면엔코더나다른보드에서제공되는 External Clock을사용한다. LVDS_ConfigureCc 해당비트의환경설정값을선택한다. LVDS_ConfigureCc (DWORD dwcfg) dwcfg : bit0(cc1 configure) = 0 : digital out1 / 1 : alternate (Trigger1 output) bit1(cc2 configure) = 0 : digital out2 / 1 : alternate (Trigger2 output) bit2(cc3 configure) = 0 : digital out3 / 1 : (Digital output) bit3(cc4 configure)= 0 : digital out4 / 1 : alternate (Reference clock output) others : Reserved

LVDS_CcOutput 해당비트의 CC 값을출력한다. LVDS_CcOutput (DWORD dwcc) dwcc : bit0(cc1 out) = 0 : output 0 / 1 : output 1 bit1(cc2 out) = 0 : output 0 / 1 : output 1 bit2(cc3 out) = 0 : output 0 / 1 : output 1 bit3(cc4 out) = 0 : output 0 / 1 : output 1 others : Reserved LVDS_SetLineCount 한페이지에서하나의이미지를얻기위해필요한라인의수를선택한다. LVDS_SetLineCount (DWORD dwcount) dwcount : 1 ~65535 LVDS_SetPageStart 페이지초기이벤트를선택한다. LVDS_SetPageStart (DWORD dwevent) dwevent : 0 이면 Continuous (Free Running) 1 이면 Rising edge in Page Trigger input 2 이면 Rising edge on encoder z phase

LVDS_SetPageDelay 한페이지에서하나의이미지를얻기전에필요한클럭의수를선택한다. LVDS_SetPageDelay (DWORD dwcount) dwcount : 1 ~ 15 LVDS_ConfigureTrig1 트리거 1 의입력모드선택과출력지연, 출력폭, 출력공백을선택한다. LVDS_ConfigureTrig1 (DWORD dwevent, DWORD dwdelay, DWORD dwwidth, DWORD dwblank) dwevent : 0 이면 Continuous (Free running without any condition) 1 이면 Rising edge on Line Trigger input 2 이면 Rising edge on encoder A phase 3 이면 Rising edge on encoder B phase 4 이면 Rising edge encoder up clock using A and B phase 5 이면 Rising edge encoder down clock A and B phase dwdelay : 출력 Trig1이 high가되기전에필요한레퍼런스클럭수 dwwidth : 출력 Trig1이 high에필요한레퍼런스클럭수 dwblank : 출력 Trig1이지연에서복귀전에필요한레퍼런스클럭수

LVDS_ConfigureTrig2 트리거 2 의입력모드선택과출력지연, 출력폭, 출력공백을선택한다. LVDS_ConfigureTrig2 (DWORD dwevent, DWORD dwdelay, DWORD dwwidth, DWORD dwblank) dwevent : 0 이면 Continuous (Free running without any condition) 1 이면 Rising edge on Line Trigger input 2 이면 Rising edge on encoder A phase 3 이면 Rising edge on encoder B phase 4 이면 Rising edge encoder up clock using A and B phase 5 이면 Rising edge encoder down clock A and B phase dwdelay : 출력 Trig2가 high가되기전에필요한레퍼런스클럭수 dwwidth : 출력 Trig2가 high에필요한레퍼런스클럭수 dwblank : 출력 Trig2가지연에서복귀전에필요한레퍼런스클럭수 LVDS_SetTrigger Trigger 를시작한다. LVDS_SetTrigger ( buse) buse : True 이면 Trigger를사용하고 False 이면 Normal 상태를유지한다

LVDS_SetTrigMode Trigger 모드를선택한다.. LVDS_SetTrigMode ( buse) buse : True 이면 Trigger Edge Mode False 이면 Trigger Level Mode LVDS_SetPoCLDelay PoCL(Power over Camera Link) 전원을사용할때지연시간 (Delay time) 을선택할수 있다. (DEFAULT 는 0.5sec 이다.) LVDS_SetPoCLDelay (int nmode) nmode : 0 : 0.5sec, 1 : 1sec, 2 : 1.5sec, 3 : 2sec 4 : 2.5sec, 5 : 3sec, 6 : 3.5sec, 7 : 4sec

UART API Functions Overview UART_Init (void) UART_GetData (DWORD* ncnt, unsigned char* buf) UART_SendData (DWORD* ncnt, unsigned char* buf) UART_Close (void) UART_SetBaud (DWORD nbaud) UART_BufferFlush (void) UART_Init UART sub-system 의자원, 예를들어 interrupt 와 UART control register 를초기화한다. UART_Init (void) 없음. UART_GetData 차동 UART 를통하여문자를받는다. UART_GetData (DWORD* ncnt, unsigned char* buf) ncnt : 문자를나타내는어드레스를바이트사이즈로받는다. 최대받을수있는문자는 1000 bytes 로제한되어있다. buf : 버퍼어드레스.

UART _SendData 차동 UART 를통하여문자를보낸다. UART_SendData (DWORD* ncnt, unsigned char* buf) ncnt : 문자를나타내는어드레스를바이트사이즈로받는다. 최대전송할수있는문자는 1000 bytes 로제한되어있다. buf : 버퍼어드레스. UART _Close UART 함수에서사용한모든자원을되돌려준다. UART_Close (void) 없음. UART_SetBaud UART Baud 를정한다. UART_SetBaud (DWORD nbaud) nbaud : 0: 9600, 1: 19200, 2: 38400, 3:57600, 4:115200bps

UART _BufferFlush UART Rx 버퍼를 clear 한다. UART_BufferFlush (void) 없음. CC(Camera Control) API Functions Overview DIO_Write (DWORD dwval) DIO_Write 원하는카메라제어값을출력포트에출력한다. ( 카메라사양참조 ) DIO_Write (DWORD dwval) dwval : 출력포트에기록할값.

Multi Board support APIs 싱글보드의 API 인경우단지하나의보드가인스톨된시스템에서사용된다. 하지만, 두개의보드이거나그이상 ( 최대 4개지원 ) 의보드가인스톨된시스템에서는다중 API 를사용해야만한다. Multi-Board LVDS(Camera Link) API Functions Overview IsConnected_Mul (int nboard) LVDS_Init_Mul (int nboard) LVDS_Check_Mul (int nboard) LVDS_Start_Mul (int nboard) LVDS_GetFrame_Mul (int nboard, DWORD* ncnt, unsigned char* buf) LVDS_Close_Mul (int nboard) LVDS_GetResolution_Mul (int nboard, DWORD *xres, DWORD *yres) LVDS_Stop_Mul (int nboard) LVDS_SetDataMode_Mul (int nboard, int nmode) LVDS_GetVersion_Mul (int nboard, int *nversion) LVDS_BufferFlush_Mul (int nboard) LVDS_SetDeUse_Mul (int nboard, buse) LVDS_SetHsPol_Mul (int nboard, bpol) LVDS_CameraMode_Mul (int nboard, int nmode) LVDS_SetReferrenceClock_Mul (int nboard, int nclock) LVDS_ConfigureCc_Mul (int nboard, DWORD dwcfg) LVDS_CcOutput_Mul (int nboard, DWORD dwcc) LVDS_SetLineCount_Mul (int nboard, DWORD dwcount) LVDS_SetPageStart_Mul (int nboard, DWORD dwevent) LVDS_SetPageDelay_Mul (int nboard, DWORD dwcount) LVDS_ConfigureTrig1_Mul (int nboard, DWORD dwevent, DWORD dwdelay, DWORD dwwidth, DWORD dwblank) LVDS_ConfigureTrig2_Mul (int nboard, DWORD dwevent, DWORD dwdelay, DWORD dwwidth, DWORD dwblank) LVDS_SetTrigger_Mul (int nboard, buse) LVDS_SetTrigEdge_Mul (int nboard, buse) LVDS_SetPoCLDelay_Mul (int nboard, int nmode)

IsConnected_Mul USB 에연결이되어있는지를알려준다. IsConnected _Mul (int nboard) LVDS_Init_Mul LVDS sub-system 의자원, 예를들어 interrupt 와 LVDS control register 을초기화한다. LVDS_Init _Mul (int nboard) LVDS_Check_Mul 받은프레임데이터의완료를체크함. LVDS_Check_Mul (int nboard) 프레임데이터를완벽하게받았다면 TRUE 을리턴함.

LVDS_Start_Mul 프레임데이터수집을시작한다. 이함수를호출한후에 LVDS_GetFrame 함수를 호출하여데이터가완성이되었는가를확인할수있다. LVDS_Start_Mul (int nboard) LVDS_GetFrame_Mul 프레임데이터가완성이되었는가를검사하고완성이되었으면프레임데이터를 가져온다. 이때데이터를받아올버퍼크기를반드시알려주어야한다. LVDS_GetFrame_Mul (int nboard, DWORD* ncnt, unsigned char* buf) ncnt : 프레임데이터를받아올버퍼의크기가저장되어있는변수의번지이다. 함수를호출할때버퍼크기를지정하고호출한후에는변수값을읽어서실제로읽어온개수를확인한다. 데이터크기는바이트단위이다. buf : 프레임버퍼포인터.

LVDS_Close_Mul LVDS 함수에서사용된모든자원을되돌려준다. 어플리케이션프로그램은프로그램 종료시이함수를부른다. LVDS_Close (int nboard) LVDS_GetResolution_Mul Video 입력의해상도를가져온다. LVDS_GetResolution_Mul (int nboard, DWORD *xres, DWORD *yres) *xres : 수평해상도즉, Frame의 Width를가져온다. *yres : 수직해상도즉, Frame의 Height를가져온다. LVDS_Stop_Mul LVDS_Stop_Mul (int nboard) 프레임데이터 Capture를중지한다.

LVDS_SetDataMode_Mul 이미지픽셀데이터모드를설정한다. LVDS_SetDataMode_Mul (int nboard, int nmode) nmode : 1 이면 8bit Mode이고 2 이면 16bit Mode이고 3 이면 32bit Mode이고 4 이면 64bit Mode이다. LVDS_GetVersion_Mul 현재 FPGA version 을가져온다. LVDS_GetVersion_Mul (int nboard, int *nfpgaver, int *nfirmver) *nfpgaver : 현재 FPGA 버전값. *nfirmver : 현재 Firmware 버전값.

LVDS_GetError_Mul 프레임 ( 이미지 ) 에러를가져온다. DWORD LVDS_GetError_Mul (int nboard, DWORD *dwstatus) *dwstatus : 에러상태값을가져온다. 1 이면 Overflow error 2 이면 Read error 4 이면 Size error LVDS_BufferFlush_Mul 버퍼를초기화한다. LVDS_BufferFlush_Mul (int nboard) LVDS_SetDeUse_Mul 데이터유효 (Data Valid) 신호선을선택한다. LVDS_SetDUse_Mul (int nboard, buse) buse : True 이면 DVAL(Data Validation) 사용하고 False 이면 HSYNC (Horizontal Synchronization) 를사용한다

LVDS_SetHsPol_Mul 수평신호 (HSYNC : Horizontal Synchronization) 신호선을선택한다. LVDS_SetHsPol_Mul (int nboard, bpol) bpol : True 이면 Normal HSYNC 사용하고 False 이면 Inverse HSYNC를사용한다 LVDS_CameraMode_Mul 카메라모드가 Area Line Scan Camera 인지 Line Scan Camera 인지를선택한다. LVDS_CameraMode_Mul (int nboard, int nmode) nmode : 0 이면 Area Scan Camera 이고 (Default) Others 이면 Line Scan Camera 이다 LVDS_SetReferenceClock_Mul 레퍼런스클럭을무엇으로사용할지를선택한다. LVDS_SetReferenceClockMul (int nboard, int nclcok) nclock : 0 이면프레임그레버내의 Internal Clcok 을사용하고 (Default) Others 이면엔코더나다른보드에서제공되는 External Clock을사용한다.

LVDS_ConfigureCc_Mul 해당비트의환경설정값을선택한다. LVDS_ConfigureCc_Mul (int nboard, DWORD dwcfg) dwcfg : bit0(cc1 configure) = 0 : digital out1 / 1 : alternate (Trigger1 output) bit1(cc2 configure) = 0 : digital out2 / 1 : alternate (Trigger2 output) bit2(cc3 configure) = 0 : digital out3 / 1 : (Digital output) bit3(cc4 configure)= 0 : digital out4 / 1 : alternate (Reference clock output) others : Reserved LVDS_CcOutput_Mul 해당비트의 CC 값을출력한다. LVDS_CcOutput_Mul (int nboard, DWORD dwcc) dwcc : bit0(cc1 out) = 0 : output 0 / 1 : output 1 bit1(cc2 out) = 0 : output 0 / 1 : output 1 bit2(cc3 out) = 0 : output 0 / 1 : output 1 bit3(cc4 out) = 0 : output 0 / 1 : output 1 others : Reserved

LVDS_SetLineCount_Mul 한페이지에서하나의이미지를얻기위해필요한라인의수를선택한다. LVDS_SetLineCount_Mul (int nboard, DWORD dwcount) dwcount : 1 ~65535 LVDS_SetPageStart_Mul 페이지초기이벤트를선택한다. LVDS_SetPageStart_Mul (int nboard, DWORD dwevent) dwevent : 0 이면 Continuous (Free Running) 1 이면 Rising edge in Page Trigger input 2 이면 Rising edge on encoder z phase LVDS_SetPageDelay_Mul 한페이지에서하나의이미지를얻기전에필요한클럭의수를선택한다. LVDS_SetPageDelay_Mul (int nboard, DWORD dwcount) dwcount : 1 ~ 15

LVDS_ConfigureTrig1_Mul 트리거 1 의입력모드선택과출력지연, 출력폭, 출력공백을선택한다. LVDS_ConfigureTrig1_Mul (int nboard, DWORD dwevent, DWORD dwdelay, DWORD dwwidth, DWORD dwblank) dwevent : 0 이면 Continuous (Free running without any condition) 1 이면 Rising edge on Line Trigger input 2 이면 Rising edge on encoder A phase 3 이면 Rising edge on encoder B phase 4 이면 Rising edge encoder up clock using A and B phase 5 이면 Rising edge encoder down clock A and B phase dwdelay : 출력 Trig1이 high가되기전에필요한레퍼런스클럭수 dwwidth : 출력 Trig1이 high에필요한레퍼런스클럭수 dwblank : 출력 Trig1이지연에서복귀전에필요한레퍼런스클럭수

LVDS_ConfigureTrig2_Mul 트리거 2 의입력모드선택과출력지연, 출력폭, 출력공백을선택한다. LVDS_ConfigureTrig2_Mul (int nboard, DWORD dwevent, DWORD dwdelay, DWORD dwwidth, DWORD dwblank) dwevent : 0 이면 Continuous (Free running without any condition) 1 이면 Rising edge on Line Trigger input 2 이면 Rising edge on encoder A phase 3 이면 Rising edge on encoder B phase 4 이면 Rising edge encoder up clock using A and B phase 5 이면 Rising edge encoder down clock A and B phase dwdelay : 출력 Trig2가 high가되기전에필요한레퍼런스클럭수 dwwidth : 출력 Trig2가 high에필요한레퍼런스클럭수 dwblank : 출력 Trig2가지연에서복귀전에필요한레퍼런스클럭수 LVDS_SetTrigger_Mul Trigger 를시작한다. LVDS_SetTrigger_Mul (int nboard, buse) buse : True 이면 Trigger를사용하고 False 이면 Normal 상태를유지한다

LVDS_SetTrigMode_Mul Trigger 모드를선택한다.. LVDS_SetTrigMode (int nboard, buse) buse : True 이면 Trigger Edge Mode False 이면 Trigger Level Mode LVDS_SetPoCLDelay_Mul PoCL(Power over Camera Link) 전원을사용할때지연시간 (Delay time) 을선택할수 있다.(DEFAULT 는 0.5sec 이다.) LVDS_SetPoCLDelay_Mul (int nboard, int nmode) nmode : 0 : 0.5sec, 1 : 1sec, 2 : 1.5sec, 3 : 2sec 4 : 2.5sec, 5 : 3sec, 6 : 3.5sec, 7 : 4sec

Multi-Board UART API Functions Overview UART_Init_Mul (int nboard) UART_GetData_Mul (int nboard, DWORD* ncnt, unsigned char* buf) UART_SendData_Mul (int nboard, DWORD* ncnt, unsigned char* buf) UART_Close_Mul (int nboard) UART_SetBaud_Mul (int nboard, DWORD nbaud) UART_BufferFlush_Mul (int nboard) UART_Init_Mul UART sub-system 의자원, 예를들어 interrupt 와 UART control register 를초기화한다. UART_Init_Mul (int nboard) UART_GetData_Mul 차동 UART 를통하여문자를받는다. UART_GetData_Mul (int nboard, DWORD* ncnt, unsigned char* buf) ncnt : 문자를나타내는어드레스를바이트사이즈로받는다. 최대받을수있는문자는 4Kbyte(4096) 로제한되어있다. buf : 버퍼어드레스.

UART _SendData_Mul 차동 UART 를통하여문자를보낸다. UART_SendData_Mul (int nboard, DWORD* ncnt, unsigned char* buf) ncnt : 문자를나타내는어드레스를바이트사이즈로받는다. 최대전송할수있는문자는 4Kbyte(4096) 로제한되어있다. buf : 버퍼어드레스. UART _Close_Mul UART 함수에서사용한모든자원을되돌려준다. UART_Close_Mul (int nboard) UART_SetBaud_Mul UART Baud 를정한다. UART_SetBaud_Mul (int nboard, DWORD nbaud) nbaud : 0: 9600, 1: 19200, 2: 38400, 3:57600, 4:115200bps

UART _BufferFlush_Mul UART Rx 버퍼를 clear 한다. UART_BufferFlush_Mul (int nboard) Multi-board CC(Camera Control) API Functions Overview DIO_Write (int nboard, DWORD dwval) DIO_Write 원하는카메라제어값을출력포트에출력한다. ( 카메라사양참조 ) DIO_Write (int nboard, DWORD dwval) dwval : 출력포트에기록할값.