реклама на сайте
подробности

 
 
> Вопрос по формату кадра UART в ATmega-х, Может быть одновременно и Bit8 и P
Дон Амброзио
сообщение Mar 19 2008, 15:13
Сообщение #1


Местный
***

Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947



Тут с одним поспорили. Он говорит, что по даташифту в кадре UART не может быть более 9 бит. Я же говорю, что может быть 10 (имеется ввиду информационных бит, а не служебных). А он говорит, что нельзя использовать в кадре сразу и Bit8 и бит чётности - P. А я говорю, что можно. Кто прав?

ST + Bit0 + Bit1 + Bit2 + Bit3 + Bit4 + Bit5 + Bit6 + Bit7 + Bit8 + P + SP1 + SP2


--------------------
После устранения бага в программе она стала работать....хуже
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
=GM=
сообщение Mar 19 2008, 21:54
Сообщение #2


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Бит паритета, кстати, это не информационный, а служебный бит.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
Дон Амброзио
сообщение Mar 19 2008, 22:06
Сообщение #3


Местный
***

Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947



Цитата(=GM= @ Mar 20 2008, 00:54) *
Бит паритета, кстати, это не информационный, а служебный бит.

Им и инфу можно передавать меняя нужным образом функцию с "бит чётности" на "бит нечётности" и наоборот


--------------------
После устранения бага в программе она стала работать....хуже
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Mar 20 2008, 07:08
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(Дон Амброзио @ Mar 20 2008, 02:06) *
Им и инфу можно передавать меняя нужным образом функцию с "бит чётности" на "бит нечётности" и наоборот

Можно, док. Так и делают люди, желающие секса.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 20 2008, 07:36
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Dog Pawlowa @ Mar 20 2008, 10:08) *
Так и делают люди, желающие секса.

Ну иногда и не желающие оного, например, для отметки этим девятым битом начал фреймов для простейших микроскопических протоколов, когда SLIPообразные тяжеловаты для перифериных контроллеров а то и вообще чистых железок.
Цитата(=GM= @ Mar 20 2008, 02:08) *
..поскольку бит паритета формируется Исключающим ИЛИ из передаваемых бит данных, следовательно, не является независимой величиной.

Обычно можно перепрограммировать контроллер и для передачи/приема фиксированного бита четности (mark/space).


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Mar 20 2008, 07:48
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(zltigo @ Mar 20 2008, 11:36) *
Ну иногда и не желающие оного, например, для отметки этим девятым битом начал фреймов для простейших микроскопических протоколов...

Не знаю-не знаю. Есть стандартные символы STX, ETX, ETB, ENQ... В трех десятках протоколов с которыми мне приходилось разбираться, никто иначе не делал.
Кстати, применение этих символов регламентируется ENxxxxx, низзя Вам нарушать. smile.gif
"Мне - можно" biggrin.gif Но я так никогда не буду делать.
Да и потеря быстродействия может быть критична.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 20 2008, 11:07
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Dog Pawlowa @ Mar 20 2008, 10:48) *
..никто иначе не делал.

Все когда-то "иначе не делалость", до того, как кто-то взял и сделал. Напомню, что я речь веду не о массированной передаче информации маханием 9 битом через заднепроходное отверстие, а эпизодическом использовании 9 бита для, например, отметок начала фреймов.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Mar 20 2008, 11:53
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(zltigo @ Mar 20 2008, 15:07) *
Все когда-то "иначе не делалость", до того, как кто-то взял и сделал. Напомню, что я речь веду не о массированной передаче информации маханием 9 битом через заднепроходное отверстие, а эпизодическом использовании 9 бита для, например, отметок начала фреймов.

Нет, напоминание не требуется, ув. zltigo smile.gif
А с идеей все равно не соглашусь. Хотя бы из соображений подключения других устройств (платформы, прослушки, конвертеры интерфейсов).


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 20 2008, 12:16
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Dog Pawlowa @ Mar 20 2008, 14:53) *
А с идеей все равно не соглашусь.

