[an error occurred while processing this directive]
|
по переходу из 1 в 0 запускается таймер на половину интервала.
++++++ т.е. в начале стартового бита пущается таймер. 1-ый раз он в идеале попадает в середину стартового бита, второй раз либо в стартовый бит, либо в нулевой бит данных (по сути на границу), ну и в третий раз он должен попасть в середину 0-ого бита данных. ну и потом таймер на полный интревал. так?
затем последовательно считывается 3 значения - и мажоритарным способом принимается решение.
+++++ а вот что это за мажоритарным? по мне так второе значение оно нам ничего не даст, т.к. может попасть что в стартовый бит, что в бит данных, т.е. по сути смысла не несет. или?
затем таймер работает в полный интервал и все последующие биты определяются так же мажорантой.
++++ мажоранта это што?
ошибка должна быть таковой чтобы на 10 битах обеспечить "уход" не более 1\3 ширины импульса.
+++++++ щас попробую, допустим 52 мкс это период в UARTе, тогда через 26+26+26+8*52=494 мкс мы должны быть в середине стопового бита (пока без четности), если мой генератор дает интервал 54мкс, то 10-ый бит начнется в 54*9=486 мкс и в теории UART это сможет обработать... если у меня 55мкс, то я уже не попадаю в интервал, ну и с меньшим интервалом мона посчитать и получим что при 50 мкс еще буит работать... т.е. у меня период может быть в пределах 50-54мкс, а это уже никак не 0.2% или я где-то ошибся?
E-mail: info@telesys.ru