Я отдаю uint32 как два последовательных регистра и "кошка бросила
котят". В моем случае речь идет о неких абстрактных "универсальных"
счетчиках. Кто не умеет читать два регистра, пусть читает по одному
(или вообще только младший). Единственная скрытая фишка - копирую uint32-low в "теневую переменную", в момент отправки uint32-high, и даю гарантию что даже если регистры high-low читаются двумя разными командами, результат соберется корректно.