12.07.2015 Views

Sterowanie przegubem obrotowym z wykorzystaniem sprzężenia

Sterowanie przegubem obrotowym z wykorzystaniem sprzężenia

Sterowanie przegubem obrotowym z wykorzystaniem sprzężenia

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.6 Komunikacja z użytkownikiemKomunikacja z użytkownikiem odbywa się poprzez terminal znakowy podłączony do portuszeregowego pracującego z prędkością 19200Bd. W sterowniku transmisję szeregową, napoziomie sprzętowym, obsługuje moduł SCI1 mikrokontrolera 56F8323. Konfiguracja modułuSCI1 została przeprowadzona z <strong>wykorzystaniem</strong> Procesor Experta oraz dedykowanego Beanuo nazwie AsynchroSerial. Bean, na poziomie programowym, dostarcza mechanizmów do obsługibuforów cyklicznych FIFO (ang. First In First Out), zarówno dla nadajnika i odbiornika.Dostarcza również metod umożliwiających zapisywanie, odczytywanie oraz sprawdzenie stanubuforów. Rozmiary buforów wynoszą 260 znaków. W sterowniku wykorzystano następującemetody:• AS1 RecvChar — odczytuje znak z bufora odbiorczego,• AS1 SendChar — zapisuje znak do bufora nadawczego,• AS1 GetCharsInRxBuf — sprawdza stan bufora odbiorczego,• AS1 GetCharsInTxBuf — sprawdza stan bufora nadawczego,Funkcje te realizują niskopoziomowy dostęp do portu szeregowego sterownika.Warstwę wyższą, wykorzystywaną w procesie komunikacji, stanowi prosta powłoka. Wyglądpowłoki wzorowany był na powłokach dostępnych w systemach operacyjnych Linux. Powłokarealizuje następujące zadania:• wyświetlenie powitalnego logo,• wyświetlanie znaku zachęty,• obsługa linii komend,• interpretacja wprowadzanych znaków (rozpoznawanie rozkazów),• dostarczenie informacji o rozpoznanym rozkazie (kod rozkazu),• wyświetlanie komunikatów informacyjnych.Powłoka jest w rzeczywistości prostym interpreterem komend. Obsługą rozkazów zajmuje sięprogram główny. W tym czasie powłoka jest wyłączona. Funkcje obsługi powłoki zawarte są wmodule o nazwie shell. Dla użytkownika dostępne są dwie funkcje:• shell — funkcja obsługi powłoki,• shell init — funkcja inicjalizacji powłoki.Powłoka do poprawnej pracy wymaga dwóch zmiennych. Pierwsza, typu Ord str, to tablica zawierającadefinicje rozkazów rozpoznawanych przez powłokę. Kod rozkazu to pozycja w tablicy.Pozycja 0 tablicy zarezerwowana jest na rozkaz wyświetlający powitalne logo. Tablica powinnakończyć się strukturą z polami o wartośći NULL. Druga, typu Shell str, zawiera informacje ostanie powłoki.Definicje struktur znajdują się w pliku nagłówkowym shell.h.42

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!