|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools |
Rating:
|
Display Modes |
|
|
|
#1
|
||||
|
||||
|
Re: Labview Video Tutorial? Dashboard
Here is a sample on how to write user bytes in easyC.
Last edited by Kingofl337 : 21-01-2008 at 14:16. |
|
#2
|
|||
|
|||
|
Re: Labview Video Tutorial? Dashboard
Hi Danny -
Thanks for the tutorial. It went a little fast in places so we had to watch it a few times, but we finally got a finished product that looks almost exactly like yours. However, when we run, we get a few seconds of data transmission and then an error: Error -1073807252 occurred at VISA read in PacketReader.vi -> DashboardProvider.vi Possible Reasons An overrun error occurred during the transfer. A character was not read from the hardware before the next character. At this point the DashboardProvider is halted, but the Dashboard itself is still going. We are using the USB<->Serial converter cable sold by IFI for the VEX system. Could that be the issue? Has anyone else had any luck with this adapter? (It's getting real hard to find a decent but inexpensive laptop with a real serial port!) Thanks for any guidance you can provide! |
|
#3
|
|||||
|
|||||
|
Re: Labview Video Tutorial? Dashboard
Okay, I'm going to shoot from the hip here since I cannot test it right now - the only thing I can think is happening is that I forgot to put a wait in the while loop. The program runs fine on my dual core laptop, but I haven't checked to see if one cores is pegged out. See, when you create a while loop you're supposed to put some kind of wait or blocking call in it so that the while loop doesn't just spin and eat all the processor (that way the thread running the loop yields for other threads in the system to be able to run). Open the Dashboard Provider VI and you'll see what I mean, the while loops there have a "wait for millisecond multiple" and usually it has 10 wired into it (that means the processing within the loop will be suspended until the next 10 ms multiple). I had thought the "Dashboard Read" VI would take some time to read the datasocket variable (actually I thought it was a blocking call), but I could be incorrect - if this is the case then the thread reading the datasocket variable in your while loop is using a significant amount of the processor and it is starving the serial port read; that's why the overrun is probably happening (you can verify this by watching your CPU utilization while you're running the VI). On a dual core target if you're lucky and the serial read happens to be running on one processor and the datasocket read hogs the second processor, everything will run fine. However, if you're on a single core target then you're in for some serious trouble, which is probably what's happening to you (or you're unlucky and both threads got scheduled on the same processor).
I won't be able to get my hands on the testing platform again until Saturday, so if this is the case I'll update the video then with this new code. Until then, please accept this new VI (attached) and let me know if this solves your problem. -Danny Last edited by Danny Diaz : 25-01-2008 at 00:32. |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Example LabVIEW Apps - Dashboard, CMUcam2 and Motors | DanDon | LabView and Data Acquisition | 3 | 29-01-2009 22:13 |
| Example LabVIEW Apps - Dashboard, CMUcam2 and Motors | Russ Beavis | National Instruments LabVIEW and Data Acquisition | 9 | 21-01-2007 17:19 |
| LabView Dashboard Problems | brummer_13 | LabView and Data Acquisition | 11 | 01-02-2006 20:13 |
| National Instruments LabVIEW and Data Acquisition Forum | Danny Diaz | National Instruments LabVIEW and Data Acquisition | 1 | 16-01-2006 13:20 |
| Custom Dashboard code for LabVIEW ready for download. | archiver | 2001 | 3 | 24-06-2002 00:49 |