USB3-FRM01 API 매뉴얼

Similar documents
USB3-DIO01

API 매뉴얼

USB3-FRM13 API 매뉴얼

API 매뉴얼

USB-AIO11 API

DVI-CL01 매뉴얼

USB-EK001 매뉴얼

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

USB-EK001 매뉴얼

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

Microsoft PowerPoint - chap06-2pointer.ppt

매뉴얼

Microsoft Word doc

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

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

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

Chapter #01 Subject

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

매뉴얼

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

슬라이드 1

DWCOM15/17_manual

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>

Microsoft Word _whitepaper_latency_throughput_v1.0.1_for_

매뉴얼

PCIe-FRM22 매뉴얼

Microsoft PowerPoint - Java7.pptx

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

T100MD+

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

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

AD K

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

CANTUS Evaluation Board Ap. Note

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3

PowerPoint 프레젠테이션

2 라이선스 라이선스 돌비 래버러토리스의 허가를 얻어 제조한 제품입니다. 돌비 및 더블 D 심볼은 래버러토리스의 상표입니다. DivX 비디오에 관하여 DivX 는 Rovi Corporation 의 자회사 DivX, LLC가 개발한 디지털 비디오 포맷입니다. 본 제품은

PICe-FRM26_B 매뉴얼

매뉴얼

Microsoft PowerPoint - es-arduino-lecture-03

PCIe-FRM16_B 매뉴얼

ez-md+_manual01

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C4C656D70656C2D5A69762E637070>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

adfasdfasfdasfasfadf

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

NET-AIO12 매뉴얼

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

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

PowerPoint 프레젠테이션

BMP 파일 처리

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

버퍼오버플로우-왕기초편 10. 메모리를 Hex dump 뜨기 앞서우리는버퍼오버플로우로인해리턴어드레스 (return address) 가변조될수있음을알았습니다. 이제곧리턴어드레스를원하는값으로변경하는실습을해볼것인데요, 그전에앞서, 메모리에저장된값들을살펴보는방법에대해배워보겠습

1217 WebTrafMon II

Microsoft PowerPoint - [2009] 02.pptx

B _02-M_Korean.indd

슬라이드 제목 없음

PowerPoint 프레젠테이션

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

PowerPoint 프레젠테이션

Microsoft PowerPoint - chap11.ppt [호환 모드]

[8051] 강의자료.PDF

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

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

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

H122_E.book

6 강남구 청담지구 청담동 46, 삼성동 52 일대 46,592-46,592 7 강남구 대치지구 대치동 922번지 일대 58,440-58,440 8 강남구 개포지구 개포동 157일대 20,070-20,070 9 강남구 개포지구중심 포이동 238 일대 25,070-25,

27집최종10.22

황룡사 복원 기본계획 Ⅵ. 사역 및 주변 정비계획 가. 사역주변 정비구상 문화유적지구 조성 1. 정비방향의 설정 황룡사 복원과 함께 주변 임해전지(안압지) 海殿址(雁鴨池)와 분황사 등의 문화유적과 네트워크로 연계되는 종합적 정비계획안을 수립한다. 주차장과 광장 등 주변

Microsoft PowerPoint - 04-UDP Programming.ppt

슬라이드 1

슬라이드 1

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

DA C.4.

Product A4

C 프로그램의 기본

K_R9000PRO_101.pdf

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

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

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - FS_ZigBee_Manual_V1.3.docx

라즈베리파이 프로그래밍_130912(최종).indd

DE1-SoC Board

PowerPoint Presentation

2 Mitsubishi FX Series Computer Link MITSUBISHI FX SERIES COMPUTER LINK 시스템구성 시스템설정 사용예 사용예 사용예

USB-EK001 매뉴얼

Semantic Consistency in Information Exchange

AN2629

bn2019_2

AD K

untitled

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

Microsoft PowerPoint - polling.pptx

PowerPoint 프레젠테이션

10.

PICe-FRM26_B 매뉴얼

ez-shv manual

Transcription:

