[issue24859] ctypes.Structure bit order is reversed - counts from right

2015-08-15 Thread zeero

zeero added the comment:

Thanks for the advise. I'll give it a try.

So ctypes.Structure is always little endian regardless from the underlying 
architecture. 
I just checked on a raspberry pi 2 that should be a big endian device, and got 
the same results as before.

I'm still not sure if it's right that ctypes.Structure swaps the order of the 
bit items but apparently it's the intended behaviour.

I'll close the issue then. Thanks again.

--
resolution:  - not a bug
status: open - closed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue24859
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24859] ctypes.Structure bit order is reversed - counts from right

2015-08-14 Thread zeero

zeero added the comment:

Sorry for the inconvenience.

The format specification can be found in chapter 2.1 in 

http://vector.com/portal/medien/cmc/application_notes/AN-ION-1-3100_Introduction_to_J1939.pdf

So I would write down the field contents in that order

_fields_ = [('reserved',c_uint8,3),
('priority',c_uint8,3),
('extended_data_page',c_uint8,1),
('data_page',c_uint8,1)
...
]

I expect the first Byte to be 0x1C when I set priority to 7 but it came out as 
0x38, after tunneling it through the Union object.

Reversing the order of the bit fields makes it work like expected.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue24859
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com