Charakterystyka mikrokontrolerów

Podobne dokumenty
Charakterystyka mikrokontrolerów. Przygotowali: Łukasz Glapiński, Mateusz Kocur, Adam Kokot,

Charakterystyka mikrokontrolerów

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Kurs Elektroniki. Część 5 - Mikrokontrolery. 1/26

MIKROKONTROLERY I MIKROPROCESORY

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

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

Wstęp Architektura... 13

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Technika Mikroprocesorowa

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

Interfejsy szeregowe TEO 2009/2010

Szkolenia specjalistyczne

WPROWADZENIE Mikrosterownik mikrokontrolery

System mikroprocesorowy i peryferia. Dariusz Chaberski

Komunikacja z urzadzeniami zewnętrznymi

Wykład Mikroprocesory i kontrolery

2. Architektura mikrokontrolerów PIC16F8x... 13

MIKROKONTROLERY - MAGISTRALE SZEREGOWE

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:

MAGISTRALE MIKROKONTROLERÓW (BSS) Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

Mikroprocesory i Mikrosterowniki

Komunikacja w mikrokontrolerach. Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

Schemat blokowy procesora rdzeniowego ATmega16. Głównym zadaniem JC jest zapewnienie poprawnego i szybkiego wykonywania programu.

Wykład Mikrokontrolery i mikrosystemy Cele wykładu:

Wstęp. Opis ATMEGA128 MINI MODUŁ VE-APS-1406

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

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

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Architektura komputerów. Układy wejścia-wyjścia komputera

Zastosowania mikrokontrolerów w przemyśle

43 Pamięci półprzewodnikowe w technice mikroprocesorowej - rodzaje, charakterystyka, zastosowania

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Mikrokontroler AVR ATmega32 - wykład 9

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

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

Mikroprocesory i Mikrosterowniki

Mikrokontrolery w systemach pomiarowo sterujących

Wykład 3 Technologie na urządzenia mobilne. Mgr inż. Łukasz Kirchner lukasz.kirchner@cs.put.poznan.pl

Współpraca procesora z urządzeniami peryferyjnymi

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

Cyfrowe układy scalone

ZL30ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

Architektura komputerów

Organizacja typowego mikroprocesora

Systemy na Chipie. Robert Czerwiński

Rok akademicki: 2013/2014 Kod: EEL s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Komunikacja w mikrokontrolerach Laboratorium

Wykład 2. Mikrokontrolery z rdzeniami ARM

Elementy składowe systemu komputerowego

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

Arduino dla początkujących. Kolejny krok Autor: Simon Monk. Spis treści

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

Cyfrowe układy scalone

Cyfrowe układy scalone

Systemy uruchomieniowe

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

Komunikacja w mikrokontrolerach. Wydział Elektroniki Mikrosystemów i Fotoniki Piotr Markowski


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

USB interface in 8-bit microcontrollers PIC18F family manufactured by Microchip.

Instrukcja Użytkownika

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

Systemy wbudowane Mikrokontrolery

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

Wykorzystanie standardu JTAG do programowania i debugowania układów logicznych

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

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

Procesory Blackfin. Część 1

MODUŁ UNIWERSALNY UNIV 3

Maszyny liczace - rys historyczny

Architektura komputera

Laboratorium mikroinformatyki. Szeregowe magistrale synchroniczne.

Systemy Wbudowane. Arduino, AVR. Arduino. Arduino. Arduino. Oprogramowanie. Mikrokontroler. Mikrokontroler Platforma Arduino. Arduino IDE: Arduino C:

KOMPUTEROWE SYSTEMY POMIAROWE

ZL16AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168

LEKCJA TEMAT: Zasada działania komputera.

Magistrala I 2 C. Podstawy systemów mikroprocesorowych. Wykład nr 5 Interfejsy szeregowe c.d.

SAIA PROGRAMOWALNY STEROWNIK PLC

ZL5PIC. Zestaw uruchomieniowy dla mikrokontrolerów PIC16F887