USB3-FRM01 API Programming (Rev 1.1) 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 2005 DAQ system, All rights reserved. -1- http://www.daqsystem.com

Board Level APIs Overview Int OpenDAQDevice (void) ResetBoard (int nboard) CloseDAQDevice (void) Int GetBoardNum (void) USB3_SetMode (int nmode) OpenDAQDevice 디바이스를 Open 한다. 프로그램에서초기에반드시한번함수를호출하여디바이스를 Open 하여야한다. int OpenDAQDevice (void) 없음. 함수호출에성공한경우, 설치된보드의개수를리턴한다. 함수호출에실패한경우, -1 을리턴한다. 이것의의미는시스템에장치가없다는의미이다. ResetBoard 현재시스템 (PC) 에장착된디바이스를초기화한다. ResetBoard (int nboard) 함수호출에성공일경우 TRUE 을리턴함. 함수호출에실패한경우, 어떤 API 함수도호출할수없고 CloseDAQDevice() 를부른다. -2- http://www.daqsystem.com

CloseDAQDevice Open된디바이스를 Close한다. 장치의사용이끝나게되면, 반드시장치를 Close하여다른프로그램에서사용할수있도록한다. CloseDAQDevice (void) 없음. 디바이스 Open에성공할경우 TRUE를실패할경우 FALSE를리턴한다. GetBoardNum 시스템에서설치된보드개수를알려준다. int GetBoardNum (void) 없음. 설치된보드의개수를리턴한다. 보드넘버는장착되어있는 DIP 스위치 (SW1) 의설정값이다. USB3_SetMode 보드의 USB 입출력방향을결정한다. 0 이면입력보드로사용하고, 나머지는출력 보드로사용한다. USB3_SetMode (int nmode) nmode : 0: input(default), others : output -3- http://www.daqsystem.com

LVDS API Functions Overview LVDS_Init (void) LVDS_Start (void) LVDS_GetFrame (DWORD* ncnt, unsigned char* buf) LVDS_Close (void) LVDS_GetResolutuion (DWORD *xres, DWORD *yres) LVDS_Stop (void) LVDS_StartFrame (void) LVDS_SendFrame (DWORD* ncnt, unsigned char* buf) LVDS_SetDataMode (int nmode) LVDS_GetVersion (int *nversion) DWORD LVDS_GetError (DWORD *dwstatuse) LVDS_Init LVDS sub-system 의자원, 예를들어 interrupt 와 LVDS control register 을초기화한다. LVDS_Init (void) 없음. LVDS_Start 프레임데이터수집을시작한다. 이함수를호출한후에 LVDS_GetFrame 함수를 호출하여데이터가완성이되었는가를확인할수있다. LVDS_Start (void) 없음. -4- http://www.daqsystem.com

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_GetResolutuion (DWORD *xres, DWORD *yres) *xres : 수평해상도값즉, Frame의 Width를가져온다. *yres : 수직해상도값즉, Frame의 Height를가져온다. -5- http://www.daqsystem.com

LVDS_Stop 프레임데이터 Capture 를중지한다. LVDS_Stop (void) 없음. LVDS_StartFrame 프레임데이터전송을시작한다. LVDS_StartFrame (void) 없음. LVDS_SendFrame 프레임데이터를지정된크기에맞게보낸다. 이때데이터를보낼버퍼크기를 반드시알려주어야한다. LVDS_SendFrame (DWORD* ncnt, unsigned char* buf) ncnt : 프레임데이터를보낼버퍼의크기가저장되어있는변수의번지이다. 데이터크기는바이트단위이다. buf : 보낼프레임데이터버퍼포인터. -6- http://www.daqsystem.com

