Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1

Podobne dokumenty
Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

3.2. Zegar/kalendarz z pamięcią statyczną RAM 256 x 8

Politechnika Białostocka Wydział Elektryczny

Układy czasowo-licznikowe w systemach 80x86

Układy czasowo-licznikowe w systemach mikroprocesorowych

WPROWADZENIE Mikrosterownik mikrokontrolery

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

2. Architektura mikrokontrolerów PIC16F8x... 13

Zegar Czasu Rzeczywistego I²C

ad a) Konfiguracja licznika T1 Niech nasz program składa się z dwóch fragmentów kodu: inicjacja licznika T1 pętla główna

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Układy czasowo-licznikowe w systemach mikroprocesorowych

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

Wstęp Architektura... 13

POLITECHNIKA SZCZECIŃSKA WYDZIAŁ ELEKTRYCZNY

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1 MAGISTRALA 1-WIRE

Metody obsługi zdarzeń

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Technika Mikroprocesorowa

Elektronika samochodowa (Kod: ES1C )

MIKROKONTROLERY I MIKROPROCESORY

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1

Politechnika Białostocka

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

Wyłącznik czasowy GAO EMT757

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

ĆWICZENIE 7. Wprowadzenie do funkcji specjalnych sterownika LOGO!

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

Zewnętrzne układy peryferyjne cz. 1 Wykład 12

Politechnika Białostocka

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

Hardware mikrokontrolera X51

Ćw. 9 Przerzutniki. 1. Cel ćwiczenia. 2. Wymagane informacje. 3. Wprowadzenie teoretyczne PODSTAWY ELEKTRONIKI MSIB

Wyjście do drukarki Centronix

Kod produktu: MP01611-ZK

Politechnika Białostocka. Wydział Elektryczny. Katedra Automatyki i Elektroniki. Kod przedmiotu: TS1C

Badanie układów średniej skali integracji - ćwiczenie Cel ćwiczenia. 2. Wykaz przyrządów i elementów: 3. Przedmiot badań

Zapoznanie się z podstawowymi strukturami liczników asynchronicznych szeregowych modulo N, zliczających w przód i w tył oraz zasadą ich działania.

Mikroprocesorowe Liczniki Rejestrujące MLR-2.1 RS-232 Modbus, MLR-2.1 RS-485 Modbus

dokument DOK wersja 1.0

LICZNIKI Liczniki scalone serii 749x

Technika Cyfrowa. Badanie pamięci

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

Opis funkcjonalny i architektura. Modu³ sterownika mikroprocesorowego KM535

Wstęp działanie i budowa nadajnika

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

Sygnały DRQ i DACK jednego kanału zostały użyte do połączenia kaskadowego obydwu sterowników.

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

4. Karta modułu Slave

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej.

PC 3 PC^ TIMER IN RESET PC5 TIMER OUT. c 3. L 5 c.* Cl* 10/H CE RO WR ALE ADO AD1 AD2 AD3 AD4 A05 A06 LTJ CO H 17 AD7 U C-"

WYKORZYSTANIE WEWNĘTRZNYCH GENERATORÓW RC DO TAKTOWANIA MIKROKONTROLERÓW AVR

Mikroprocesory i Mikrosterowniki Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

Programowanie mikrokontrolerów 2.0

Moduł licznika położenia LP 2.

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

2. Zawartość dokumentacji. 1. Strona tytułowa. 2. Zawartość dokumentacji. 3. Spis rysunków. 4. Opis instalacji kontroli dostępu. 3.

Programowanie Mikrokontrolerów

Laboratorium mikroinformatyki. Szeregowe magistrale synchroniczne.

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe

MM05-IIIe. Dokumentacja techniczna

Komunikacja w mikrokontrolerach Laboratorium

PRZEWODNIK PO PRZEDMIOCIE

Ćw. 7: Układy sekwencyjne

Przerwania, polling, timery - wykład 9

PROJEKT I OPTYMALIZACJA STRUKTURY LOGICZNEJ DYDAKTYCZNEGO SYSTEMU MIKROPROCESOROWEGO DLA LABORATORIUM PROJEKTOWANIA ZINTEGROWANEGO

LOW ENERGY TIMER, BURTC

