Протокол UART (Universal asynchronous receiver/transmitter) или, по-русски, УАПП (универсальный асинхронный приемопередатчик) — старейший и самый распространенный на сегодняшний день физический протокол передачи данных. Наиболее известен из семейства UART протокол RS-232 (в народе – COM-порт). Это до настоящего времени один из самых актуальных универсальных интерфейсов для связи между собой различных устройств. (прим.перев.)
 

В дальнейшем при проведении актуальных научных экспериментов используя микроконтроллеры msp430, нам нужен ещё один инструмент. Справедливо отметить, что мы могли бы использовать и те инструменты, что уже успели рассмотреть, но это потребовало бы постоянного (или периодического) мониторинга оборудования и ручной записи данных, отображаемых на ЖК-индикаторе. Нам же необходим способ для автоматической регистрации данных, когда они будут отправлены.

Можно определить два пути для этого. У микроконтроллера msp430 имеется на борту флэш-память, которую мы могли бы использовать для записи нескольких измерений. Другой, более сложный путь — это узнать, как может наш launchpad общаться с компьютером через USB. В первом варианте есть определённая элегантность, однако всё равно нам потребуется какой-то способ, чтобы передавать данные из флэш-памяти для удобного их восприятия, то есть, в любом случае нам потребуется подключение к компьютеру.

Поэтому, даже если и произойдёт задержка в разработке устройств на msp430, было бы неплохо познакомиться с последовательным соединением. После освоения этой части мы начнём небольшой эксперимент, для завершения которого нам понадобится несколько дней/недель. За это время мы увидим запись на флэш, научимся общаться с внешними периферийными устройствами и так же то, как собрать вместе все части системы для удалённого сбора данных. Так же мы увидим альтернативные энергетические системы, системы управления и другие классные штуки, что открывают нам микроконтроллеры.

На самом деле не всё так уж мрачно… Последовательная связь не такая уж сложная. В самом деле, большинство устройств msp430 имеют встроенные средства для работы с периферией, что значительно упрощает нашу задачу. Однако, из двух микроконтроллеров, поставляющихся вместе с launchpad, только один содержит периферию для работы с последовательным соединением, у него есть только два режима работы, среди которых явно отсутствует тот, который действительно нам нужен первым, — это — Универсальный Асинхронный Приёмо-Передатчик (UART), Так что, переключимся на то, как реализовать эту функциональность программно.(с последними версиями launсhpad это уже не так актуально, так как один из МК на борту содержит «железный» UART посредством одного из своих портов. — прим.перев.)

К счастью, в этом случае у нас будет реальное преимущество — твёрдое понимание того, как работает последовательный обмен данными поможет нам понять, как обрабатывать и записывать научные данные. По факту мы доберёмся до USI/USCI периферийных устройств, рассмотрим другие режимы коммуникации, такие как SPI и I2C, найдём немного времени, чтобы понять, как эти методы отправляют данные. Конкретная реализация последовательной системы связи называется протоколом. Существуют  различные протоколы, такие как Bluetooth, Wi-Fi и ZigBee, и подобные задачи мы будем применять каждый день!

Вы можете спросить: «почему же мы будем переделывать программный UART? Ведь уже много людей опубликовало об этом статьи и привели много примеров кода.» Я бы ответил, что на это есть две причины. Чем больше философских причин мы познаём, тем лучше мы понимаем, какой из инструментов мы будем использовать для работы. Эйнштейн однажды сказал, что вы действительно ничего не поймёте, пока не сможете объяснить это своей бабушке. По практическим соображениям я ни в одной из статей не приводил объяснений, по каким причинам использовал именно такие, а не иные установки в коде. И здесь у нас аналогичная цель — путём полного разбора программного UART, мы узнаем о том, как работает последовательное соединение, получим хороший пример использования периферии msp430, что будет в нашу пользу в поиске работы. Мы проведём так же тщательную работу, начиная с простой передачи (думаю, технически это должно быть UAT), продолжим простым приёмником (т.н. UAR), и завершим созданием полного UART-приёмо-передатчика. По пути мы немного поговорим о кристаллах, а так же узнаем о калибровке нашего тактового генератора.

Я сделаю всё возможное, чтобы публиковать дальнейшие уроки регулярно, так что в ближайшее время мы сможем перейти к более продвинутым идеям в будущем. Это так же одновременно мотивирует. Эти уроки были разработаны в качестве заметок к моему собственному обучению. Однако в итоге методы и стили оказались несколько непоследовательными, хотя одна из целей этого блога — составить учебный план, который может быть использован для обучения студентов на один семестр курса по микроконтроллерам. После окончания института я соберу, отредактирую и оформлю эти уроки в книгу, которая может быть скачана как раз для этих целей. Полагаю, рассмотренный материал на этой точке приблизительно как раз хорошо соответствует одному семестру обучения, так что целый учебник вполне сможет претендовать на окончательный проект для целого курса. Пока это — больше концепция, которая займёт некоторое время, но будет опираться на знания другой периферии и улучшит уже усвоенные навыки. По факту, некоторые представленные идеи в ходе освоения добавятся к общей сумме знаний, полученных в этом курсе. Итак, приступим к msp430.

продолжение следует…

источник

поделиться:
  • Добавить ВКонтакте заметку об этой странице
  • Мой Мир
  • Facebook
  • Twitter
  • LiveJournal
  • В закладки Google
  • Яндекс.Закладки
  • БобрДобр
  • Сто закладок
  • Blogger
  • Блог Я.ру
  • Одноклассники