Mikrokontrolery czyli o czym to będzie...

Spis treści. Wykaz ważniejszych skrótów Wprowadzenie Rdzeń Cortex-M Rodzina mikrokontrolerów XMC

Interfejs urządzeń peryferyjnych

E-TRONIX Sterownik Uniwersalny SU 1.2

Hardware mikrokontrolera X51

Mikroprocesory i mikrosterowniki

2. Budowa układów procesorowych rodziny TMS320C

2. PRZERZUTNIKI I REJESTRY

Transkrypt:

Charakterystyka mikrokontrolerów 1. Historia powstania Pierwszym mikrokontrolerem (a nie mikroprocesorem) był wyprodukowany pod koniec roku 1972 przez Texas Instruments procesor TMS1000. Łączył on w sobie prosty 4-bitowy mikroprocesor, 1KB pamięci ROM i 32B pamięci RAM w jednym chipie. Układ był niedrogi i pokazał liczne zastosowania w systemach łączonych. 2. Co to jest mikrokontroler (skład, architektury) Jest to komputer jednoukładowy - pojedynczy układ scalony, w którego skład wchodzi mikroprocesor, pamięć RAM i pamięć programu oraz układy Wejścia/Wyjścia. Określenie mikrokontroler pochodzi od głównego obszaru zastosowań, jakim jest sterowanie urządzeniami elektronicznymi. Mikrokontroler stanowi użyteczny i całkowicie autonomiczny system mikroprocesorowy, który z reguły nie musi współpracować z układami zewnętrznymi. Wśród wbudowanych w mikrokontroler bloków funkcjonalnych można znaleźć: procesor (CPU), pamięć danych (RAM, EEPROM), programu (Flash, EPROM, EEPROM), kontrolery przerwań i układy peryferyjne takie jak: timery/liczniki, kontrolery transmisji równoległej lub szeregowej (UART, SPI, I2C, USB, CAN, 1-Wire itp.), przetworniki A/C lub C/A czy zegar czasu rzeczywistego RTC itp. ARCHITEKTURA VON NEUMANA Odznaczała się wspólną magistralą dla danych i instrukcji. Wszystko dostępne jest w jednej przestrzeni adresowej. Program wykonywalny może zmienić sam siebie jeżeli potraktuje obszar instrukcji jako dane, a po przetworzeniu zacząć je wykonywać. Architektura zastosowana w układach z rdzeniem ARM7. ARCHITEKTURA HARVARDZKA Była odpowiedzią na w.w. architekturę i w odróżnieniu od niej zakładała oddzielenie pamięci danych od pamięci rozkazów. Dodatkowo prostsza budowa gwarantuje lepszą wydajność. Zmodyfikowana architektura harwardzka, znana również jako architektura mieszana, łączy w sobie cechy architektury harwardzkiej i architektury von Neumanna. Oddzielone zostały pamięci danych i rozkazów, lecz wykorzystują one wspólne magistrale danych i adresową. Przykładem rodziny w architekturze Harvardzkiej są 8 bitowe układy AVR. Zmodyfikowana architektura Harvardzka obecna jest w układach z rdzeniem ARM9. 3. Pamięci W mikrokontrolerach możemy wyróżnić kilka podstawowych typów pamięci. W zależności od zastosowania określić możemy pamięć programu zawierająca kod programu, tablice stałych, wektor przerwań. Posiadamy również pamięć danych, która przechowuje zmienne oraz stos