Interface sieci RS485

Podział układów cyfrowych. rkijanka

Politechnika Białostocka

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Cyfrowe Elementy Automatyki. Bramki logiczne, przerzutniki, liczniki, sterowanie wyświetlaczem

Politechnika Białostocka

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Dokumentacja Licznika PLI-2

Mikroprocesory i mikrosterowniki Wydział Elektroniki Mikrosystemów i Fotoniki Politechniki Wrocławskiej Ćwiczenie nr 4

Mikroprocesor Operacje wejścia / wyjścia

Systemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć

STEROWANIE MASZYN I URZĄDZEŃ I. Laboratorium. 4. Przekaźniki czasowe

Mikroprocesorowy miernik czasu

LABORATORIUM ENERGOOSZCZĘDNEGO BUDYNKU

AN ON OFF TEMPERATURE CONTROLLER WITH A MOBILE APPLICATION

StraŜnik mocy RT-MONIT. RAFIKEL Technologie Rafał Maślanka

IC200UDR002 ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO

Moduł monitoringu energii elektrycznej

Wstęp: Interfejs portu równoległego 6821 i portu szeregowego 6850 firmy Motorola

Dokumentacja Techniczna. Konwerter USB/RS-232 na RS-285/422 COTER-24I COTER-24N

Komunikacja w mikrokontrolerach Laboratorium

Szkolenia specjalistyczne

Licznik impulso w CN instrukcja obsługi

Laboratorium Analogowych Układów Elektronicznych Laboratorium 6

Płyta uruchomieniowa EBX51

Transkrypt:

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1 ZEGAR CZASU RZECZYWISTEGO Ćwiczenie 4 Opracował: dr inŝ. Wojciech Wojtkowski w.wojtkowski@we.pb.edu.pl BIAŁYSTOK 2009

Spis treści instrukcji: 1. Cel i zakres ćwiczenia laboratoryjnego... 2 2. Zegar RTC... 2 3. Opis układu PCF8583... 3 4. Komunikacja poprzez I 2 C... 13 6. Wymagania BHP... 15 7. Sprawozdanie... 15 8. Przykładowe zadania... 15 8. Literatura... 16 1. CEL I ZAKRES ĆWICZENIA LABORATORYJNEGO Celem ćwiczenia jest poznanie zasad wykorzystania w projektach cyfrowych układów pełniących rolę zegara czasu rzeczywistego (RTC). W trakcie ćwiczenia wykorzystywany jest popularny układ RTC PCF8583 mogący pracować zarówno w trybie RTC jak i w trybie układu zliczającego impulsy wejściowe. W ramach ćwiczenia studenci projektują wybrane układy mikroprocesorowe wykorzystujące zegar RTC lub układ licznikowy. Dodatkowo wykorzystywana jest w systemie pamięć RAM układu PCF8583 z zasilaniem podtrzymywanym bateryjnie zamiast dodatkowej pamięci EEPROM. Zakres ćwiczenia obejmuje: Poznanie zasad wykorzystania zegara RTC sterowanego poprzez magistralę I 2 C w trybie zegarowym, Poznanie zasad wykorzystania zegara RTC sterowanego poprzez magistralę I 2 C w trybie licznikowym, Wykorzystanie wbudowanej pamięci RAM z zasilaniem podtrzymywanym bateryjnie jako pamięci nieulotnej w systemie, Projektowanie układów mikroprocesorowych współpracujących z cyfrowymi układami RTC. Szczegółowy zakres ćwiczenia ustala prowadzący. 2. ZEGAR RTC Zegar czasu rzeczywistego (ang. Real-Time Clock RTC) jest elementem systemów cyfrowych słuŝącym do odliczania czasu niezaleŝnie od mikroprocesora lub komputera sterującego (jego pracy, zablokowania, wyłączenia), montowany jest we wszystkich 2

