Sparkette Posted September 6, 2014 Report Share Posted September 6, 2014 (edited) I want to use a MyDAQ to communicate with a serial LCD I got at RadioShack. However, it is my understanding that the MyDAQ doesn't have built-in hardware timing for digital I/O. I know I could use one of the analog outputs as a digital line, but I'd rather use an actual digital output if possible.My computer has a 6-core processor, so I was wondering if maybe I could use one of those processor cores for the same purpose one would use a real-time OS. Is there any way I could install something that would run at kernel level and make Windows temporarily behave as if there were only five cores, giving my VI exclusive control of the remaining core to use for timing? (or would other USB devices, or the USB controller itself, add too much latency?)Or is there some other way I haven't thought of to output a 9600-baud serial output from a MyDAQ digital line? EDIT: Thank you, whichever moderator clarified the title for me as I requested! Edited September 6, 2014 by flarn2006 Quote Link to comment
mje Posted September 7, 2014 Report Share Posted September 7, 2014 You can't use the FPGA for your timing needs? Quote Link to comment
Sparkette Posted September 7, 2014 Author Report Share Posted September 7, 2014 (edited) You can't use the FPGA for your timing needs? Don't have one. EDIT: In case anybody's interested, I actually ordered a RIO evaluation kit on eBay today. (Not for this though.) Just thought I'd update this post. Edited September 10, 2014 by flarn2006 Quote Link to comment
ShaunR Posted September 7, 2014 Report Share Posted September 7, 2014 However, it is my understanding that the MyDAQ doesn't have built-in hardware timing for digital I/O. I believe you can create a counter using the DIO on a MyDaq. If you are doing it as a technical exercise - fine. If it is for a real project then I would just get a USB to serial cable and be done with it Quote Link to comment
mje Posted September 7, 2014 Report Share Posted September 7, 2014 Don't have one. I thought the myDAQ was based on the Zync chip and had a small FPGA to play with? If not most of my interest in the device just evaporated. Quote Link to comment
ShaunR Posted September 7, 2014 Report Share Posted September 7, 2014 (edited) I thought the myDAQ was based on the Zync chip and had a small FPGA to play with? If not most of my interest in the device just evaporated. I think you are thinking of the myRIO. The myDAQ is A/D IO only and what they used to call Elvis. Edited September 7, 2014 by ShaunR Quote Link to comment
Sparkette Posted September 7, 2014 Author Report Share Posted September 7, 2014 (edited) Thanks for the counter tip, I'll take a look at that when I get a chance. If that doesn't work, I'll just keep using the serial out on my Arduino. Also, I looked up the myRIO, but on NI's website it doesn't even list the price, and says to contact my NI representative! Can't find one on eBay (where I got the myDAQ) either. But seriously, why wouldn't they list prices? If they did wouldn't they get more business, because it would be easier to buy it? (Humorously, when I searched for "ni myrio" on eBay, it autocorrected to "ni mario"!) Edited September 7, 2014 by flarn2006 Quote Link to comment
GregSands Posted September 7, 2014 Report Share Posted September 7, 2014 (edited) My computer has a 6-core processor, so I was wondering if maybe I could use one of those processor cores for the same purpose one would use a real-time OS. Is there any way I could install something that would run at kernel level and make Windows temporarily behave as if there were only five cores, giving my VI exclusive control of the remaining core to use for timing? (or would other USB devices, or the USB controller itself, add too much latency?) Just to answer this original question, yes it must be possible. I have an Aerotech stage controller which installs a Real-Time extension that reserves one core, and Windows thinks it has one less. I don't know how this is done, nor if it's a sensible solution to your problem - probably not would be my guess. Just thinking further, I wonder if LabVIEW RT could be set to run one core (or several) of a Windows machine? I wouldn't be surprised if NI hadn't tried this at some stage, and now it's easy to get a dozen cores or more. Edited September 7, 2014 by GregSands Quote Link to comment
Sparkette Posted September 8, 2014 Author Report Share Posted September 8, 2014 (edited) I just found the Wikipedia article about CPU shielding, which seems like exactly what I'm asking about. A quick Google search doesn't reveal anything about doing this in LabVIEW though. Edited September 8, 2014 by flarn2006 Quote Link to comment
Mellroth Posted September 8, 2014 Report Share Posted September 8, 2014 Just thinking further, I wonder if LabVIEW RT could be set to run one core (or several) of a Windows machine? I wouldn't be surprised if NI hadn't tried this at some stage, and now it's easy to get a dozen cores or more. The NI Real-Time Hypervisor supports this, but only on dedicated targets http://sine.ni.com/nips/cds/view/p/lang/sv/nid/207302. /J Quote Link to comment
Jordan Kuehn Posted September 8, 2014 Report Share Posted September 8, 2014 The myDAQ is A/D IO only and what they used to call Elvis. myDAQ != Elvis. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.