przechowujący adres powrotny przy obsłudze przerwań i wybrane przez programistę wartości (najczęściej przy obsłudze podprogramów/funkcji). Ze względu na budowę i architekturę wyróżnić możemy pamięci: EPROM przechowujące dane, które po wyłączeniu zasilania nie mogą ulec skasowaniu. Pamięci EPROM dzielimy ze względu na możliwości zapisu na: OTP (One Time Programable) w obudowach bez okienka kwarcowego, przez co możliwe jest tylko jednokrotne zaprogramowanie pamięci, EPROM (Erasable Programable ROM) z możliwością kasowania zawartości promieniami ultrafioletowymi i wprowadzania nowej zawartości za pomocą zewnętrznego programatora. Pamięci EEPROM odróżnieniu od pamięci EPROM może być kasowana tylko przy użyciu prądu elektrycznego. Liczba zapisów i kasowań jest ograniczona, w zależności od typu i producenta pamięci wynosi do 100,000 cykli. W przypadku ROM (Read Only Memory) pogramowanie zawartości pamięci następuje w procesie produkcyjnym i nie może być przeprowadzone przez użytkownika. FLASH (Bulk Erasable Non-Volatile Memory) pozalają na kasowanie zawartości i programowanie bezpośrednio w systemie mikroprocesorowym. Są udoskonaleniem pamięci EEPROM, w których poprzez zastosowanie buforowania zwiększono szybkość zapisu do pamięci. Jest to pamięć nieulotna. SRAM (Static Random Access Memory) czyli statyczne pamięci RAM. Są to pamięci o krótkich czasach dostępu, prostsze w obsłudze przez jednostkę centralną, ale droższe. Jest to pamięć ulotna. FRAM (Ferroelectric RAM) pamięci ferroelektryczne, nieulotne pamięci, które są dopiero wprowadzane na rynek. Zaletami są bardzo mały pobór energii, wysoka szybkość działania i duża trwałość (nieograniczona liczba cykli zapisu/odczytu), wadą natomiast duży rozmiar komórki. Standardowo, współczesne mikrokontrolery wyposażone są w kilka do kilkudziesięciu kb pamięci RAM, od kilku kb do kilkuset kb pamięci programu Flash oraz opcjonalnie od kilkuset B do kilku kb pamięci EEPROM. 4. Urządzenia peryferyjne i obsługa przerwań UART/USART - (Universal A/Synchronous Receiver and Transmitter), układ scalony używany do a/synchronicznego przekazywania i odbierania informacji, konwersja pomiędzy szeregową a równoległą formą transmisji, używany powszechnie z takimi standardami jak RS-232, RS-422 or RS-485 (różnica pojawia się jedynie w poziomach logicznych sygnału). Format danych oraz prędkośc transmisji są konfigurowane programowo, poziom sygnalizacji elektrycznej jak i same metody sygnalizacji obsługiwane są przez specjalny

zewnętrzny obwód sterujący. Używany zwykle do komunikacji pomiędzy mikrokontrolerem, komputerem (przez port szeregowy) lub innym urządzeniem np. drugim mikrokontrolerem. Bajt pamięci rozkładany jest na pojedyńcze bity i przesyłany do odbiornika praca synchroniczna - kolejne bity są przesyłane w takt zegara sterującego transmisją, praca asynchroniczna, odbiornik USART wykrywa początek ramki transmisyjnej, a następnie próbkuje sygnał wejściowy przez ustalony przez obie strony czas trwania bitu. I2C - (Inter-Integrated Circuit: pośredniczący pomiędzy układami scalonymi) wynaleziona przez Philipsa szeregowa, dwukierunkowa magistrala służąca do przesyłania danych w urządzeniach elektronicznych, umozliwia podłączenie peryferiów o wolnej prędkości do mikrokontrolerów, płyt głównych, telefonów oraz innych urządzeń. dwie, dwukierunkowe linie (pull up): dane - SDA, zegar - SCl; typowe napięcia +5V/+3,3V, możliwość stosowanie innych, logika dodatnia 7bitowa przestrzeń adresowa, 112 węzłów komunikacji 16 adresów rezerwowych powszechne prędkości 110 kbps lub low mode 10kbps, dla systemów wbudowanych 400 kbit/s Fast mode, 1 Mbit/s Fast mode plus i 3.4 Mbit/s High Speed mode, rozrózniamy węzły: Master (rozprowadza sygnał zegara i adresuje slavy) i Slave w dowolnej ilości, mozliwa zmiana ról, SPI - (Serial Peripheral Interface Bus) opatentowany przez Motorole szeregowy interfejs urządzeń peryferyjnych jeden z najczęściej używanych interfejsów komunikacyjnych pomiędzy systemami mikroprocesorowymi a układami peryferyjnymi takimi jak: przetworniki ADC/DAC, pamięci EEPROM, pamięci flash, karty MMC/SD/ itp. komunikacja full-duplex pomiędzy masterem i slavami cztery linie sygnałowe SCLK: Serial Clock (output from master); MOSI; SIMO: Master Output, Slave Input (output from master); MISO; SOMI: Master Input, Slave Output (output from slave); SS: Slave Select (active low, output from master).