LVDS_SetDataMode 프레임 ( 이미지 ) 데이터모드를선택한다. LVDS_SetDataMode (int nmode) nmode : 0 이면 8bit Mode이고, 1 이면 16bit Mode 2 이면 24bit Mode이고, 3 이면 32bit Mode(Not Used) 이고 4 이면 Convert Mode (24bit RGB to 16Bit YUV Mode) 이다. LVDS_GetVersion 현재프로그램의버전을가져온다. LVDS_GetVersion (int *nversion ) *nversion : 현재프로그램버전값. LVDS_GetError 프레임 ( 이미지 ) 에러를가져온다. DWORD LVDS_GetError (DWORD *dwstatus) *dwstatus : 에러상태값을가져온다. 1 이면 Overflow error 2 이면 Read error 4 이면 Size error -7- http://www.daqsystem.com

Clock API Functions Overview CLK_Init (void) CLK_Close (void) DWORD CLK_Get (void) CLK_Set (DWORD val) CLK_On ( bon) CLK_Init 센서의 Clock 을초기화한다. CLK_Init (void) 없음. CLK_ Close _Clock Open 된 Clock 을 Close 한다. CLK_Close (void) 없음. CLK_Get 선택된 Clock 을가져온다. DWORD CLK_Get (void) 없음. -8- http://www.daqsystem.com

CLK_Set Clock 을 1039Hz ~ 68MHz 까지세팅할수있다. CLK_Set (DWORD val) val : 1039Hz ~ 68Mhz. CLK_On Clock 을동작시킨다. CLK_On ( bon) bon : True : Clock Off False : Clock On -9- http://www.daqsystem.com

Digital Input/Output API Functions Overview DWORD DIO_SetDirection (DWORD dwval) DIO_GetDirection (DWORD *dwval) DIO_Read (void) DIO_Write (DWORD dwval) DIO_GetWrite (DWORD *dwval) DIO_SetDirection USB3-FRM01 보드를 Frame Grabber 로사용하지않고 32 비트데이터라인으로사 용할때, 각각의데이터포트를입력으로사용할지출력으로사용할지설정한다. DIO_SetDirection (DWORD dwval) dwval : 입 / 출력 direction 설정값. 각포트에 1 출력 / 0 입력 DIO_GetDirection 현재설정된 direction 값을읽는다. Get_Direction (DWORD *dwval) *dwval : 입 / 출력 direction을읽어올변수. -10- http://www.daqsystem.com

DIO_Read 입력값을읽는다. DWORD DIO_Read (void) 없음. DIO_Write 원하는값을출력포트에출력한다. DIO_Write (DWORD dwval) dwval : 출력포트에기록할값. DIO_GetWrite 출력된현재값을적는다. DOUT_Read (DWORD *dwval) *dwval : 출력포트의현재값을쓸변수이다. -11- http://www.daqsystem.com

I2C API Functions Overview I2C_SYS_Reset (void) I2C_SYS_Read (Byte sladdr, DWORD naddrlen, DWORD naddr, DWORD ncnt, unsigned char* buf) I2C_SYS_Write (Byte sladdr, DWORD naddrlen, DWORD naddr, DWORD ncnt, unsigned char* buf) I2C_SYS_Reset I2C system 의자원을초기화한다. I2C_SYS_Reset (void) 없음. I2C_SYS_Read I2C 를통하여데이터를받는다. I2C_SYS_Read (Byte sladdr, DWORD naddrlen, DWORD naddr, DWORD ncnt, unsigned char* buf) sladdr : Slave address naddrlen : Address Lengh naddr : Register Address ncnt : 문자를나타내는어드레스를바이트사이즈로받는다. 최대받을수있는문자는 256byte로제한되어있다. buf : 버퍼어드레스. -12- http://www.daqsystem.com

I2C_SYS_Write I2C 를통하여데이터를보낸다. I2C_SYS_Write (Byte sladdr, DWORD naddrlen, DWORD naddr, DWORD ncnt, unsigned char* buf) sladdr : Slave address naddrlen : Address Lengh naddr : Register Address ncnt : 문자를나타내는어드레스를바이트사이즈로받는다. 최대전송할수있는문자는 1Kbyte(1024) 로제한되어있다. buf : 버퍼어드레스. -13- http://www.daqsystem.com

