HD512 USB-DMX512

具有标准512个通道输出,可以多个控制器进行组合,比如2个盒子组合成1024通道,4个盒子组合成2048通道。支持 XP /VISAT/Win7 /Win8 /Win10/Win11/Win12…  x32和X64系统,我们免费提供有SDK及VB、VC、C++ builder、Delphi、C#源代码,你可以在几分钟内编出自己的DMX512控制程序,用于沙盘灯光展示、展厅自动灯光控制,喷泉控制,或者3D控制程序。这些源代码可以在光盘的SDK目录下面找到。
源代码下载: http://down.hahan123.com/down_server/HD512_DVD/SDK_Source_code/

HD512_SDK

//----------------include this head file--------------------------------------------

#ifndef HD512DLL_H
#define HD512DLL_H
#define Decl extern "C" __declspec(dllimport)
//-------------------------------------------------------------
// ShowAbout and Version
//-------------------------------------------------------------
Decl void ShowAbout();

//-------------------------------------------------------------------------
// Check DMX Dongle
// True have Dongle
// HD512 box push to PC, will auto open ,so in your programm, don't call this function, only for check.
//-------------------------------------------------------------------------
Decl bool isDMXOpen();


//-----------------------------------------------------------------------------------------
// Close Dongle
//-----------------------------------------------------------------------------------------
Decl void DMXClose();

//---------Send Single Channel Value to Dongle---------------------------
// Channel(1~512)
// Value(0~255)
//----------------------------------------------------------------------
Decl bool DMXSend(long Channel, unsigned char Value);


//---------------------------Bulk send----------------------------------------------------
// ChannelCount(1~512)
// ChannelIndex(1~512) First Channel Value
// Value=buff datas
// DMXSends(512,1,buff); //Send All 512 channels data to HD512 (data in buff)
//----------------------------------------------------------------------------------------
Decl bool DMXSends(long ChannelCount, long ChannelIndex, unsigned char* Value);


//---------Other way Send Single Channel Value to Dongle---------------------------
// Channel(1~512)
// Value(0~255)
//----------------------------------------------------------------------
Decl bool DMXSendSingleChannel(long Channel, unsigned char Value);


//--------------------------send DMX data to 0~3 universe ID box------------------------------
// Value=buff[512] datas
// Box = 0~3 universe ID
// DMXSendBox(2,buff); //Send All 512 channels data to universe2[box3] HD512 box (data in buff)
// new for HD512 box, in your programm, only call this function then will ok
//--------------------------------------------------------------------------------------------
Decl bool DMXSendBox(long Box, unsigned char* Value);

//--------------------------------------Change Box Number----------------------------------------------------------
//when want 1~4 box combinations work 1024~2048 channels, must changer box number, one box don't use this function,
// Box = 0~3 box number
// ChangeBoxNumber(1); //have two box make 1024 channels.
//-----------------------------------------------------------------------------------------------------------------
Decl bool ChangeBoxNumber(long Box);

//-----------------------Get Box Number-----------------------------------------------
// Get box number
//------------------------------------------------------------------------------------
Decl int GetBoxNumber();

//-----------------------Get Box Universe ID------------------------------------------
// only for one box, Get Box Universe ID
//------------------------------------------------------------------------------------
Decl char GetBoxUniverseID();

//-----------------------Get Box Refresh Rate------------------------------------------
// only for one box
//-------------------------------------------------------------------------------------
Decl int GetBoxRefreshRate();

//-----------------------Set Box Refresh Rate------------------------------------------
// only for one box
// DlyTime = 1000 / Rate , 22ms = 1000 / 44Hz
//-------------------------------------------------------------------------------------
Decl bool SetBoxRefreshRate(int DlyTime);


//========================For example=====================================
/*
//HD512 box push to PC, will auto open, so only call DMXSendBox() function then will ok ;
//example 1
//For example you need two box work 1024 channels:

unsigned char U0_DMXData[512], U1_DMXData[512]; //save two box data, each is 512 channels
ChangeBoxNumber(1); // First to Change box number,0 is 1 box, 1 is two box, 2 is three box, 3 is four box,if only one box you needn't to call this function,default is one box.
DMXSendBox(0,U0_DMXData); //Send 512 byte(channels) DMX data to box 1 (universe0)
DMXSendBox(1,U1_DMXData); //Send 512 byte(channels) DMX data to box 2 (universe1)

//-------------------------------------------------------------
//examlpe 2
//one box work 512 channels, only call DMXSendBox() function then will ok:
<br>
unsigned char U0_DMXData[512]; //save one box data,U0_DMXData[512] is 512 channels data
DMXSendBox(0,U0_DMXData); //Send 512 byte(channels) DMX data to box 1
<br>
*/
滚动至顶部