-
- Framing Error сбрось чтением-записью UCSRxA перед чтением UDRx, и попробуй снова - MBedder(10.09.2008 00:28)
- Нет FE или он в попорченном байте. 8-ODD-1 скорость 1200. Посылаю 0x01 0х07 0x00 0x00 0x0C 0xC3 а получаю иногда 0x01 0х07 0x00 0x0C 0xC3, либо посылаю 0x05 0x05 0x05 и получаю 0x05 0xC1+FE. Вывод - короткий старт исключается, потому как байт 0х00 не Vit(423 знак., 10.09.2008 08:59)
- Так забирай из UDR байты по двум критериям - при нормальном стопе по RXC, при ущербном - по FE, делов-то - все равно байт уже принят - MBedder(10.09.2008 12:02)
- Да забираю я фсё. Стопы как НОРМАЛЬНЫЕ детектируются, а один старт после них теряется. Просто надыбал такую багофичу. - Vit(10.09.2008 12:23)
- Думаю, что это не только для Atmel - машина состояний UART обычно сбрасывается только после успешного приема стопа, а после ущербного стопа такого сброса нет - соответственно, и старт некому детектировать - MBedder(10.09.2008 12:27)
- Ущербность стопа определяет схема мажорирования. И если 2 из 3-х в норме, то усё путём, иначе - FE. А вот старт может поллиться, а может ловиться перепад типо триггером, а дальше проверяться правильность бита. В DS буквями написано, что перепад ловится Vit(255 знак., 10.09.2008 12:37)
- И это верное решение :)) - MBedder(10.09.2008 12:48)
- Ущербность стопа определяет схема мажорирования. И если 2 из 3-х в норме, то усё путём, иначе - FE. А вот старт может поллиться, а может ловиться перепад типо триггером, а дальше проверяться правильность бита. В DS буквями написано, что перепад ловится Vit(255 знак., 10.09.2008 12:37)
- Думаю, что это не только для Atmel - машина состояний UART обычно сбрасывается только после успешного приема стопа, а после ущербного стопа такого сброса нет - соответственно, и старт некому детектировать - MBedder(10.09.2008 12:27)
- Да забираю я фсё. Стопы как НОРМАЛЬНЫЕ детектируются, а один старт после них теряется. Просто надыбал такую багофичу. - Vit(10.09.2008 12:23)
- Так забирай из UDR байты по двум критериям - при нормальном стопе по RXC, при ущербном - по FE, делов-то - все равно байт уже принят - MBedder(10.09.2008 12:02)
- Нет FE или он в попорченном байте. 8-ODD-1 скорость 1200. Посылаю 0x01 0х07 0x00 0x00 0x0C 0xC3 а получаю иногда 0x01 0х07 0x00 0x0C 0xC3, либо посылаю 0x05 0x05 0x05 и получаю 0x05 0xC1+FE. Вывод - короткий старт исключается, потому как байт 0х00 не Vit(423 знак., 10.09.2008 08:59)
- Framing Error сбрось чтением-записью UCSRxA перед чтением UDRx, и попробуй снова - MBedder(10.09.2008 00:28)