Никогда-никогда? smile.gif Например, среди самодельщиков протоколов (меня это не нравится и я даже пару раз с таким подходом резко спорил)очень популярно посылать бинарные фреймы ввиде, например,
<0x55><размер><тело....> при этом при потерях начинается поиск маркера <0x55>, соответственно ложные синхронизации и понеслось... Теперь слека усовершенствуем - посылаем Маркер <0x55> со сбитой четностью получаем УНИКАЛЬНЫЙ разделитель в чисто бинарном потоке - синхронизироваться становится легко, собственно и размер можно исключить. Да, конечно есть, например, классические SLIPобразные протоколы, UUEобразные,..но тем не менее и это вполне жизненный вариант.
Цитата
Хотя бы из соображений подключения других устройств (платформы, прослушки, конвертеры интерфейсов).

Что такое "платформы" не понял, но прослушки будут работать, а конверторы либо должны знать конвертируемые протоколы, либо соответственно накладывать ограничения на то, что конвертирут. Ну
и системы без конверторов тоже имеют право на существование wink.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
=GM=
сообщение Mar 20 2008, 13:02
Сообщение #10


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(zltigo @ Mar 20 2008, 11:07) *
...я речь веду не о массированной передаче информации маханием 9 битом через заднепроходное отверстие, а эпизодическом использовании 9 бита для, например, отметок начала фреймов

В атмелах есть штатная фича Multi-processor Communication mode (MPCM), которую можно использовать для фильтрации входящих фреймов. Установлен 9-й бит, значит принят адрес (начало пакета), не установлен - значит входной байт игнорируется, ждём следующего.
Цитата(zltigo @ Mar 20 2008, 12:16) *
...среди самодельщиков протоколов очень популярно посылать бинарные фреймы в виде, например, <0x55><размер><тело....> при этом при потерях начинается поиск маркера <0x55>, соответственно ложные синхронизации и понеслось...

Уточните, потери чего? Пакета? И из-за чего? Из-за сбоя в линии передачи или недостатка времени на обработку? Если из-за недостатка времени, то плохо спроектирована программа или система, мы это не рассматриваем. Если из-за сбоя в линии, то значит необходим контроль ошибок. А паритет - это и есть нулевой уровень контроля, крайне нежелательно использовать его не по назначению.
Цитата(zltigo @ Mar 20 2008, 12:16) *
Теперь слегка усовершенствуем - посылаем Маркер <0x55> со сбитой четностью получаем УНИКАЛЬНЫЙ разделитель в чисто бинарном потоке - синхронизироваться становится легко, собственно и размер можно исключить

Проблема синхронизации давно решена байт-стаффингом для байт-ориентированных протоколов и бит-стаффингом для бит-ориентированных. Или можно применить MPCM какой-нибудь. Если вопрос серьёзный и/или помеховая обстановка плохая, то ставят синхрослово подходящей длины. Я тут на форуме уже рассказывал, у меня в одном проекте было синхрослово длиной 288 бит. Можно и м-последовательность замутить длиной 4096 или около того, зависит от задачи.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 20 2008, 13:21
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(=GM= @ Mar 20 2008, 16:02) *
Уточните, потери чего? Пакета?

Потери/Искажения Байта.
Цитата
И из-за чего? Из-за сбоя в линии передачи

Да.
Цитата
Если из-за сбоя в линии, то значит необходим контроль ошибок.

Естественно, ну и что?
Цитата
А паритет - это и есть нулевой уровень контроля, крайне нежелательно использовать его не по назначению.

Если-бы ВНИМАТЕЛЬНО прочитали хотя-бы пример, то поняли, что паритет остается совершенно штатно рабочим во время передачи тела фрейма.
Цитата
Проблема синхронизации давно решена байт-стаффингом для байт-ориентированных протоколов и бит-стаффингом для бит-ориентированных.