Timer/Counter - cyfrowy licznik zliczający w przód/tył z daną ustawioną częstotliwością, wyzwalający pożądaną akcję, przerywający prace procesora gdy osiągnie pożądaną wartość. Porty równoległe - wejścia/wyjścia ogólnego przeznaczenia do sterowania zazwyczaj diodami LED lub obsługi przycisków, zwykle istnieje możliwość włączenia wewnętrznych rezystorów podciągających. ADC/DAC - (analog/digital converter) układ służący do zamiany sygnału analogowego (ciągłego) na reprezentację cyfrową. Działanie przeciwne do wyżej wymienionego wykonuje przetwornik cyfrowo-analogowy (DAC). W mikrokontrolerach dostępnych jest zwykle kilka przerwań zewnętrznych wyzwalanych stanem lub zboczem oraz przerwania pochodzące od wbudowanych peryferiów. Dzięki temu możliwe jest podjęcie odpowiedniej akcji np. po zakończeniu konwersji ADC lub odebraniu znaku przez UART. W momencie wystąpienia przerwania procesor skacze do adresu podanego w tabeli, aby obsłużyć przerwanie, pod adresem tym powinien znajdować się skok w inne miejsce w pamięci, w którym znajduje się procedura obsługi przerwania. Powrót wykonywany jest za pomocą specjalnej instrukcji RETI, która dodatkowo włącza z powrotem przerwania. 5. Programowanie (ładowanie programu) i bity konfiguracyjne Szeregowe w systemie (w przypadku rodziny AVR) - programowanie pamięci Flash za pomocą interfejsu SPI, mikrokontroler programowany jest w działającym urządzeniu docelowym, jest to tzw. ISP (In System Programming), wymagane są 3 linie (MISO, MOSI, SCK) oraz Reset i zasilanie. Programowanie za pomocą bootloadera - dostępne tylko w układach, które same mają możliwość modyfikacji programu. Program może byc przesyłany szeregowo za pomocą interfejsu UART lub USB w zależności od implementacji. Istnieją systemy, w których mikrokontroler ma możliwośc aktualizacji własnego oprogramowani przez łącze bezprzewodowe np. ZigBee. Rówoległe - rzadko stosowane w praktyce ze względu na wygode, jest metodą ratunku w przypadku zablokowania programowania szeregowego (w rodzinie AVR), JTAG - interfejs początkowo wykorzystywany w produkcji do sprawadzania poprawności montażu układów scalonych, z czasem producenci zaczęli wykorzystywać go także do programowania i debugowania układów mikroprocesorowych oraz układów FPGA.

Program i zawartość pamięci EEPROM może być zabezpieczona przed nieuprawnionym odczytem. Dokonać tego można zapisując odpowiednie Lock Bity w momencie, gdy miktrokontroler jest w trybie programowania. Oprócz tego, można skonfigurować odpowiednio inne parametry pracy układu np. źródła sygnału zegarowego, ustawienia kalibracyjne, stan watchdoga, dostępność interfejsów do programowania itp., w zależności od stosowanego układu możliwości są różne. 6. Programowanie (tworzenie kodu) Zazwyczaj kod tworzony jest w języku C, wraz z ewentualnymi wstawkami w Asemblerze. Cechy: zwykle brak systemu operacyjnego, bezpośredni dostęp do sprzętu, mała wydajność, konieczna kontrola zależności czasowych.