Topics pertaining to the configuration of imc Systems to work with CAN, and other field bus, networks.
i am trying to send a command on a channel which is 8 bytes long, on each byte there is two hex digits, i can set the value as a message and it goes out correctly . but when i assign it to a channel the message will not fill in the values because of the length, when i try and shorten the message the message becomes different on the output. the message i am trying to send is 0x40 7c 60 00 00 00 00 00.
- Posts: 3
- Joined: Fri Dec 05, 2008 11:16 pm
I believe this problem is a result of Online FAMOS' use of IEEE 754 single precision floating point format, with a 24 bit significand and 8 bit exponent. Online FAMOS will allow you to define long hex constants, but it will then convert them to fit the IEEE 754 format. The result is that what you may think is a simple hex constant or variable is actually something quite different.
The solution is to split your CAN message into two-byte (16 bit) channels. IEEE 754 single precision floating point has enough precision to cleanly handle two-byte binary variables, so the bits in your message will come out exactly as you intended.
- Power User
- Posts: 55
- Joined: Sat Apr 05, 2008 11:42 am
Return to imc Devices & CAN Assistant
Who is online
Users browsing this forum: No registered users