komputerach osobistych, serwerach i wielu systemach wbudowanych, sterownikach PLC, a ostatnio coraz częściej nawet w najprostszych systemach cyfrowych. Powszechne stosowanie zegarów RTC stało się moŝliwe dzięki dostępności tanich układów zintegrowanych, których funkcjonalność w dodatku przekracza zwykle funkcjonalność klasycznych układów RTC. Konstrukcja zegara czasu rzeczywistego moŝe być oparta o prosty układ scalony zliczający impulsy z generatora kwarcowego. Są one zasilane z baterii umoŝliwiającej im pracę równieŝ gdy system cyfrowy jest wyłączony. Obecnie instalowane baterie mogą mieć trwałość nawet większą niŝ 10 lat. Układ zegara czasu rzeczywistego moŝe równieŝ generować dla procesora i innych elementów systemu cyfrowego okresowy sygnał który moŝe sterować występowaniem określonych zdarzeń lub obsługa określonych urządzeń. Dzięki przerwaniom zegarowym moŝliwe jest takŝe tworzenie systemów z podziałem czasu pomiędzy poszczególne procesy. NiezaleŜność działania zegara czasu rzeczywistego w systemie często jest wykorzystywana do stworzenia funkcji watchdog. Ostatnio funkcja watchdog jest juŝ realizowana sprzętowo (jest wbudowana) w szerokiej gamie mikrokontrolerów jednoukładowych. 3. OPIS UKŁADU PCF8583 Układ PCF8583 produkowany przez PHILIPS moŝe być przykładem niedrogiego układu RTC o rozszerzonej funkcjonalności. Układ jest wyposaŝony w 256 bajtów pamięci RAM z czego część jest zarezerwowana na rejestry układu licznikowo zegarowego, natomiast część (240 bajtów) moŝe być wykorzystana dowolnie przez uŝytkownika. MoŜe ona pełnić funkcję pamięci EEPROM w systemie, gdyŝ układ RTC zazwyczaj ma ciągłe podtrzymanie zasilania z baterii. Do podtrzymania zasilania układu PCF8583 wystarczy bateria o napięciu 1,5V. Wszelkie adresy i dane są transmitowane do i od zegara poprzez magistralę szeregową I 2 C. Wbudowany rejestr adresowy jest inkrementowany automatycznie po kaŝdej operacji odczytu lub zapisu co jest bardzo wygodne szczególnie przy przesyłaniu kilku bajtów jednocześnie pod kolejne adresy od konkretnego adresu początkowego. Układ jest wyposaŝony w wejście A0 pozwalające na sprzętową modyfikacje adresu urządzenia co daje moŝliwość jednoczesnego podłączenia dwóch PCF8583 do wspólnej magistrali. MoŜe to być uŝyteczne np. w przypadku gdy jeden z układów pracuje w trybie zegara natomiast drugi w charakterze licznika impulsów zewnętrznych. Schemat blokowy układu PCF8583 jest przedstawiony na rysunku 1. Rozkład wyprowadzeń układu PCF8583 jest przedstawiony na rysunku 2. 3

Rys. 1. Schemat blokowy układu RTC PCF8583 Rys. 2. Rozkład wyprowadzeń układu PCF8583 Układ zawiera wewnętrzny oscylator 32,768kHz co pozwala na dokładne odmierzanie czasu niezaleŝnie od pozostałych elementów systemu cyfrowego. Pierwszych 16 bajtów wewnętrznej pamięci RAM (od adresu 00 rys. 1) tworzy adresowalne rejestry specjalnego przeznaczenia. Pierwszy rejestr pełni funkcję rejestru kontrolnego i statusu. Rejestry od adresu 01 do 07 są wykorzystywane przez funkcje zegara, natomiast rejestry od adresu 08 do 0F pełnią rolę rejestrów alarmu i mogą być dowolnie wykorzystane gdy alarmy w systemie nie są obsługiwane. Szczegółowa mapa pamięci ukłądu PCF 8583 pracującego w trybach licznikowym oraz RTC jest przedstawiona na rysunku 3. 4

Rys. 3. Mapa pamięci RAM układu PCF8583 W trybie licznikowym moŝna zliczać impulsy zewnętrzne podawane na wejście OSCO. Maksymalna pojemność licznika w tym trybie wynosi 999999. Gdy rozpoczynana jest procedura odczytu zawartości jednego z rejestrów z lokacji 01-07, zawartość pozostałych jest zatrzaskiwana w rejestrach zatrzaskowych aby umoŝliwić bezbłędne odczytanie pełnej informacji (zegar bezustannie zlicza w tym czasie). Trybu pracy układu dokonuje się poprzez ustawienie bądź wyzerowanie odpowiednich bitów w rejestrze control/status. Poprzez ustawienie bitu Alarm Enable w rejestrze control/status, rejestr kontroli funkcji alarmowych 5

