Перейти к содержанию
    

Перевод бод/сек в бит/сек

Господа... чето меня переклинило...

9600 бод для UART AVR = 12000 бит/сек или ни так я считаю?

1 фрейм есть 1 старт+8датабит+1стоп

 

1) 9600/8бит = 1200 кбайт/сек

2) 1200*(1бит(старт)+1бит (стоп)) = 1200*2 = 2400

3) 9600+2400 = 12000

Или я уже туплю на ночь глядя?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В общем случае Боды и биты в секунду это не одно и то же.

http://ru.wikipedia.org/wiki/%D0%91%D0%BE%D0%B4

Но для UARTа baud rate = 9600 эквивалентно возможной частоте изменения сигнала в линии 9600 раз в секунду. Т.е. изменение состояния линии тактируется битовой частотой 9600 Гц.

Изменено пользователем rezident

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 фрейм есть 1 старт+8датабит+1стоп

 

1 frame = 10 bit

9600 baud /10 bit = 960 frames per second where each frame has 8 bits or 1 byte of data

9600 baud = 960 data bytes per second

Изменено пользователем pitt

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

тобишь халтурно говоря 9600 бод/сек = 9600бит/сек?

вот, короче, я там сам себе напридумывал..... :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

тобишь халтурно говоря 9600 бод/сек = 9600бит/сек?

Неа. Понравилась единица измерения боды в секунду. Каждую секунду скорость

увеличивается на 9600 бод - ускорение, короче......

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

НУ да ну да че то совсем я плохой стал...

вот щя так на трезвую голову подумал - 10 бит во фрейме естественно 9600 и есть 9600 бит сек

с какого ему больше тобыть?

ж-----------

Вот что значит 2 лишние капли валерианки :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

> 9600 бод для UART AVR = 12000 бит/сек или ни так я считаю?

 

Непраильно считаете естессно..

На физическом уровне УАРТа боды равны бит/сек. Т.к. за одно переключение передается один бит.

На канальном же уровне передаваемыми битами считаются только биты полезной информации. И здесь скорость в бит/сек всегда будет меньше чем скорость в бодах, т.к. бит передается меньше чем максимально возможное число переключений в линии, требуемое для передачи бит полезной информации.

 

Примеры:

Скорость 9600 бод - говорит о том, что максимально возможное количество изменений состояния канала - 9600 раз в секунду.

 

Если настроить УАРТ как 8-N-1, то объем фрейма будет 10 переключений (заметьте специально пишу не бит, а именно переключений), где 8 переключений будет отведено под биты данных, а 2 для служебных целей, следовательно скорость в бит/сек будет:

 

9600 бод * (8/10)бит/переключений = 7680бит/сек

 

Если же настроить УАРТ как 7-N-2, то во фрейме будет те же 10 переключений, однако из них служебными будут уже 3, а полезными - 7, скорость в бит/сек будет такой:

 

9600 бод * (7/10)бит/переключений = 6720 бит/сек.

 

И т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

offtopic

defunct в который раз поражаюсь Вашему умению грамотно и доходчиво ответить на поставленный вопрос. :a14:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если настроить УАРТ как 8-N-1, то объем фрейма будет 10 переключений (заметьте специально пишу не бит, а именно переключений), где 8 переключений будет отведено под биты данных, а 2 для служебных целей, следовательно скорость в бит/сек будет:

 

9600 бод * (8/10)бит/переключений = 7680бит/сек

тоесть старт -стоп математически не считаются как кол-во битов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость LordN
тоесть старт -стоп математически не считаются как кол-во битов?
математически - считаются, но только для скорости вообще. в кол-во переданных бит ИНФЫ они не входят.

короче, чтоб не мучиться - биты в секунду делишь на 10 получаешь байты в секунду.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

да как раз, что /10 это понятно...

 

а вообще что обычно подразумевается по умолчанию канальный или физ уровень...

или это лучше оговаривать отдельно?

или все таки проще выражаться в бодрейтах?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а вообще что обычно подразумевается по умолчанию канальный или физ уровень...

Боды это физический и только физический уровень но для синхронного потока или _информационных_ битов асинхронного, поскольку для стоп битов - значения 0.5..1,5..2,5..3,5 тоже имеют место быть :-).

А bit/s это есть некая абстрактно неконкретная единица "измерния" понимаемая как попало :-(. В принципе, единственный смысл ее существования получается, если использовать ее как количественную характеристику ИНФОРМАЦИОННЫХ бит в ряду chars/s и bytes/s которые уже однозначно ассоциируются c информационнй состовляющей асинхронного потока. Поскольку речь идет об асинхронном (битом на порции) потоке, то я вообще-бы никогда не пользовался для bit/s а только количеством информационных блоков chars/s (c указанием размерности посылки) и bytes/s (для восьмибитных).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

тоесть старт -стоп математически не считаются как кол-во битов?

На канальном уровне и выше не считаются.

zltigo верно заметил, для асинхронного потока лучше пользоваться более широкими еденицами измерения скорости передачи информации - char/s, byte/s, тогда не возникнет никакой путаницы.

 

а вообще что обычно подразумевается по умолчанию канальный или физ уровень...

или это лучше оговаривать отдельно?

Наверное лучше всегда оговаривать отдельно. Для УАРТа чаще подразумевается физ уровень, а взять ethernet - там канальный. В ethernet'е, если ничего не путаю, для 10base-xx скорость на физ уровне составляет 20Mbod, при этом на канальном уровне получаем только 10mbit/s и пользователю отображается 10mbit/s.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как я помню БОД это количество элементарных символов за одну секунду. Например в телеграфе один элементарный символ это буква.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...