Должна ли последовательная связь происходить со стандартной скоростью передачи данных?

Я подключаю микроконтроллер ATMega8 к своему ПК с помощью преобразователя последовательного интерфейса в USB. Программа, которую я использую для получения данных, - это MATLAB. Обязательно ли мне отправлять и получать данные со стандартной скоростью передачи данных для последовательной связи? Могу ли я отправлять и получать, скажем, 208333 бит / с? Я использую программирование AVR на отправляющей стороне и MATLAB на принимающей стороне, и мне интересно, почему я должен использовать стандартные скорости передачи данных?

Я использую кабель DKU-5, модифицированный для последовательного преобразователя в Windows 8.


person Analon    schedule 16.10.2013    source источник
comment
Контроллеры на обоих концах, вероятно, поддерживают только стандартные скорости передачи данных. Зачем нужно что-то нестандартное?   -  person lurker    schedule 16.10.2013
comment
Что ж, кристалл 5 МГц, который я купил, к сожалению, не поддерживает высокие стандартные скорости передачи данных, и мне нужны высокие скорости для связи здесь ...   -  person Analon    schedule 16.10.2013
comment
Обратитесь к документации по набору микросхем в преобразователе последовательного интерфейса в USB, чтобы узнать, что принимает этот конец.   -  person lurker    schedule 16.10.2013
comment
В нем говорится, что скорость передачи данных превышает 120 кбит / с. Диспетчер устройств указывает максимальную стандартную скорость 128000. Но 128000 имеет большую ошибку. Могу ли я использовать меньшее нестандартное значение?   -  person Analon    schedule 16.10.2013
comment
Ничего не повредит, если вы попробуете   -  person lurker    schedule 16.10.2013


Ответы (1)


Последовательный порт RS-232 работает с неявными часами. Приемник в преобразователе USB синхронизируется с часами передатчика, определяя середину стартового бита, а затем дискретизирует последующие биты с однобитовой синхронизацией позже. Чтобы выбрать биты посередине и ограничить влияние джиттера и временного сдвига (Асинхронная связь ) приемник обычно дискретизирует сигнал на скорости, в 16 раз превышающей фактическую скорость передачи данных. Это означает, что приемник может генерировать тактовый сигнал с этой скоростью путем деления своего генератора на целое число для достижения частоты дискретизации.

Генераторы обычно выбираются с учетом делителей, которые обеспечивают стандартные тактовые частоты с низким уровнем ошибок, особенно на более высоких скоростях. Выбор нестандартной скорости может привести к большой ошибке от желаемой скорости, увеличивая вероятность ошибок передачи.

Классический способ (который здесь может быть неприменим) - использовать синхронный канал, который не требует передискретизации и позволяет увеличить скорость. Это, вероятно, проще всего реализовать в вашем случае, вставив в устройство USB-ведомое устройство. Тогда это будет поддерживать тактовую частоту хоста, которая будет составлять 1 Мбит / с, что намного быстрее, чем любое асинхронное соединение.

Сайт, более ориентированный на оборудование, может дать вам лучшие ответы.

person Pekka    schedule 16.10.2013