alartm status register jest aktywowany. Alarm control register umoŝliwia ustawienie alarmu o konkretnej dacie, alarmu dziennego, alarmu w danym dniu tygodnia bądź alarmu z timera. Przy kaŝdorazowym wystąpieniu alarmu, bit alarm flag w rejestrze control/status jest ustawiany. Alarm z timera takŝe ustawi ten bit oraz w przypadku przepełnienia dodatkowo zostanie ustawiony bit timer flag. Flagi te pozostaną ustawione aŝ do operacji zapisu rejestru control/status która moŝe je wyzerować. Gdy funkcje alarmu są zablokowane (bit 2 rejestru control/status=0), rejestry z zakresu 08-0F mogą byc wykorzystane jako pamięć RAM dowolnego przeznaczenia. Rejestr control/status znajduje się pod adresem 00 a funkcje poszczególnych bitów są zilustrowane na rysunku 4. W trybie zegarowym, format 12/24 godzinny moŝe zostać wybrany poprzez ustawienie/wyzerowanie najbardziej znaczącego bitu (MSB) w rejestrze hours counter. Format rejestru hours counter jest przedstawiony na rysunku 4. Rok i data są przechowywane w rejestrze 05 (rysunek 6). Dni miesiąca i tygodnie są zliczane w rejestrze 06. Format rejestru 06 jest przedstawiony na rysunku 7. Podczas odczytu poprzez magistralę I 2 C lokacji 05 oraz 06, wartości rok oraz dni tygodnia są maskowane gdy jest ustawiona flaga mask flag w rejestrze control/status. To pozwala na bezpośredni odczyt bieŝącej daty oraz miesiąca. W przypadku trybu zliczania impulsów, liczba impulsów jest przechowywana w formacie BCD. D5 przechowuje najbardziej znaczącą cyfrę, natomiast D0 najmniej znaczącą. Zakresy zliczania poszczególnych liczników są zestawione w tabeli 1. 6

Rys. 4. Rejestr control/status. 7

Rys. 5. Format licznika godzin (hours counter) Rys. 6. Format licznika lat/daty Rys. 7. Format licznika dni/miesięcy 8

Tabela 1. Zakresy zliczania poszczególnych liczników Aby uaktywnić alarmy naleŝy ustawić bit alarm enable w rejestrze control/status (bit 2, adres 00). Gdy bit alarm enable zostanie ustawiony, aktywowany jest rejestr sterujący alarmem: alarm control register (adres 08). Format informacji w rejestrze 08 jest przedstawiony na rysunku 8. Selekcja dni tygodnia w których ma wystąpić alarm jest przedstawiona na rysunku 9. Tryb licznikowy moŝna uaktywnić poprzez ustawienie w control/status następujących bitów: XX0X X1XX. Format rejestru Alarm control w trybie licznikowym jest przedstawiony na rysunku 10. Pojedynczy licznik moŝe zliczać od 0 lub od zaprogramowanej wartości do 99. W momencie przepełnienia, ustawiana jest automatycznie flaga timer flag która musi zostać wyzerowana programowo. Przepełnienie moŝe teŝ spowodować wygenerowanie przerwania (poziom niski na wyjściu INT) jeśli zostanie ustawiony bit 3 rejestru sterującego alarmem. Zarówno w trybie licznikowym jak i czasowym układ PCF8583 moŝe generować przerwanie (poziom niski) sterujące innymi układami w systemie. Schemat logiczny, przedstawiający powiązanie poszczególnych elementów warunkujących wystąpienie przerwania jest przedstawiony na rysunku 12. 9

Rys. 8. Rejestr Alarm Control Register 10

Rys. 9. Selekcja dni tygodnia z alarmem 11

Rys. 10. Rejestr Alarm control register tryb licznikowy 12