Video Simulation API Functions Overview SIM_Vout_Size (int nhmax, int nhblk, int ndres, int ndblk, int nvres, int nvblk) SIM_Vout_Mode (int nmode) SIM_Vout_RbSwap ( bswap) SYM_Vout_Size 사용자는유효한 active 프레임을 H_MAX, H_BLK, D_RES, D_BLK, V_RES, V_BLK Timing 값으로조절하여출력할수도있다. [ 그림 1. H_MAX, H_BLK 와 V_RES, V_BLK 관계 ] -14- http://www.daqsystem.com

[ 그림 2. V_RES, V_BLK 와 D_RES, D_BLK 관계 ] SIM_Vout_Size (int nhmax, int nhblk, int ndres, int ndblk, int nvres, int nvblk) nhmax : H_MAX 값 nhblk : H_BLK 값 ndres : D_RES 값 ndblk : D_BLK 값 nvres : V_RES 값 nvblk : V_BLK 값 -15- http://www.daqsystem.com

SYM_Vout_Mode 출력데이터의형태를선택한다. USB Data --- 일반적인 USB 데이터값을출력한다. Constant --- 일정한패턴의지정된상수값을출력한다. hcnt --- Horizontal Count 값을출력한다. Pixel Count --- 전체 Pixel Count 값을 16진수값으로출력한다. 예를들어, 640x480인경우 0 ~ 4B000 (307200 pixels) 을출력한다. SIM_Vout_Mode (int nmode) nmode : 0:USB, 1:Constant, 2:Horizontal Count, 4: Pixel Count SYM_Vout_RbSwap 출력데이터의 Red 와 Blue 신호값을교환한다. SIM_Vout_RbSwap ( bswap) bswap : 참이면 Red, 거짓이면 Blue -16- http://www.daqsystem.com

Multi-Board API Functions 싱글보드의 API인경우단지하나의보드가인스톨된시스템에서사용된다. 하지만, 두개의보드이거나그이상 ( 최대 4개지원 ) 의보드가인스톨된시스템에서는다중 API를사용해야만한다. 멀티보드 API의경우싱글보드 API에보드번호가추가된형태이다. 최대설정가능한보드번호는 0 ~ 3 이다. Overview USB3_SetMode_Mul (int nboard, int nmode) USB3_SetMode 보드의 USB 입출력방향을결정한다. 0 이면입력보드로사용하고, 나머지는출력 보드로사용한다. USB3_SetMode (int nmode) nmode : 0: input(default), others : output -17- http://www.daqsystem.com

Multi-Board LVDS API Functions Overview DWORD LVDS_Init_Mul (int nboard) LVDS_Start_Mul (int nboard) LVDS_GetFrame_Mul (int nboard, DWORD* ncnt, unsigned char* buf) LVDS_Close_Mul (int nboard) LVDS_GetResolutuion_Mul (int nboard, DWORD *xres, DWORD *yres) LVDS_Stop_Mul (int nboard) LVDS_StartFrame_Mul (int nboard) LVDS_SendFrame_Mul (int nboard, DWORD* ncnt, unsigned char* buf) LVDS_SetDataMode_Mul (int nboard, int nmode) LVDS_GetVersion_Mul (int nboard, int *nversion) LVDS_GetError_Mul (int nboard, DWORD *dwstatuse) LVDS_Init_Mul LVDS sub-system 의자원, 예를들어 interrupt 와 LVDS control register 을초기화한다. LVDS_Init_Mul (int nboard) LVDS_Start_Mul 프레임데이터를받기시작한다. LVDS_Start_Mul (int nboard) -18- http://www.daqsystem.com

LVDS_GetFrame_Mul 프레임버퍼로부터프레임데이터를가져온다. LVDS_GetFrame_Mul (int nboard, DWORD* ncnt, unsigned char* buf) ncnt : 데이터의어드레스는바이트사이즈로받는다. 최대받을수있는데이터는 16Mbyte(0x1000000) 로제한되어있다. buf : 버퍼주소. LVDS_Close_Mul LVDS 함수에서사용된모든자원을되돌려준다. 어플리케이션프로그램은 프로그램종료시이함수를부른다. LVDS_Close_Mul (int nboard) LVDS_GetResolution_Mul Video 입력의해상도를가져온다. LVDS_GetResolutuion_Mul (int nboard, DWORD *xres, DWORD *yres) *nxres : 수평해상도즉, Frame의 Width를가져온다. *nyres : 수직해상도즉, Frame의 Height를가져온다. -19- http://www.daqsystem.com

