Laboratorium 4
Transmisja szeregowa poprzez
UART
Cel zajęć:
pisanie i modyfikowanie programów
umożliwiających komunikację
mikrokontrolera z komputerem na
drodze transmisji szeregowej
asynchronicznej,
Korzystanie z przerwań i trybów
obniżonego poboru mocy.
Informacje podstawowe
Trzy typy transmisji szeregowej:
1. Simplex – realizowana w jednym kierunku.
2. Halfduplex – realizowana w obu kierunkach ale nie
jednocześnie
3. Ful-duplex – transmisja w obu kierunkach w tym samym
czasie
Transmisja synchroniczna – równolegle z bitami
informacji przesyłany jest sygnał synchronizujący
w takt którego odbiornik odczytuje stan linii
danych. Sygnał przesyłany może być dodatkową
linią lub zakodowany w przebiegu danych.
Transmisja asynchroniczna – opiera się na
założeniu że odbiornik i nadajnik pracują z tą
samą wcześniej ustaloną częstotliwością,
ponieważ w rzeczywistości są one różne,
transmitowane są tylko małe porcje danych
zwane ramkami.
Transmisja asynchroniczna
pojedynczej ramki
Schemat blokowy portu
USART
Przygotowanie interfejsu UART
do transmisji
Ustawić bit SWRST
Ustalić format ramki i prędkość
transmisji
Odblokować żądany układ
odbiornik/nadajnik po przez ustawienie
odpowiednich bitów w rejestrze MEx
Wyprowadzić USART ze stanu RESET
poprzez wyczyszczenie bitu SWRST
Uaktywnić przerwania w rejestrze IEx
(opcjonalnie)
Zadania do wykonania
A. Stworzyć program ilustrujący transmisję szeregową
asynchroniczną, za pośrednictwem łącza RS232,
między modułem USART0 mikrokontrolera MSP430
a emulatorem terminala pracującym na komputerze
PC. Program ma wysłać wiadomość o treści „Hello!!!
>> wyślij tekst”. Następnie odebrane małe litery
tekstu zamieniać na wielkie i odsyłać do terminala.
Należy ustalić następujące parametry transmisji:
szybkość transmisji – 115200 bodów, format ramki -
8N1, przy konfiguracji modułu zegara:
MCLK=ACLK=LFXT1=8MHz.
B. Zmodyfikować poprzedni program tak, aby odbiór
ramki odbywał się przy wykorzystaniu przerwania
od odbiornika, a w przerwach transmisji
mikrokontroler znajdował się w stanie obniżonego
poboru mocy LPM3. Zmienić parametry transmisji i
format ramki zgodnie z poleceniami prowadzącego.
Wskazówki
1.
Prędkość transmisji:
2.
Procedura przełączania oscylatora
kwarcowego w tryb HF
–
Włącz żądany oscylator lub tryb
–
Wyczyść flagę OFIFG
–
Odczekaj minimum 50 µs
–
Testuj flagę OFIFG, jeśli jest ustawiona
powtarzaj powyższe kroki.
3.
Energooszczędne tryby pracy
mikrokontrolera (LPM0…LPM4)
konfigurowane są za pośrednictwem
rejestru statusu (SR).
1
0
1
_
n
i
i
n
m
UxBR
BRCLK
rate
Baud