Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Как показано в рисунке 1, MSP430F1 121 ведет последовательный обмен данными с другой системой, в нашем случае с ПК, по RS232 интерфейсу. Обмен данными между системами ведется по трехпроводному кабелю, который содержит линии: передачи, приема и общую. При этом используется протокол 8N1: каждое сообщение содержит 8 информационных бит, не содержит бита проверки на четность и заканчивается одним стоп-битом. Для поддержки других протоколов нужно внести небольшие изменения в функционал UART. Описываемый UART использует нулевой регистр захвата-сравнения (CCR0), один из трех доступных, и таймер timer_A3. CCR0 используется для обнаружения старт-бита, задания скорости обмена данными и захвата данных. Два незадействованных регистра захвата-сравнения могут использоваться для других задач. Регистр CCR0 был выбран совершенно произвольно. Для реализации UART могут быть выбраны любые регистры CCRx. При помощи функции выбора периферийных задач линии Р1.1 и Р2.2 портов общего назначения подключены к CCRO timer_A3. Линия Р1.1 выбрана для передачи информации, а Р2.2 - для приема. Периферийные задачи для выводов назначены при помощи регистров P1SEL и P2SEL Поскольку вывод Р1.1 используется для передачи, то он должен быть настроен на работу в качестве выхода. Осуществляется это установкой соответствующего бита регистра установка направленности линий портов (P1DIR). Р2.2 должен работать как вход. По умолчанию у микроконтроллеров семейства MSP430 все выводы настроены на работу в режиме входа. Timer_A3 настроен на работу в непрерывном режиме, что позволяет использовать его одновременно и для других функций. Регистр R4 используется в качестве буфера приемопередатчика (RXTXData). Регистр R5 (BitCnt) используется в качестве регистра подстройки смещения. Регистры R4 и R5 были выбраны произвольно. Для выполнения этих функций могут быть использованы любые регистры вычислительного ядра или ячейки ОЗУ.
В режиме приема нулевой управляющий регистр захвата-сравнения (CCTLO) сначала устанавливает модуль CCR0 в режим захвата данных по спадающему фронту сигнала на входе Р2.2. Спадающий фронт на этом входе указывает на начала старт-бита. После того, как UART установлен в режим приема данных, от вычислительного ядра не требуется никаких ресурсов для обеспечения готовности принятия кодового слова. Ресурсы вычислительного ядра будут востребованы только после
Дата публикования: 2014-11-18; Прочитано: 266 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!