LVDS_Stop_Mul 프레임데이터 Capture 를중지한다. LVDS_Stop_Mul (int nboard) LVDS_StartFrame_Mul 프레임데이터전송을시작한다. LVDS_StartFrame_Mul (int nboard) LVDS_SendFrame_Mul 프레임데이터를지정된크기에맞게보낸다. 이때데이터를보낼버퍼크기를 반드시알려주어야한다. LVDS_SendFrame_Mul (int nboard, DWORD* ncnt, unsigned char* buf) ncnt : 프레임데이터를보낼버퍼의크기가저장되어있는변수의번지이다. 데이터크기는바이트단위이다. buf : 보낼프레임데이터버퍼포인터. -20- http://www.daqsystem.com

LVDS_SetDataMode_Mul 프레임 ( 이미지 ) 데이터모드를선택한다. LVDS_SetDataMode_Mul (int nboard, int nmode) nmode: 0 이면 8bit Mode이고, 1 이면 16bit Mode 2 이면 24bit Mode이고, 3 이면 32bit Mode(Not Used) 이고 4 이면 Convert Mode (24bit RGB to 16Bit YUV Mode) 이다. LVDS_GetVersion_Mul 현재프로그램의버전을가져온다. LVDS_GetVersion_Mul (int nboard, int *nversion ) *nversion : 현재프로그램버전값. -21- http://www.daqsystem.com

LVDS_GetError_Mul 프레임 ( 이미지 ) 에러를가져온다. LVDS_GetError_Mul (int nboard, DWORD *dwstatus) *dwstatus : 에러상태값을가져온다. 1 이면 Overflow error 2 이면 Read error 4 이면 Size error -22- http://www.daqsystem.com

Multi-Board Clock API Functions Overview CLK_Init_Mul (int nboard) CLK_Close_Mul (int nboard) DWORD CLK_Get_Mul (int nboard) CLK_Set_Mul (int nboard, DWORD val) CLK_On_Mul (int nboard, bon) CLK_Init_Mul 센서의 Clock 을초기화한다. CLK_Init_Mul (int nboard) CLK_ Close_Mul Open 된 Clock 을 Close 한다. CLK_Close_Mul (int nboard) -23- http://www.daqsystem.com

CLK_Get_Mul 선택된 Clock 을가져온다. DWORD CLK_Get_Mul (int nboard) CLK_Set_Mul Open 된 Clock 을 Close 한다. CLK_Set_Mul (int nboard, DWORD val) val : 1039Hz ~ 68Mhz. CLK_On_Mul Clock 을동작시킨다. CLK_On_Mul (int nboard, bon) bon : True : Clock Off False : Clock On -24- http://www.daqsystem.com

Multi-Board Digital Input/Output API Functions Overview DWORD DIO_SetDirection_Mul (int nboard, DWORD dwval) DIO_GetDirection_Mul (int nboard, DWORD *dwval) DIO_Read_Mul (int nboard) DIO_Write_Mul (int nboard, DWORD dwval) DIO_GetWrite_Mul (int nboard, DWORD *dwval) DIO_SetDirection_Mul 각각의포트를입력으로사용할지출력으로사용할지설정한다. DIO_SetDirection_Mul (int nboard, DWORD dwval) dwval : 입 / 출력 direction 설정값. 각포트에 1 출력 / 0 입력 Get_Direction_Mul 현재설정된 direction 값을읽는다. Get_Direction_Mul (int nboard, DWORD *dwval) *dwval : 입 / 출력 direction을읽어올변수. -25- http://www.daqsystem.com

