Hardware mikrokontrolera X51

Podobne dokumenty
Architektura mikrokontrolera MCS51

Architektura mikrokontrolera MCS51

MIKROPROCESORY architektura i programowanie

Przerwania w architekturze mikrokontrolera X51

MIKROPROCESORY architektura i programowanie

Instytut Teleinformatyki

TECHNIKA MIKROPROCESOROWA

Start Bity Bit Stop 1 Bit Par Rys. 1

Instytut Teleinformatyki

4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD.

Systemy wbudowane. Wprowadzenie. Wprowadzenie. Mikrokontroler 8051 Budowa

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe

architektura komputerów w 1 1

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

4 Transmisja szeregowa, obsługa wyświetlacza LCD.

ĆWICZENIE 5. TEMAT: OBSŁUGA PORTU SZEREGOWEGO W PAKIECIE KEILuVISON WYSYŁANIE PORTEM SZEREGOWYM

Mikrokontroler Intel dr inż. Wiesław Madej

Technika mikroprocesorowa I Wykład 4

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

Ćwiczenie 9 Częstościomierz oparty na µc 8051(8052)

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Informacje ogólne o układzie 8051.

Zerowanie mikroprocesora

Pracownia elektryczno-elektroniczna klasa IV

Programowanie mikrokontrolerów. 8 listopada 2007

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe

Instytut Teleinformatyki

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

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

Układy czasowo-licznikowe w systemach mikroprocesorowych

Cyfrowe układy scalone c.d. funkcje

Wbudowane układy komunikacyjne cz. 1 Wykład 10

Programowanie w językach asemblera i C

2. Architektura mikrokontrolerów PIC16F8x... 13

Ćwiczenie 2 Transmisja a szeregowa µc 8051(8052) - PC

MIKROPROCESORY architektura i programowanie

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

Część I - Sterownik przerwań 8259A i zegar/licznik 8253

Wbudowane układy peryferyjne cz. 1 Wykład 7

Układy Cyfrowe projekt. Korekcja jasności obrazów w 24-bitowym formacie BMP z użyciem funkcji gamma. Opis głównych modułów sprzętowych

Mikroprocesor Operacje wejścia / wyjścia

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

Układ transmisji szeregowej AVR

Architektura komputerów

Ćwiczenie 6 Komunikacja z komputerem (łącze RS232)

Praktyka Techniki Mikroprocesorowej. Mikrokontroler ADuC834

Techniki mikroprocesorowe i systemy wbudowane

MIKROKONTROLERY I MIKROPROCESORY

Opis mikrokontrolera AT89C2051

Ćw. 5. Obsługa portu szeregowego UART w mikrokontrolerach 8051.

Wstęp Architektura... 13

INTERFEJSY SYSTEMÓW ELEKTRONICZNYCH. Interfejsy klasy RS

Uproszczony schemat blokowy zespołu 8-bitowego timera przedstawiono na rys.1

XMEGA. Warsztaty CHIP Rok akademicki 2014/2015

Uniwersalny asynchroniczny. UART Universal Asynchronous Receier- Transmiter

Organizacja typowego mikroprocesora

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

interfejs szeregowy wyświetlaczy do systemów PLC

Ćwiczenie 30. Techniki mikroprocesorowe Programowanie w języku Asembler mikrokontrolerów rodziny '51

Sprzężenie mikrokontrolera (nie tylko X51) ze światem zewnętrznym cd...

LICZNIKI PODZIAŁ I PARAMETRY

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

Obszar rejestrów specjalnych. Laboratorium Podstaw Techniki Mikroprocesorowej Instytut Mikroelektroniki i Optoelektroniki PW

dokument DOK wersja 1.0

Przerwania, polling, timery - wykład 9

Układy czasowo-licznikowe w systemach mikroprocesorowych

Programowanie mikrokontrolerów 2.0

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

Architektura komputerów

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

Komunikacja w mikrokontrolerach Laboratorium

Programowany układ czasowy APSC

. Rodzaje transmisji sygnału i RS-232

Komunikacja w mikrokontrolerach Laboratorium

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM

Wbudowane układy peryferyjne cz. 2 Wykład 8

ARCHITEKTURA PROCESORA,

Mikrokontroler 80C51

Aby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.

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-"

Cyfrowe układy scalone

Interfejsy. w systemach pomiarowych. Ryszard J. Barczyński, 2016 Materiały dydaktyczne do użytku wewnętrznego

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Metody obsługi zdarzeń

1.2. Architektura rdzenia ARM Cortex-M3...16

Programowany układ czasowy

Struktura i działanie jednostki centralnej

SML3 październik

Badanie modułów wewnętrznych mikrokontrolera 311[07].Z4.02

