-
- В HART синхронизация делается с помощью 2 шт. 0xFF при паритете ODD. Ещё добавляют несколько 0xFF для установки АРУ в демодуляторе, но то другая история - Vit(24.03.2021 19:15)
- нипонял причем тут 9бит? Nikolay801_(185 знак., 24.03.2021 11:49)
- При проектировании интерфейса, всегда представляйте себе, как восстановите связь, после того, как пошурудите между контактами гвоздём. Ещё вариант - принимайте поток в SPI, давая тактовый сигнал от генератора ШИМ. Частоту и фазу ШИМ подстраиваете для синхронизации с битовыми интервалами входящего UART. Nikolay_Po(130 знак., 24.03.2021 10:12)
- Лучше интервалы сделать. Nikolay_Po(1026 знак., 24.03.2021 10:06)
- Спасибо, но это уже перебор. ))) Тогда я лучше изменю прошивку в
передающем МК. Я изначально говорил о скорее теоретическом
характере вопроса. Думал, может чего пропустил и есть простой
механизм... - my504(24.03.2021 10:08)
- Я вообще, по возможности, два стопа настраиваю. Чтобы быстрее определять оибку кадра и перезапускать UART. Впрочем, паузы между пакетами в символ плюс пару бит должно хватить. По пустому месту ловите ошибку кадра, а за пару запасных бит успеваете сбросить её или перезапустить UART. - Nikolay_Po(24.03.2021 10:18)
- Спасибо, но это уже перебор. ))) Тогда я лучше изменю прошивку в
передающем МК. Я изначально говорил о скорее теоретическом
характере вопроса. Думал, может чего пропустил и есть простой
механизм... - my504(24.03.2021 10:08)
- ИМХО, в такой схеме старты и стопы неразличимы не фоне остальных
битов. Нужна пауза для синхронизации. - SciFi(24.03.2021 09:52)
- Спасибо, один шар в лузу "так делать нельзя"... ))) Если честно, то
обнаружив сие, я почувствовал себя идиотом. Никогда с таким не
сталкивался. - my504(24.03.2021 09:58)
- Как решение "малой кровью" - можно передавать в качестве стартового
маркера 0xFF с установленным 9-м битом. Его ни с чем не спутаешь. - il-2(24.03.2021 10:13)
- Я немного подумал над своим скороспелым ответом - наверное правильно передавать не один маркер 0x1FF, а два!!! 0x1FF, 0x1FF. Если первый проебется, то второй уж точно примется как надо. - il-2(24.03.2021 14:49)
- Тогда уже символ-разделитель 0xA5 (0xAA, 0x55). - teap0t(24.03.2021 10:19)
- Именно он сейчас и используется вместе с 1 в 9-м бите. То есть там
передается 0x1AA. - my504(24.03.2021 10:49)
- Очень странная идея искать синхронизацию в наборе импульсов ища его
в почти меандре. - Boвa(24.03.2021 15:55 - 16:00)
- Не в совокупности ищи единства, но лишь в единообразии разделения. Это символ-разделитель. - teap0t(24.03.2021 19:49)
- Это чтобы враги, когда будут копировать изделие, долго репу чесали. - SciFi(24.03.2021 15:56)
- Очень странная идея искать синхронизацию в наборе импульсов ища его
в почти меандре. - Boвa(24.03.2021 15:55 - 16:00)
- Именно он сейчас и используется вместе с 1 в 9-м бите. То есть там
передается 0x1AA. - my504(24.03.2021 10:49)
- Только ловить его придётся не уартом, а руками и/или таймером. - SciFi(24.03.2021 10:16)
- Да нет, как написал выше, 0xFF даст искомую паузу в потоке, на
которой обязательно произойдет frame error, если приемник не в
фазе. Если успеть сбросить ошибку во время стопового бита,
заработает. 0xFF очень хорошая идея! Можно не вводить паузы с таким
синхро-символом. - Nikolay_Po(24.03.2021 10:23)
- А не 0х00 даст frame error? - Toчкa oпopы(24.03.2021 11:19)
- FERR не сбрасывается. FERR=!stop_bit - это просто информационный бит. Сбрасывать нужно оверран (OERR), но это совсем другое. - my504(24.03.2021 10:47)
- А, ну да. Ловко. - SciFi(24.03.2021 10:23)
- Да нет, как написал выше, 0xFF даст искомую паузу в потоке, на
которой обязательно произойдет frame error, если приемник не в
фазе. Если успеть сбросить ошибку во время стопового бита,
заработает. 0xFF очень хорошая идея! Можно не вводить паузы с таким
синхро-символом. - Nikolay_Po(24.03.2021 10:23)
- Как решение "малой кровью" - можно передавать в качестве стартового
маркера 0xFF с установленным 9-м битом. Его ни с чем не спутаешь. - il-2(24.03.2021 10:13)
- Спасибо, один шар в лузу "так делать нельзя"... ))) Если честно, то
обнаружив сие, я почувствовал себя идиотом. Никогда с таким не
сталкивался. - my504(24.03.2021 09:58)