Suplement do ćwiczeń z mikrokontrolerami AVR
Transkrypt
Suplement do ćwiczeń z mikrokontrolerami AVR
Materiały pomocnicze: Uruchamianie wyświetlacza LCD na mikrokontrolerach AVR taktowanych częstotliwością 8 MHz 1. Konfiguracja mikrokontrolera do pracy z częstotliwością 8 MHz Na niektórych egzemplarzach zestawów uruchomieniowych ZL3AVR nie moŜna uzyskać prawidłowej pracy wyświetlacza LCD ze sterownikiem HD44780 pomimo napisania poprawnego programu. Wynika to z rozrzutu parametrów wyświetlaczy - niektóre z nich nie chcą poprawnie pracować przy częstotliwości taktowania mikrokontrolera równej 16 MHz. Na podstawie przeprowadzonych prób stwierdzono, Ŝe dla częstotliwości 8 MHz wspomniany efekt nie występuje. W celu uzyskania właśnie takiej częstotliwości naleŜy odpowiednio skorygować plik makefile i plik programu dla mikrokontrolera. W pierwszym przypadku naleŜy zmienić linie: # Processor frequency. F_CPU = 16000000 na: # Processor frequency. F_CPU = 8000000 W tekście programu dla mikrokontrolera naleŜy zmienić treść makra: #define F_CPU 16000000 na #define F_CPU 8000000 Liczby występujące powyŜej to częstotliwość taktowania mikrokontrolera w [Hz]. 2. Ustawianie bitów konfiguracyjnych mikrokontrolera Za pomocą programu Kammami AVR programmer naleŜy odpowiednio zaprogramować bity konfiguracyjne mikrokontrolera (zakładka Fuse bits). Częstotliwość taktowania konfiguruje się za pomocą bitów CKSEL/SUT. Domyślnie procesor jest taktowany zewnętrznym rezonatorem kwarcowym 16 MHz - rys. 1. NaleŜy wybrać z dostępnych moŜliwości opcję wewnętrzny oscylator RC 8 MHz (Int. RC Osc. 8 MHz; …) – rys. 2. Ustawienia naleŜy zatwierdzić wciskając przycisk Write. Mikrokontroler jest przygotowany do pracy z częstotliwością 8 MHz. 3. Transmisja danych portem szeregowym przy częstotliwości 8 MHz Częstotliwość taktowania mikrokontrolera i szybkość transmisji danych poprzez port szeregowy są ze sobą związane. Przy obniŜeniu tego pierwszego parametru naleŜy równieŜ skorygować szybkość transmisji danych. 2 Rys. 1. Okno programu Kammami AVR programmer, zakładka Fuse bits CKSEL/SUT - Zewnętrzny rezonator kwarcowy o wysokiej częstotliwości Rys. 2. Okno programu Kammami AVR programmer, zakładka Fuse bits CKSEL/SUT - Zewnętrzny rezonator kwarcowy o wysokiej częstotliwości W pliku konfiguracyjnym części sprzętowej naleŜy zmienić linie: #define UART_BAUD 19200 // prędkość transmisji danych 3 na #define UART_BAUD 9600 // prędkość transmisji danych Wersja z dn. 11.04.2011 r.