Mafo píše:Este treba overit, ci multiplexonaie v preruseni nebude kazit komunikaciu s loconetom.
Pokud je soft UART dobre udelany, tak jede v globalnim zakazu preruseni.
Takze pokud budes multiplexovat v hlavnim programu, tak by to nemelo vadit nicemu.
---
Problem bude, pokud nasadis i jina preruseni, ktera jsou kriticka na casy do 600uS, to by mohllo delat problemy.
Napriklad serva, ktera maji interval 1 - 2ms s rozlisenim po 100uS na uhel ramene serva.
Ty v kombinaci se soft UARTem nebudou dobre fungovat na stejnem procesoru.
---
Jinak soft UART je pozustatek na doby minule, kdy to jeden clovek vymyslel a nasledne to vsichni od nej odpisuji.
Tehdy ne kazdy procesor mel hard USART a muselo se to vselijak obkecat.
Jeste vysilani bych pochopil, ale proc se nepouziva hard USART na prijem je mi dodnes podivne. Tam se nesleduji kolize, respektive se jen sleduje kontrolni EXOR. A taky start a stop bit.
Navic kazdy slusny programovaci jazyk ma osetrene bufferovani prijmu, takze nehrozi strata dat, jako u soft UART.
Pritom prave nahodnost prijmu je ten nejvetsi problem, protoze vysilani si procesor dokaze osetrit sam v pohode, potoze vysilani blokuje prijem Loconetu.