Instytut Teleinformatyki

Sprzężenie mikrokontrolera (nie tylko X51) ze światem zewnętrznym lokalne interfejsy szeregowe

Programowanie mikrokontrolerów. 15 stycznia 2008

Podstawowe elementy układów cyfrowych układy sekwencyjne. Rafał Walkowiak

Mikrokontroler AVR ATmega32 - wykład 9

Lista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne

Problematyka sieci miejscowej LIN

Interfejsy systemów pomiarowych

LABORATORIUM ELEKTRONIKI I TEORII OBWODÓW

Układy czasowe / liczniki (timers/counters)

Transkrypt:

Hardware mikrokontrolera X51 Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego

Hardware mikrokontrolera X51 (zegar) Mikrokontroler zawiera wewnętrzne układy zegara systemowego Jeden cykl maszynowy trwa zwykle 12 okresów zegara Są odmiany procesora wykonujące cykl w ciągu 1..2..3..4..6 okresów... Wtedy zwykle możliwe jest przełączanie prędkości (dodatkowy SFR) Klasyczna maksymalna częstotliwość zegara wynosi 12 Mhz...... lecz współczesne wersje są często dużo szybsze

Hardware mikrokontrolera X51 (porty równoległe) Mikrokontroler zawiera cztery ośmiobitowe porty równoległe P0..P3. Porty są dwukierunkowe. Dostęp do portów następuje poprzez odczyt/zapis odpowiednich SFR. Czytanie z portu jest możliwe po uprzednim zapisie jedynki. Porty P0 i P2 są używane także do dostępu do pamięci zewnętrznej. W takim wypadku praktycznie nie da się ich używać w innym celu.

(połączenie pamięci zewnętrznej)

(porty równoległe) W niektórych wersjach mikrokontrolerów porty mają wyrafinowane charakterystyki elektryczne. Możliwy jest odczyt i zapis portu jedną instrukcją. Warto się zastanowić jakie będą skutki wykonania takiej instrukcji. Czytają one zatrzask portu, a nie linię wejściową! Struktura portu P1 (najprostszego)

(liczniki) Mikrokontrolery x51 zawierają dwa 16 bitowe uniwersalne liczniki, T0 i T1, które mogą być indywidualnie zaprogramowane jako zegary lub liczniki zdarzeń. Przy pracy jako zegary zliczają pewien okres czasu (a właściwie pewną liczbę okresów zegara systemowego), a następnie generują przerwanie. Przy pracy jako liczniki odliczają określoną liczbę opadających zboczy sygnału na wejściu, a następnie generują przerwanie.

(liczniki) W podstawowym 16 bitowym trybie pracy rejestry liczników TLx i THx są połączone kaskadowo. Ustawienie bitu TRx uruchamia licznik poprzez przyłączenia źródła sygnału na wejście TLx. Przepełnienie TLx powoduje inkrementowanie THx. Przepełnienie THx powoduje ustawienie wskaźnika TFx i ewentualne wygenerowanie przerwania. Rejestry THx i TLx mogą być pisanie i czytane, ale na okres trwania tej operacji trzeba wyzerować TRx, w przeciwnym wypadku rezultaty mogą być nieokreślone. Bit C/Tx wybiera źródło sygnału dla licznika. Gdy jest równy 0 będzie to zegar systemowy podzielony przez 12. Równy 1 wybierze wejście zewnętrzne.

(liczniki tryb pracy 0) Tryb pracy 0 (określony przez bity M0x i M1x) oznacza licznik ośmiobitowy THx poprzedzony preskalerem modulo 32 zrealizowanym na niższych pięciu bitach rejestru TLx.

(liczniki tryb pracy 1) Tryb pracy 1 (określony przez bity M0x i M1x) jest podobny do trybu 0, ale jest 16 bitowy i używa pełnego rejestru TLx.

(liczniki tryb pracy 2) Tryb pracy 2 (określony przez bity M0x i M1x) jest trybem ośmiobitowym. Rolę licznika pełni rejestr TLx, automatycznie ładowany przy przepełnieniu zawartością rejestru THx.

(liczniki tryb pracy 3) Tryb pracy 3 (określony przez bity M0x i M1x) konfiguruje T0 jako dwa liczniki ośmiobitowe. Drugi licznik może przy tym pełnić tylko rolę zegara. Licznik T1 jest w tym trybie zatrzymany.

(port szeregowy) Port szeregowy może pracować w trybie synchronicznym (tryb 0)... lub dupleksowym asynchronicznym (tryby 1, 2 i 3). Dane odbierane posiadają jednopoziomowy bufor. Dane wysyła się i odbiera za pomocą rejestru SBUF. Zapis bajtu do SBUF powoduje jego wysłanie. Bajt odebrany jest dostępny poprzez odczyt rejestru SBUF.