DIO_Read_Mul 입력값을읽는다. DWORD DIO_Read_Mul (int nboard) DIO_Write_Mul 원하는값을출력포트에출력한다. DIO_Write_Mul (int nboard, DWORD dwval) dwval : 출력포트에기록할값. DOUT_GetWrite_Mul 출력된현재값을적는다. DOUT_Read_Mul (int nboard, DWORD *dwval) *dwval : 출력포트의현재값을쓸변수이다. -26- http://www.daqsystem.com

Multi-Board I2C API Functions Overview I2C_SYS_Reset_Mul (int nboard) I2C_SYS_Read_Mul (int nboard, Byte sladdr, DWORD naddrlen, DWORD naddr, DWORD ncnt, unsigned char* buf) I2C_SYS_Write_Mul (int nboard, Byte sladdr, DWORD naddrlen, DWORD naddr, DWORD ncnt, unsigned char* buf) I2C_SYS_Reset_Mul I2C system 의자원을초기화한다. I2C_SYS_Reset_Mul (int nboard) I2C_SYS_Read_Mul I2C 를통하여데이터를받는다. I2C_SYS_Read_Mul (int nboard, Byte sladdr, DWORD naddrlen, DWORD naddr, DWORD ncnt, unsigned char* buf) sladdr : Slave address naddrlen : Address Length naddr : Register Address ncnt : 문자를나타내는어드레스를바이트사이즈로받는다. 최대받을수있는문자는 256byte로제한되어있다. buf : 버퍼어드레스. -27- http://www.daqsystem.com

I2C_SYS_Write_Mul I2C 를통하여데이터를보낸다. I2C_SYS_Write_Mul (int nboard, Byte sladdr, DWORD naddrlen, DWORD naddr, DWORD ncnt, unsigned char* buf) sladdr : Slave address naddrlen : Address Length naddr : Register Address ncnt : 문자를나타내는어드레스를바이트사이즈로받는다. 최대전송할수있는문자는 1Kbyte(1024) 로제한되어있다. buf : 버퍼어드레스. -28- http://www.daqsystem.com

Multi-Board Video Simulation API Functions Overview SIM_Vout_Size_Mul (int nboard, int nhmax, int nhblk, int ndres, int ndblk, int nvres, int nvblk) SIM_Vout_Mode_Mul (int nboard, int nmode) SIM_Vout_RbSwap_Mul (int nboard, bswap) SYM_Vout_Size_Mul 사용자는유효한 active 프레임을 H_MAX, H_BLK, D_RES, D_BLK, V_RES, V_BLK Timing 값으로조절하여출력할수도있다. [ 그림 3. H_MAX, H_BLK 와 V_RES, V_BLK 관계 ] -29- http://www.daqsystem.com

[ 그림 4. V_RES, V_BLK 와 D_RES, D_BLK 관계 ] SIM_Vout_Size_Mul (int nboard, int nhmax, int nhblk, int ndres, int ndblk, int nvres, int nvblk) nhmax : H_MAX 값 nhblk : H_BLK 값 ndres : D_RES 값 ndblk : D_BLK 값 nvres : V_RES 값 nvblk : V_BLK 값 -30- http://www.daqsystem.com

SYM_Vout_Mode_Mul 출력데이터의형태를선택한다. USB Data --- 일반적인 USB 데이터값을출력한다. Constant --- 일정한패턴의지정된상수값을출력한다. hcnt --- Horizontal Count 값을출력한다. Pixel Count --- 전체 Pixel Count 값을 16진수값으로출력한다. 예를들어, 640x480인경우 0 ~ 4B000 (307200 pixels) 을출력한다. SIM_Vout_Mode_Mul (int nboard, int nmode) nmode : 0:USB, 1:Constant, 2:Horizontal Count, 4: Pixel Count SYM_Vout_RbSwap_Mul 출력데이터의 Red 와 Blue 신호값을교환한다. SIM_Vout_RbSwap_Mul (int nboard, bswap) bswap : 참이면 Red, 거짓이면 Blue -31- http://www.daqsystem.com