В этой серии статей мы рассматривали различные протоколы последовательной связи, доступные для передачи информации между микроконтроллерами, устройствами, производящими и обрабатывающими данные, а также другими умными устройствами. Каждая статья была посвящена одному из более популярных протоколов, широко используемых в настоящее время, и здесь, в конце этой серии, мы подвели итоги, резюмируя преимущества и недостатки каждого из них. Мы надеемся, что этот ресурс окажется ценным, когда вам в следующий раз потребуется реализовать шину последовательной связи, помогая выбрать наилучший вариант для ваших конкретных обстоятельств.
Протоколы и стандарты последовательной связи замечательны, особенно при использовании множества умных цифровых или смешанных (аналого-цифровых) устройств; популярно внедрение микроконтроллеров. Шины последовательной связи позволяют обмениваться информацией между множеством устройств и осуществлять эту связь, используя гораздо меньшее количество контактов, чем требуется для параллельной связи. Хотя последовательная связь на несколько порядков медленнее параллельного варианта, достигаемые скорости достаточны для большинства интегральных схем и устройств для выполнения необходимого обмена информацией или отправки команд.
UART представляет собой довольно простую асинхронную последовательную связь, которая позволяет работать в полнодуплексном режиме. Это очень полезно для связи между двумя устройствами.
I2C - вероятно, мой любимый вариант. Он позволяет подключать множество устройств, используя всего два контакта. Однако, чем больше устройств вы подключаете, тем сильнее вам нужно снижать скорость передачи данных для поддержания работы. Также нам нравится, что скорость передачи данных может контролироваться аппаратно и что адреса ведомых устройств также устанавливаются аппаратно.
SPI - это быстрый протокол связи, который позволяет подключать множество ведомых устройств, хотя и с увеличением количества контактов. Скорости передачи данных в SPI отличные, и кроме того, он не требует специального согласования импеданса. Мы заметили, что в некоторых приложениях использование терминирующих резисторов может быть полезным.
1-Wire отлично подходит. Он позволяет осуществлять коммуникацию и питание по единственному проводу или дорожке, используя технику паразитного питания. Однако доступно не так много устройств, которые могут его использовать.
CAN очень надежен в условиях высокого уровня электромагнитных помех и обладает хорошей коррекцией ошибок. Неудивительно, что он в основном используется для критически важных приложений.
LIN является вариантом CAN, разработанным как подсистема для CAN. LIN обычно используется для менее критически важных приложений в автомобилях. Он хорош тем, что дешев и прост в использовании. Устройства LIN не используют кварц или резонаторы для тайминга; они используют только простую внутреннюю RC-цепь для снижения стоимости.
RS-485 является стандартом протокола, используемым во многих устройствах, особенно в автоматизации и ПЛК. Это надежный стандарт, который использует одну или две дифференциальные пары. Кроме того, он может достигать относительно высоких скоростей или больших расстояний.
RS-232 - это старый стандарт последовательного протокола, который был чрезвычайно популярен. Хотя современные устройства больше не используют этот стандарт, огромное количество устаревших устройств все еще используют его, поэтому мы считаем, что будет полезно иметь некоторые знания об этом.
Поговорите с экспертом Altium уже сегодня, чтобы узнать больше, или присоединяйтесь к одному из наших Вебинаров по запросу за экспертными советами.