Я бы рад, но тогда придется делать выделенные протопотоки для
чтения/записи 1 (одного) бита 1wire. По-моему, это где-то на грани
с маразмом. До сих пор пытался следующим образом: #define OW_READ_BIT(bitval) do{ \
OW_bit_0(); \
OW_DELAY(5); \
OW_bit_1(); \
OW_DELAY(5); \
( bitval ) = OW_bit() == 0 ? 0 : 1; \
OW_DELAY(60); }while(false)
Макрос PT_YIELD находится внутри макроса OW_DELAY.
Ессно так не получится из-за однострочности макросов, придется извратиться как-то иначе. Но на отдельный протопоток пока не согласен.