Файл: Семейство микроконтроллеров MSP430X1XX, руководство пользователя (2004).pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.06.2025
Просмотров: 2795
Скачиваний: 1
MSP430x1xxFamily
Флаг прерывания при приеме USART0. URXIFG0 устанавливается, |
||||
URXIFG0* |
Бит 6 |
когда в U0TXBUF принят полный символ. |
||
0 |
– Прерывание не ожидается |
|||
1 |
– Прерывание ожидается |
|||
Биты 5-0 |
Эти биты могут быть использованы другими модулями. См. спра- |
|||
вочные данные конкретного устройства. |
||||
* Не используется в устройствах MSP430x12xx. См. IFG2 для битов флагов прерывания USART0 MSP430x12xx.
IFG2, регистр 2 флагов прерываний
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|||||||
UTXIFG1 |
URXIFG1 |
UTXIFG0** |
URXIFG0** |
|||||||||||
rw•1 |
rw•0 |
rw•1 |
rw•0 |
|||||||||||
Биты 7-6 |
Эти биты могут использоваться другими модулями. См. справоч- |
|||||||||||||
ные данные конкретного устройства. |
||||||||||||||
Флаг прерывания при передаче USART1. UTXIFG1 устанавливает- |
||||||||||||||
UTXIFG1 |
Бит 5 |
ся, когда U1TXBUF пуст. |
||||||||||||
0 |
– Прерывание не ожидается |
|||||||||||||
1 |
– Прерывание ожидается |
|||||||||||||
Флаг прерывания при приеме USART1. URXIFG1 устанавливается, |
||||||||||||||
URXIFG1 |
Бит 4 |
когда в U1RXBUF принят полный символ. |
||||||||||||
0 |
– Прерывание не ожидается |
|||||||||||||
1 |
– Прерывание ожидается |
|||||||||||||
Биты 3-2 |
Эти биты могут использоваться другими модулями. См. справоч- |
|||||||||||||
ные данные конкретного устройства. |
||||||||||||||
Флаг прерывания при передаче USART0. UTXIFG0 устанавливает- |
||||||||||||||
UTXIFG0** |
Бит 1 |
ся, когда U0TXBUF пуст. |
||||||||||||
0 |
– Прерывание не ожидается |
|||||||||||||
1 |
– Прерывание ожидается |
|||||||||||||
Флаг прерывания при приеме USART0. URXIFG0 устанавливается, |
||||||||||||||
URXIFG0** |
Бит 0 |
когда в U0RXBUF принят полный символ. |
||||||||||||
0 |
– Прерывание не ожидается |
|||||||||||||
1 |
– Прерывание ожидается |
|||||||||||||
** Только в устройствах MSP430x12xx
248 |
Библиотека Компэла |
|
MSP430x1xxFamily
Периферийный интерфейс USART, режим SPI
Универсальный синхронно/асинхронный приемопередающий (USART) периферийный интерфейс поддерживает два последовательных режима в одном аппаратном модуле. Этот раздел описывает работу синхронного периферийного интерфейса или режима SPI. USART0 реализован в устройствах MSP430x12xx, MSP430x13xx и MSP430x15x. В дополнение к USART0, в устройствах MSP430x14x и MSP430x16x реализован второй идентичный USART модуль – USART1.
14.1.Введение в USART: режим SPI
Всинхронном режиме USART подключает MSP430 к внешней системе через три или четыре вывода: SIMO, SOMI, UCLK и STE. Режим SPI выбирается, когда бит SYNC установлен, а бит I2C очищен.
Режим SPI имеет следующие возможности:
•7-ми или 8-разрядные данные
•Работа SPI с 3-мя или 4-мя выводами
•Режимы ведущий или ведомый
•Независимые сдвиговые регистры передачи и приема
•Раздельные буферные регистры передачи и приема
•Выбираемая полярность UCLK и управление фазой
•Программируемая частота UCLK в режиме ведущего
•Независимая возможность прерывания для приема и передачи
На рис. 14-1 показан USART, сконфигурированный в режиме SPI.
14.2.Функционирование USART: режим SPI
Всинхронном режиме последовательные данные передаются и принимаются множеством устройств с использованием общего тактирования, обеспечиваемого ведущим. Дополнительный вывод STE, управляемый ведущим, необходим для разрешения приема и передачи данных устройством.
Три или четыре сигнала используются для обмена данными через SPI:
•SIMO Вход ведомого, выход ведущего
Режим ведущего: SIMO – линия вывода данных Режим ведомого: SIMO – линия ввода данных
•SOMI Выход ведомого, вход ведущего Режим ведущего: SOMI – линия ввода данных
Режим ведомого: SOMI – линия вывода данных
250 |
Библиотека Компэла |
|
Раздел XIV. |
Периферийный интерфейс USART, режим SPI |
SWRST USPIEx*URXEIE URXWIE |
||||||||||
SYNC= 1 |
||||||||||
FE PE OE BRK |
Управление приемом |
URXIFGx* |
||||||||
Статус приема |
Буфер приема UxRXBUF |
LISTEN |
MM |
SYNC |
||||||
0 |
1 |
1 |
SOMI |
|||||||
RXERR |
RXWAKE |
Сдвиговый режим приемника |
||||||||
1 |
0 |
0 |
||||||||
SSEL1 SSEL0 SP |
CHAR |
PEV |
PENA |
1 |
URXD |
|||||
UCLKI |
00 |
Генератор скорости |
UCLKS |
0 |
||||||
STE |
||||||||||
передачи |
||||||||||
ACLK |
01 |
|||||||||
Прескалер/Делитель UxBRx |
||||||||||
SMCLK |
10 |
|||||||||
SMCLK |
11 |
Модулятор UxMCTL |
UTXD |
|||||||
SP |
CHAR |
PEV |
PENA |
|||||||
WUT |
Сдвиговый режим |
1 |
1 |
SIMO |
||||||
передачи |
||||||||||
TXWAKE |
Буфер передачи UxTXBUF |
0 |
0 |
|||||||
UTXIFGx* |
||||||||||
Управление передачей |
||||||||||
SYNC CKPH CKPL |
||||||||||
SWRST USPIEx* TXEPT |
STC |
UCLK |
||||||||
UCLKI |
Фаза тактирования |
|||||||||
и полярность |
||||||||||
* См. справочное руководство конкретного устройства для определения расположения SPR
Рис. 14-1. Блок-схема USART в режиме SPI
•UCLK Тактирование USART SPI Режим ведущего: UCLK – выход Режим ведомого: UCLK – вход
•STE Разрешение передачи ведомого. Используется в 4-выводном режиме, когда на одной шине может быть много ведущих. Не применяется в 3-выводном режиме.
4-х выводной режим ведущего:
Когда STE имеет высокий уровень, SIMO и UCLK работают как обычно. Когда STE имеет низкий уровень, SIMO и UCLK устанавливаются на направление ввода.
Библиотека Компэла |
251 |
|
MSP430x1xxFamily
4-х выводной режим ведомого:
Когда STE имеет высокий уровень, функционирование RX/TX ведомого отключено и SOMI принудительно устанавливается на направление ввода. Когда STE имеет низкий уровень, функционирование RX/TX ведомого разрешено и SOMI работает как обычно.
14.2.1. Инициализация USART и сброс
USART сбрасывается сигналом PUC или битом SWRST. После PUC бит SWRST автоматически устанавливается, оставляя USART в состоянии сброса. Когда он установлен, бит SWRST сбрасывает биты URXIEx, UTXIEx, URXIFGx, OE, FE и устанавливает флаг UTXIFGx. Бит USPIEx не изменяется битом SWRST. Для работы USART необходимо очистить SWRST. См. также раздел «Модуль USART, режим I2C» для USART0, когда он реконфигурируется из режима I2C в режим SPI.
Примечание: Инициализация и реконфигурирование модуля USART
Для инициализации/реконфигурирования USART необходим следующий процесс:
1)Установить SWRST (BIS.B #SWRST,&UxCTL)
2)Инициализировать все регистры USART установкой SWRST=1 (включая
UxCTL)
3)Включить модуль USART через MEx SFRs (USPIEx)
4)Программно очистить SWRST (BIC.B #SWRST,&UxCTL)
5)Разрешить прерывания (если необходимо) через IEx SFRs (URXIEx и/или UTXIEx)
Невыполнение этих действий может привести к непредсказуемому поведению USART.
14.2.2.Режим ведущего
На рис. 14-2 показан USART в качестве мастера в обеих 3-х и 4-х выводных конфигурациях. USART инициализирует передачу данных, когда данные перемещаются в буфер передачи данных UxTXBUF. Данные UxTXBUF перемещаются в сдвиговый регистр TX, когда сдвиговый регистр TX пуст, инициируя передачу данных на SIMO, начиная со старшего разряда. Данные на SOMI сдвигаются в сдвиговый регистр приема по противоположному тактовому фронту, начиная со старшего разряда. Когда символ принят, принятые данные перемещены из сдвигового регистра RX в буфер принятых данных UxRXBUF, флаг прерывания приема URXIFGx установлен, указывая завершение операции RX/TX.
Установка флага прерывания передачи UTXIFGx указывает, что данные перемещены из UxTXBUF в сдвиговый регистр TX и UxTXBUF готов для поступления новых данных. Это не указывает на завершение операции RX/TX.
252 |
Библиотека Компэла |
|