06-21-2008 01:43 AM
06-21-2008 05:20 AM
06-21-2008 08:46 AM
08-26-2008 02:46 AM
Hello,
I'm also trying to have a mightex usb camera working in labview 8.2 by using the "CCD_USBCamera_SDK.dll" downloaded from the mightex site.
until now i do not get it working.
some of the calls are working like :
SDK_API CCDUSB_InitDevice( void );
SDK_API CCDUSB_UnInitDevice( void );
SDK_API CCDUSB_GetModuleNoSerialNo( int DeviceID, char *ModuleNo, char *SerialNo);
SDK_API CCDUSB_AddDeviceToWorkingSet( int DeviceID );
but getting the ccd-camera dat out seems imposible t me:
SDK_API CCDUSB_InstallFrameHooker( int FrameType, FrameDataCallBack FrameHooker );
The callback seems to be the problem here.
I have heard callbacks are not possible in labview!
Did you solve this problem already, or can you give me advice?
greetings T-spark
08-26-2008 05:05 PM
08-29-2008 01:52 AM
OK, so callbacks do'not work in labview.
The manufactyerer of the ccd camera now came up with a new dll, with the procedure I need as a normal call.
I tried it but i do not seem to be able to implement it in labview either, because the return parameter of the funtion is a pointer to the data-aray.
In labview (8.2) it seems not posible to handle pointers for the terurn parameter (they are alowed in the arguments only)
In labview the only types that are alowed for the return are: String, void and numeric, but not Array.
Im i doing something wrong? The manufacterer says other users use this dll in laview.
This is the function:
SDK_POINTER_API CCDUSB_GetCurrentFrame( int Device);
User may call this function to get the one frame, this is the latest frame while host invokes this API..
Argument : DeviceID – The device number, which identifies the camera’s frame is being grabbed.
Return: 0 (NULL): If the function fails (e.g. invalid device number, or camera engine is not started )Or a frame is not grabbed with pre-defined timeout. (3 seconds)
A valid pointer to an internal array if the call succeeds.
Important: User might use this API to get a frame of the specified device, this is an easy way to grab frame data, however, when user uses this API, it’s not guarantee each frame can be captured, the returned frame data is the latest frame at the moment the API is invoked. The returned point points to a "unsigned short" (we call it "word") array, the array has two parts as following:
FrameDataProperty: It occupies the first 8 words which contains the 7 fields in TprocessedDataProperty and one more reserved word (always ZERO).FrameRawData: After the 8 words, the following words are raw data of the frame, note that for TCX-1304-X, it has 3648 words, while for TCX-1209-X, it has 2048 words only.
can someone help me?
T-spark
08-29-2008 09:14 AM
08-29-2008 10:44 AM
Good to know Mightex has new function now.
However, this function only good for capturing single picture. For multiple pictures, or continue capture/movie, callback is more efficient.
Besides, a wrapper is needed anyway.
George Zou
http://www.geocities.com/gzou999/
09-01-2008 02:13 AM
Thanks for the advice.
I tried out the new dLL from mightex and it it working now.
I do not need however a wrapper dll to reach the data.
The return from the function (GetCurrentFrame) is a only a pointer to the data, but is is possible within labview to get to the data aswell.
For this you need to use the "moveblock" function from a labview dll. (just fill in library name or path: LabVIEW, its case sensitive)
With just the pointer address you can retreive the data now.
happy T-spark
09-03-2008 04:54 PM
I also using the same function, "GetCurrentFrame(int FrameType, int deviceID)".
But, I cannot get a pointer, though the data type is "integer".
The other SDK functions look working.
Do you have any idea to fix this problem?
My system is shown below.
LabView8.6
Mightex BCE-C030-U