(port szeregowy tryb 0) Dane są nadawane i odbierane przez linię RxD. Linia TxD nadaje przebieg zegara taktującego transmisję. Kierunek transmisji określa rejestr SCON. 8 bitów danych jest nadawanych/odbieranych w poczynając od LSB. Prędkość jest stała, równa 1/12 zegara systemowego.

(port szeregowy tryb 0) Nadawanie Odbieranie

(port szeregowy tryb 1) 10 bitów jest nadawanych przez TxD (lub odbieranych przez RxD). Są to: bit startu (logiczne 0), osiem bitów danych i bit stopu (logiczna 1). Przy odbiorze bit stopu trafia do RB8 w rejestrze SCON Prędkość transmisji jest określona przez licznik T1

(port szeregowy tryb 1) Nadawanie Odbieranie

(port szeregowy tryb 2) 11 bitów jest nadawanych przez TxD (lub odbieranych przez RxD). Są to: bit startu (logiczne 0), dziewięć bitów danych i bit stopu (logiczna 1). Dziewiąty bit znajduje się na pozycjach TB8/RB8 w rejestrze SCON. Bit stopu jest ignorowany. Prędkość transmisji wynosi 1/32 lub 1/64 zegara systemowego.

(port szeregowy tryb 2) Nadawanie Odbieranie

(port szeregowy tryb 3) 11 bitów jest nadawanych przez TxD (lub odbieranych przez RxD). Są to: bit startu (logiczne 0), dziewięć bitów danych i bit stopu (logiczna 1). Dziewiąty bit znajduje się na pozycjach TB8/RB8 w rejestrze SCON. Bit stopu jest ignorowany. Prędkość transmisji jest programowana za pomocą licznika T1.

(port szeregowy programowanie prędkości) W trybach 1 i 3 prędkość portu szeregowego jest programowana licznikiem T1. Prędkość wynosi V=(2^(SMOD) / 32)*(1/(okres T1) Najczęściej używa się T1 w trybie 2 automatycznie przeładowywanego timera. Wtedy V=(2^(SMOD) / 32) * (Fosc / (12*(265 TH1))) Warto dobrać rozsądną częstotliwość kwarcu oscylatora...

(port szeregowy programowanie prędkości)

(port szeregowy uwagi na marginesie) Współczesne wersje μc 8051 mają często porty szeregowe o jeszcze bardziej złożonej strukturze... Są wersje X51 umożliwiające osobne definiowanie prędkości TxD i RxD. Niektóre wersje X51 umożliwiają automatyczne wykrywanie adresu. Często kontrolery X51 zawierają wiele portów szeregowych. Porty szeregowe miewają wiele wyrafinowanych możliwości...

(przerwania) Przerwanie jest automatycznym wywołaniem specjalnej procedury. Procedura ta jest umieszczona pod odpowiednim, stałym adresem. Obsługa przerwania kończy się specjalnym rozkazem RETI. Procedura przerwania musi zadbać o zachowanie używanych zasobów. Często używa się do tego celu alternatywnych banków rejestrów.

(przerwania)

(przerwania zgłoszone jednocześnie) W przypadku jednoczesnego zgłoszenia przerwań pierwsze obsługiwane jest... przerwanie o wyższym priorytecie... w ramach jednego priorytetu:

(generacja przerwania) Przerwanie wygeneruje wywołanie procedury obsługi (LCALL) gdy NIE jest wykonywana procedura obsługi o jednakowym lub wyższym priorytecie, wykonywana instrukcja RETI, wykonywany dostęp do rejestru EI lub IP. Przerwanie niekiedy czyści flagi, które je wygenerowały: nie są czyszczone flagi portu szeregowego. flagi przerwań zewnętrznych są czyszczone gdy aktywowane są zboczem.

(generacja przerwania) Wygenerowany przez przerwanie rozkaz wywołania (LCALL)... zachowuje na stosie aktualny licznik programu (dwa bajty)... przekazuje sterowanie pod odpowiedni adres wektora przerwań. Rozkaz RETI... odtwarza licznik programu... informuje o zakończeniu obsługi. Przerwanie IE0 TF0 IE1 TF1 RI oraz TI Adres wektora 0003h 000Bh 0013h 001Bh 0023h

(kontrola zasilania)

(kontrola zasilania) By wejść w tryb idle lub power down należy - wpisać jedynkę na odpowiedniej pozycji rejestru PCON Wyjście z trybu idle jest możliwe poprzez przerwanie lub reset Wyjście z trybu power down jest możliwe tylko przez reset