Freescale Coldfire i Kinetis od środka

Universal Asynchronous Receiver/Transmitter (UART)

Moduł uniwersalnego transceivera asynchronicznego pozwala na w pełni dupleksową, asynchroniczną komunikację w wielu formatach. Podstawowe cechy tego modułu to:

  • standardowy format NRZ (Non-Return-to-Zero), w wersjach mark i space,
  • obsługa formatu RZI (Return-to-Zero-Inverted) używanego w IrDA 1.4,
  • obsługa protokołu ISO 7816, do komunikacji z kartami chipowymi (smartcard) i SIM (obsługiwane tylko w jednym module UART),
  • 13-bitowa konfiguracja przepływności (baud rate) z dzieleniem przez 32,
  • programowalny 8- lub 9-bitowowe formaty danych,
  • możliwość wyboru kolejności transmisji (od MSB lub LSB),
  • obsługa sprzętowego sterowania przepływem za pomocą sygnałów request to send (RTS) i clear to send (CTS),
  • osobne kolejki FIFO, z możliwością wystawiania żądań DMA, dla nadawania i odbioru (obsługiwane tylko przy dwóch modułach UART).

 

Rys. 34. Schemat blokowy układu logicznego nadajnika UART

Rys. 34. Schemat blokowy układu logicznego nadajnika UART

 

Tab. 14. Zestawienie podstawowych cech modułu UART

Kluczowe cechy Korzyści dla użytkownika
Obsługa protokołu ISO 7816 Możliwość komunikacji z kartami chipowymi (smartcard) oraz kartami SIM
Duża liczba obsługiwanych formatów komunikacji Elastyczność, możliwość implementacji wielu protokołów komunikacji szeregowej
Bufory FIFO z możliwością wystawiania żądań DMA Zmniejszone obciążenie CPU

 

Jeden z modułów UART obsługuje standard ISO 7816, pozwalając na komunikację z kartami chipowymi (smarcard) oraz SIM. Podstawowe właściwości tej funkcji to:

  • obsługa protokołów T=0 i T=1,
  • automatyczna retransmisja pakietów przy otrzymaniu komunikatu o niedostarczeniu (NACK), z programowalnym progiem powtórzeń,
  • obsługa transferów 11 i 12 ETU,
  • wykrywanie początkowego pakietu i automatyczne programowanie parametrów transmisji,
  • praca sterowana przerwaniami, z siedmioma rodzajami specyficznych przerwań ISO-7816:
    • przekroczenie czasu oczekiwania (wait time violated),
    • przekroczenie czasu oczekiwania na znak (character wait time violated),
    • przekroczenie czasu oczekiwania na blok (block wait time violated),
    • wykrycie początkowego znaku (initial charakter detected),
    • przekroczenie progu błędów nadawania (transmit terror threshold exceeded),
    • przekroczenie progu błędów odbioru (receive terror threshold exceeded),
    • przekroczenie czasu ochronnego (guard time violated).

 

Rys. 35. Przebiegi czasowe dla różnych formatów standardu ISO 7816

Rys. 35. Przebiegi czasowe dla różnych formatów standardu ISO 7816

 

Rys. 36. Schemat blokowy układu logicznego odbiornika UART

Rys. 36. Schemat blokowy układu logicznego odbiornika UART

 

UART daje wiele możliwości, jeśli chodzi o rozmiar i format danych oraz ustawienia nadawania i odbioru. Mnogość opcji umożliwia implementację szerokiej gamy różnych protokołów komunikacji szeregowej. Użytkownik może skonfigurować:

  • 8- lub 9- bitowy format danych, z obsługą parzystości wszystkich 9 bitów,
  • rozpoczęcie transmisji od MSB lub LSB,
  • biegunowość wyjścia nadajnika,
  • biegunowość wejścia odbiornika.

 

Rys. 37. Formaty danych UART

Rys. 37. Formaty danych UART

 

O autorze