Jump to content

todd

Members
  • Posts

    335
  • Joined

  • Last visited

  • Days Won

    13

Posts posted by todd

  1. Sorry, change the constant outside the sequence to True, then swap the cases for the sysexec.vi. Running that shows me the VI in the project (since I have a project open).

    The snippet you posted sent key downs, but not key ups. Casting one of your clusters to a U8 array shows a different number of Bytes than the method in the zip file. You may need to adjust the representations, or pack the Bytes as in the zip file helpers.

    post-107-0-32876100-1346903242_thumb.png

  2. Running that VI natively, here, it shows 0x18 - but it also performs the action (This VI in Project). I mentioned DirectX as the way that "Acquire Input Data.vi" probably works within the guest OS as a way for LV to see those inputs. The event structure probably ties in deeper than that. I imagine Parallels injects keys using a driver that is installed in the guest - or somehow uses "SendInput". Either way, it's a very tricky thing to manage. KeyOn and KeyOff need to be sent in such a way to avoid repeating keys, neglecting to send KeyOff can leave stuck keys, etc, etc. One of the Parallels threads mentions trying:

    Virtual Machine -> Configure -> Options -> Advanced -> Optimize modifier keys for games. Oh, I have an old Parallels license around somewhere at home - maybe I can play with it tonight.

  3. Motors manipulate devices. Instrumentation measures the devices. Different types of device data collection and different types of motor movements have different timespans and different requirements for synchronization. Currently, I use a left-to-right flow along with notifiers to synchronize things. I've been trying to figure out how to have the devices' drivers and the motors' drivers message each other. Is that vague enough?

  4. I have been told by the obstetrician that they are identical!

    Although I am not 100% sure what he based that finding on (I would have thought DNA would be the only test 100% conclusive).

    Plus, it's a By-Val copy of an object with the ability to change its methods.

  5. if you had read those 921600 bps with one VISA Read per received character it sure enough would have slowed you down

    I used a separate loop to query "Bytes at Port" then read that many Bytes and put them one by one on a queue. (Termination character did not apply to that binary, streamed protocol.)

    With the Windows com port at 921600, groups of between 500 Bytes and 4k Bytes are available as close together as 300ms.

    With a VCP DLL at 921600, groups of between 100 Bytes and 3k Bytes are available as close together as 5ms.

    So my guess is that the latency settings in the VCP allow for a "long" timeout (255ms before returning: "you expected n Bytes, but they did not all arrive"), and a short timeout of 2ms - which works well for the way I was using it (always reading available Bytes).

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.