Rys. 11. Schemat logiczny układu generacji przerwania 4. KOMUNIKACJA POPRZEZ I 2 C Zasady komunikacji na magistrali I 2 C zostały opisane w instrukcji do ćwiczenia 3. Adres układu RTC jest przedstawiony na rysunku 12. 13

Rys. 12. Adres układu PCF8583 na magistrali I 2 C Wszelkie zasady transmisji opisane w instrukcji do ćwiczenia 3 są aktualne przy pracy z układem PCF8583. Do przeprowadzenia komunikacji i prawidłowego zaprogramowania układu RTC naleŝy wykorzystać mapę pamięci oraz opisy szczegółowe poszczególnych lokacji. Schemat typowego podłączenia ukłądu RTC do magistrali jest przedstawiony na rysunku 13. Rys. 13. Podłączenie 2 układów RTCdo magistrali I 2 C (jeden w trybie RTC, drugi w trybie licznikowym) 14

6. ZAGADNIENIA DO PRZYGOTOWANIA Przed przystąpieniem do wykonania ćwiczenia, student powinien: - zapoznać się z instrukcją, - zapoznać się z dokumentacją układów serii PCF8583 (dostępna na stronie www.nxc.com), - opracować rozwiązanie co najmniej dwóch z zadań podanych na końcu instrukcji. 7. WYMAGANIA BHP Warunkiem przystąpienia do praktycznej realizacji ćwiczenia jest zapoznanie się z obowiązującą w laboratorium instrukcją BHP oraz przestrzeganie zasad w niej zawartych. Konieczne jest takŝe zapoznanie z ogólnymi zasadami pracy przy stanowisku komputerowym. Instrukcje BHP powinny być podane studentom podczas pierwszych zajęć laboratoryjnych i dostępne do wglądu w Laboratorium. 8. SPRAWOZDANIE Sprawozdanie z ćwiczenia powinno zawierać: stronę tytułowa zgodnie z obowiązującym wzorem, cel i zakres ćwiczenia, opis stanowiska badawczego, opis przebiegu ćwiczenia z wyszczególnieniem wykonywanych czynności, algorytm rozwiązania danego problemu, schematy układów, programy w asemblerze (lub w języku wyŝszego poziomu) z komentarzami, komentarze i wnioski Na ocenę sprawozdania będą miały wpływ następujące elementy: zgodność zawartości z instrukcją, algorytm rozwiązania problemu, wnioski i uwagi, terminowość i ogólna estetyka 15

Sprawozdanie powinno być wykonane i oddane na zakończenie ćwiczenia, najpóźniej na zajęciach następnych. Sprawozdania oddane później będą oceniane niŝej. 9. PRZYKŁADOWE ZADANIA Z1. Uruchomić układ RTC w trybie zegara i wyświetlić godzinę i minuty na wyświetlaczu alfanumerycznym LCD Z2. Uruchomić układ RTC w trybie zegara i wyświetlić bieŝącą datę. Wyświetlić słownie dzień tygodnia. Z3. Uruchomić układ RTC w trybie licznika zdarzeń oraz wyświetlić ilość impulsów przy kaŝdorazowym wciśnięciu przycisku microswitch (drgania styków). Zaproponować moŝliwość eliminacji drgań styków przycisku. Z4. Zaprogramować alarm godzinny i sprawdzić działanie. Wykorzystać przerwanie sprzętowe. Z5. Wykorzystać dostępną pamięć RAM układu RTC do przechowywania słownych odpowiedników numerów miesięcy i dni tygodnia. Wyświetlić datę wykorzystując komunikaty przechowywane w RAM. Z6. Połączyć jednocześnie 2 układy RTC do wspólnej magistrali. Jeden z układów uruchomić w trybie zegara, drugi w trybie licznika. Na wejście zliczania połączyć sygnał 1Hz z wyjścia INT pierwszego układu. Wyświetlić wskazanie licznika na wyświetlaczu alfanumerycznym. 8. LITERATURA: L1. Paweł Hadam: Projektowanie systemów mikroprocesorowych, BTC, 2004r. L2. B. Zieliński: Układy mikroprocesorowe, przykłady rozwiązań, Gliwice, Helion, 2002r. L3. Internet - specyfikacja I 2 C Philips Seimconductors. 16