ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
20 апреля
793363 Топик полностью
fk0, легенда (10.11.2017 11:42 - 11:45, просмотров: 294) ответил SciFi на Нафиг общий случай? Пару раз такое нужно было, всё было просто. Чтение переменной, которая меняется достаточно редко:
Во-первых речь про многобайтную переменную на 8-битном МК. Во-вторых "достаточно редко" -- вообще не аргумент, это вероятностное программирование, которое кончается плохо. Обычно логика такая:  int read_var(void) { char hi, lo, t; t = var>>8; do hi=t, lo=var, t=var>>8; while (hi != t); return hi<<8 | lo; } Идея в том, что младшая половина если убежит вперед ничего страшного (если таймер, счетчик), а если старшая, то с неправильной младшей половиной у тебя неправильное значение. Поэтому читай с начала.
[ZX]