View Single Post
Old March 2nd, 2010   #11
ericthegeek
Task Group Member
 
Join Date: Aug 2008
Posts: 375
Default

> issuing new software for existing products.

Having spent hundreds of hours in 8051 assembly lately, I understand...

Using a real queue you could do it in 3 bytes per message (1 byte for the sub-device and 2 bytes for the PID).

If you use bit packing and have 32 sub-devices that support 50 PIDs each, you can store the entire queue state in 200 bytes. Map each possible queued message to a bit and set the associated bit whenever that PID's data changes and needs to be reported to the controller.
ericthegeek is offline   Reply With Quote