Это Вы мне? Зачем, если я об этом сам дважды поминал?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Дон Амброзио   Вопрос по формату кадра UART в ATmega-х   Mar 19 2008, 15:13
- - Aesthete Animus   Цитата(Дон Амброзио @ Mar 19 2008, 18:13)...   Mar 19 2008, 16:25
|- - Дон Амброзио   Цитата(Aesthete Animus @ Mar 19 2008, 19...   Mar 19 2008, 16:58
- - SasaVitebsk   В ATMega полный USART, в отличие от 89с51 Цитата• ...   Mar 19 2008, 18:39
|- - =GM=   Цитата(Дон Амброзио @ Mar 19 2008, 22:06)...   Mar 19 2008, 23:08
||- - Дон Амброзио   Цитата(=GM= @ Mar 20 2008, 02:08) Нельзя ...   Mar 20 2008, 07:39
|- - Дон Амброзио   Цитата(Dog Pawlowa @ Mar 20 2008, 10:48) ...   Mar 20 2008, 08:05
||- - Dog Pawlowa   Цитата(Дон Амброзио @ Mar 20 2008, 12:05)...   Mar 20 2008, 08:33
||- - Дон Амброзио   Цитата(Dog Pawlowa @ Mar 20 2008, 11:33) ...   Mar 20 2008, 08:40
||- - Igor26   Цитата(Дон Амброзио @ Mar 20 2008, 11:40)...   Mar 20 2008, 10:36
||- - Дон Амброзио   Цитата(Igor26 @ Mar 20 2008, 13:36) У мен...   Mar 20 2008, 13:14
||- - =GM=   Цитата(zltigo @ Mar 20 2008, 13:49) Тогда...   Mar 20 2008, 15:06
||- - Дон Амброзио   Цитата(=GM= @ Mar 20 2008, 18:06) Вы меня...   Mar 20 2008, 15:18
|||- - Dog Pawlowa   Цитата(Дон Амброзио @ Mar 20 2008, 19:18)...   Mar 20 2008, 15:44
|||- - Дон Амброзио   Цитата(Dog Pawlowa @ Mar 20 2008, 18:44) ...   Mar 20 2008, 15:51
|||- - IgorKossak   Цитата(Дон Амброзио @ Mar 20 2008, 17:51)...   Mar 20 2008, 17:57
||- - zltigo   Цитата(=GM= @ Mar 20 2008, 18:06) вместо ...   Mar 20 2008, 15:31
|- - Dog Pawlowa   Цитата(zltigo @ Mar 20 2008, 16:16) Никог...   Mar 20 2008, 12:47
|- - =GM=   Цитата(zltigo @ Mar 20 2008, 13:21) Если-...   Mar 20 2008, 13:40
|- - zltigo   Цитата(=GM= @ Mar 20 2008, 16:40) Я читал...   Mar 20 2008, 13:49
|- - galjoen   Цитата(=GM= @ Mar 20 2008, 16:40) Но поду...   Mar 20 2008, 14:03
- - Reton   Извеняюсь может не в тему. Вот здесь проект http:/...   Mar 20 2008, 17:10
|- - =GM=   Цитата(Reton @ Mar 20 2008, 17:10) Исполь...   Mar 20 2008, 20:31
- - WHALE   насколько я ничего не понимаю,это как раз использо...   Mar 20 2008, 18:48
- - SasaVitebsk   По-моему, это всё с х51 пошло. Именно там 9 бит по...   Mar 20 2008, 21:10
|- - zltigo   Цитата(SasaVitebsk @ Mar 21 2008, 00:10) ...   Mar 20 2008, 21:47
|- - svs39   Цитата(zltigo @ Mar 21 2008, 01:47) А кон...   Mar 21 2008, 05:21
||- - zltigo   Цитата(svs39 @ Mar 21 2008, 08:21) 1) пом...   Mar 21 2008, 07:14
||- - svs39   Цитата(zltigo @ Mar 21 2008, 11:14) Класс...   Mar 21 2008, 08:58
||- - zltigo   Цитата(svs39 @ Mar 21 2008, 11:58) почему...   Mar 21 2008, 09:22
||- - svs39   Цитата(zltigo @ Mar 21 2008, 13:22) А под...   Mar 21 2008, 09:37
|- - Дон Амброзио   Цитата(zltigo @ Mar 21 2008, 00:47) Лучше...   Mar 21 2008, 05:30
|- - SasaVitebsk   Цитата(zltigo @ Mar 21 2008, 01:47) А кон...   Mar 21 2008, 07:05
|- - Dog Pawlowa   Цитата(zltigo @ Mar 21 2008, 01:47) А кон...   Mar 21 2008, 07:18
|- - Дон Амброзио   Цитата(Dog Pawlowa @ Mar 21 2008, 10:18) ...   Mar 21 2008, 07:43
|- - zltigo   Цитата(Dog Pawlowa @ Mar 21 2008, 10:18) ...   Mar 21 2008, 07:47
- - Igor26   ЦитатаПо-моему, это всё с х51 пошло. Точно так...   Mar 21 2008, 08:05
- - zltigo   Цитата(Igor26 @ Mar 21 2008, 11:05) Точно...   Mar 21 2008, 08:35


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 00:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01547 секунд с 7
ELECTRONIX ©2004-2016