Mikrokontrolery AVR architektura i narzędzia inżynierskie. Marcin Korus, JM Elektronik

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

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


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

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

WPROWADZENIE Mikrosterownik mikrokontrolery

Mikroprocesory i Mikrosterowniki

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

Systemy wbudowane Mikrokontrolery

MIKROKONTROLERY I MIKROPROCESORY

Kurs programowania mikrokontrolerów ARM z rodziny Cortex-M3

Mikroprocesory i Mikrosterowniki

Mikrokontroler AVR ATmega32 - wykład 9

E-TRONIX Sterownik Uniwersalny SU 1.2

Wykład 2. Mikrokontrolery z rdzeniami ARM

Moduł prototypowy.. Leon Instruments. wersja 1.0

Systemy wbudowane. Paweł Pełczyński

Mikroprocesory i mikrosterowniki

2. Architektura mikrokontrolerów PIC16F8x... 13

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

Wykład 3. Przegląd mikrokontrolerów 8-bit: STM8

Wykład 6. Mikrokontrolery z rdzeniem ARM

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41

Programowanie mikrokontrolerów AVR

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

Szkolenia specjalistyczne

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

Funkcje sterowania cyfrowego przekształtników (lista nie wyczerpująca)

Wykład Mikroprocesory i kontrolery

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

Zestaw Startowy EvB. Więcej informacji na stronie:

Systemy na Chipie. Robert Czerwiński

MCAR Robot mobilny z procesorem AVR Atmega32

Wstęp Architektura... 13

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

11.Mikrokomputeryjednoukładowe

Wykład Mikrokontrolery i mikrosystemy Cele wykładu:

Moduł prototypowy X3-DIL64 z procesorem ATxmega128A3U-AU

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

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

ADuCino 360. Zestaw uruchomieniowy dla mikrokontrolerów ADuCM360/361

Układy zegarowe w systemie mikroprocesorowym

ICD Wprowadzenie. Wprowadzenie. Czym jest In-Circuit Debugger? 2. O poradniku 3. Gdzie szukać dodatkowych informacji? 4

System mikroprocesorowy i peryferia. Dariusz Chaberski

System on Chip na miarę S P R Z Ę T

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

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

prowadzący: mgr inż. Piotr Prystupiuk

Charakterystyka mikrokontrolerów

Vinculum scalony host USB

ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S)

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

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)

Procesory Blackfin. Część 1

Język C. Wykład 9: Mikrokontrolery cz.1. Łukasz Gaweł Chemia C pokój 307

ZL5ARM. Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) Kompatybilność z zestawem MCB2100 firmy Keil

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

projekt przetwornika inteligentnego do pomiaru wysokości i prędkości pionowej BSP podczas fazy lądowania;

Embedded Solutions Automaticon Efektywne pomiary i sterowanie przy użyciu systemu wbudowanego MicroDAQ

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Technika Mikroprocesorowa

UNO R3 Starter Kit do nauki programowania mikroprocesorów AVR

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

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

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

Programowanie mikrokontrolerów 2.0

Płytka uruchomieniowa AVR oparta o układ ATMega16/ATMega32. Instrukcja Obsługi. SKN Chip Kacper Cyrocki Page 1

W semestrze letnim studenci kierunku Aplikacje Internetu Rzeczy podczas ćwiczeń z programowania CAD/CAM

Instytut Teleinformatyki

Wykład 7. Architektura mikroprocesorów powtórka

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

Podstawy systemów mikroprocesorowych

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

MMstm32F103Vx. Instrukcja uŝytkownika REV 1.1. Many ideas one solution

Opis przedmiotu zamówienia

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Moduł mikrokontrolera PROTON (v1.1)

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

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

Politechnika Białostocka

Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC2100, które można zastosować w zestawie ZL3ARM.

KATEDRA SYSTEMÓW MULTIMEDIALNYCH SEMINARIUM MULTIMEDIALNE SYSTEMY MEDYCZNE

Szczegółowy opis przedmiotu zamówienia. Część 1 - Laboratoryjny zestaw prototypowy

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

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

MODUŁ UNIWERSALNY UNIV 3

Systemy wbudowane. Wprowadzenie. Struktura. Mikrokontrolery AVR. Wprowadzenie do programowania w C

Uniwersalny adapter dla układów MSP430

System czasu rzeczywistego

KAmduino UNO. Rev Źródło:

Instrukcja użytkownika

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

1. Wstęp Różnice pomiędzy mikrokontrolerami ST7 a ST7LITE Rdzeń mikrokontrolerów ST7FLITE... 15

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

1. Podstawowe wiadomości Możliwości sprzętowe Połączenia elektryczne Elementy funkcjonalne programów...

ZL6ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC213x. Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC213x

Język C dla mikrokontrolerów AVR. Od podstaw do zaawansowanych aplikacji. Wydanie II

Moduł uruchomieniowy mikrokontrolera MC68HC912B32

Transkrypt:

Mikrokontrolery AVR architektura i narzędzia inżynierskie Marcin Korus, JM Elektronik

JM Elektronik nowoczesny dystrybutor Dostawca profesjonalnych elementów elektronicznych od 1990 roku Jeden z największych polskich dystrybutorów elektroniki Jedyny polski dystrybutor Atmela System jakości ISO 9001:2000 Gwarancja powtarzalnej wysokiej jakości elementów Członkostwo w grupie ATeG 16 biur sprzedaży w całej Europie 60 pracowników Dział wsparcia technicznego Szkolenia Pomoc techniczna podczas realizacji projektów Dział produkcji

JM Elektronik kompleksowa obsługa

Nasi dostawcy Zaufało nam już wielu producentów elementów elektronicznych Jesteśmy oficjalnym dystrybutorem następujących firm: Elementy aktywne Przetwornice DC/DC Optoelektronika Elementy bierne Złącza i elektromechanika Komputery przemysłowe Drukarki termiczne ATMEL, HOLTEK, MEMSIC, RECTRON MURATA PS, AIMTEC KYOCERA, FUTABA, EDISON-OPTO, SHARP, CHIMEI EPCOS, ELNA, HAHN, HITANO, WIMA, PREMO, YAGEO WIESON, SUYIN IEI TECHNOLOGY, ICP DAS CUSTOM ENGINEERING

Atmel - sukces to innowacja Atmel (NASDAQ ATML) Na rynku od 1984 Kwatera główna San Jose USA Około 8000 pracowników Pięć fabryk na całym świecie 27 biur projektowych Atmel lider technologii Najbardziej innowacyjny producent układów scalonych Pierwsza pamięć Flash Pierwszy mikrokontroler z pamięcią Flash Najlepsza technologia układów niskomocowych picopower

Praca magisterska i American dream Rok 1992 Studenci Alf Egil Bogen i Vegard Wollan obronili pracę magisterską na Uniwersytecie w Trondheim Rok 1995 początek centrum inżynierskiego Atmel w Trondheim Rok 1997 pierwszy mikrokontroler AVR AT90S1200 Rok 2009 Atmel Norway zatrudnia 180 pracowników Alf Egil Bogen i Vegard Wollan są dyrektorami departamentów odpowiedzialnych za rozwój mikrokontrolerów w firmie Atmel

AVR - lider wśród mikrokontrolerów Programowalna w systemie pamięć FLASH i EEPROM jest to pierwszy na świecie mikrokontroler w pełni programowalny w systemie (FLASH i EEPROM) Architektura zaprojektowana dla języków wysokiego poziomu AVR jest jedynym mikrokontrolerem dedykowanym dla programów pisanych w językach wysokiego poziomu (HLL ang. High Level Language), a w szczególności dla języka C Interfejs JTAG pierwsze 8-bitowce z interfejsem JTAG Możliwość zmiany zawartości pamięci FLASH w locie AVR jest pierwszym mikrokontrolerem mogącym przeprogramować swoją własną pamięć FLASH w czasie wykonywania programu AVR Studio darmowe oprogramowanie dostępne ze strony www.atmel.com

Mikrokontroler RISC Architektura RISC z listą rozkazów CISC prosty zestaw instrukcji zarówno dla assemblera jak i kompilatorów C 32 rejestry robocze wszystkie rejestry bezpośrednio połączone z ALU Liniowa przestrzeń adresowa Wykonywanie rozkazów w jednym takcie zegarowym na jeden takt przypada jedna instrukcja przy oscylatorze 20MHz daje 20MIPS w jednym takcie wynik operacji wpisywany do rejestrów skąd pobrane zostały argumenty niski pobór mocy Architektura harvardzka szybki dostęp do pamięci Wsparcie dla operacji arytmetycznych 16- i 32-bitowych

Gęstość kodu Do 50% mniejsza objętość kodu W porównaniu z innymi mikrokontrolerami 8-bitowymi mniejsza objętość kodu to nie tylko oszczędność Flash ale mniejsze zużycie prądu Pełna kontrola wielkości kodu Tryby adresowania dedykowane dla języka C Liniowa przestrzeń adresowa Prosty do przeniesienia kod w postaci gotowych procedur Time-to-Market Łatwość pisania kodu

Gęstość kodu Zestaw instrukcji projektowany z dostawcą kompilatora IAR Systems pierwsze projekty na AVR powstały przed zakończeniem prac nad architekturą i listą rozkazów Aktywny udział dostawcy kompilatora podczas prac nad architekturą Potencjalne przeszkody i ograniczenia dla języków HLL zostały usunięte 3 data pointery X, Y, Z operacje zapisu z post- i preinkrementacją Auto Increment/Decrement Example: Kod w C: unsigned char *var1, *var2; *var1++ = *--var2; Wygenerowany kod Assemblera: LD R16,-X ST Z+,R16

Porównanie objętości kodu ST five COP8 PICmicro 16, 17 68HC16 PICmicro 18 MAXQ c80xx251 Najgorzej 8051 68HC08 78K4 H8/300 SAM8 TMP68HC11 ez80 M16C/1x-3x, M16C/6x ST7 68HC12 MSP430 mega128 Najlepiej 0,0 % 50,0 % 100,0 % 150,0 % 200,0 % 250,0 % 300,0 %

Schemat blokowy AVR

AVR - kompletny System On Chip Temperature Sensor Analog Reference TWI Hardware Multiplier Analog Comparator A/D Converter USART SPI OTP Memory CPU CORE SRAM Register File I/O pins EEPROM Brown Out Detector Output Driver Watchdog Większość mikrokontrolerów ma tylko tę część In- Circuit Emulator Programming Circuitry Test Fixtures LCD driver

AVR - kompletny System On Chip TWI USART SPI Temperature Sensor Hardware Multiplier Analog Comparator A/D Converter Flash CPU CORE Register File EEPROM SRAM I/O pins Brown Out Detector Reset Circuitry Programmable Watchdog On- Chip Debug JTAG Analog Reference Boundary Scan Pull- Ups On Demand High Current Outputs Calibrated Oscillator In System Programming LCD Interface Output Driver AVR ma wszystko w jednej strukturze LCD driver

Wszystko na pokładzie Wbudowana pamięć Flash/RAM/EEPROM Sprzętowa mnożarka Wbudowany oscylator RC Timery 8- i 16-bitowe z funkcją Capture/Compare Przetworniki ADC z programowalnym stopniem wzmocnienia Komparatory analogowe Interfejsy komunikacyjne USART (DALI) SPI (Serial Peripheral Interface) TWI (Two Wire Interface) kompatybilny z I2C USI (Universal Serial Interface) CAN USB Układy nadzoru Watchdog z autonomicznym oscylatorem Brown-Out Detector Power-On Reset

Debugowanie programu Debugowanie kontrola wykonywanego programu z poziomu C i assemblera praca krokowa, pułapki... dostęp do pamięci mikrokontrolera Flash, EEPROM, RAM, podgląd zmiennych Możliwość debugowania wszystkich nowych AVR interfejs JTAG w dużych mikrokontrolerach w mniejszych interfejs debugwire dowolne napięcie zasilania i częstotliwość debugwire jednoprzewodowy interfejs do debugowania nie jest to układ ROM monitor funkcja dostępna w mikrokontrolerach do 16kB (+mega168) JTAG pełny interfejs JTAG funkcja dostępna we wszystkich mega AVR (poza rodziną megax8)

Technologia picopower Kluczowe elementy śpiący BOD (Brown Out Detector) zasilanie 1.8V ulepszony oscylator kwarcowy 32kHz zminimalizowany prąd upływności odłączanie układów cyfrowych na wejściach analogowych odłaczanie niewykorzystanych peryferii bramkowanie sygnału zegarowego próbkowany odczyt pamięci Flash Technologia picopower oznacza redukcję zużycia mocy nawet o 50% Funkcjonalnie kompatybilne z układami nie-picopower Obecnie najbardziej energooszczędna technologia wśród mikrokontrolerów

TinyAVR naprawdę znaczy wielki #1 w integracji układów peryferyjnych Cechy układów TinyAVR Obudowy 6 32 pinów Pamięć Flash 1 8 kb Zalety rodziny TinyAVR ADC ze stopniem wzmacniacza High Speed PWM (64MHz) Zintegrowany EEPROM Wewnętrzny oscylator RC debugwire Układy nadzorujące Technologia picopower Układy z zasilaniem 0.9V

MegaAVR ogromne możliwości Ogromne możliwości dla projektantów Cechy układów MegaAVR Obudowy 32 100 pinów Pamięć Flash 4 256 kb Zalety rodziny MegaAVR Interfejsy komunikacyjne (USART, SPI, TWI) Łatwość migracji między układami ADC ze stopniem wzmacniacza High Speed PWM (64MHz) Zintegrowany EEPROM Wewnętrzny oscylator RC Real Time Clock JTAG Układy nadzorujące Technologia picopower

ASSP AVR do zadań specjalnych ASSP Application Specific Standard Product Zintegrowany sterownik paneli LCD Układy ładowania akumulatorów Smart Battery AVR dla aplikacji energoelektronicznych Sterowanie silników Stateczniki dla lamp jarzeniowych Interfejs CAN dla motoryzacji Interfejs USB (Device i Host OTG)

Xmega kolejna generacja AVR Układy Xmega dedykowane dla aplikacji 8 i 16 bitowych 8 bitowy rdzeń Druga generacja picopower Zasilanie od 1.6V 20% mniejsze pobór prądu Zwiększona wydajność 32 MIPS Kontroler DMA Event System Ulepszone peryferia Rozbudowana część analogowa Crypto Engine Duża liczba interfejsów

Nowości w układach Xmega Pamięci Flash 16kB 256kB Obudowy 44 100 pinów Kontroler zewnętrznej pamięci SDRAM Adresowanie do 128Mb Nowe przetworniki ADC Prędkość 2MSps (najszybszy konkurent 1MSps) Rozdzielczość 12 bitów Przetwornik DAC Sprzętowy układ kryptograficzny AES z kluczem 128 bit DES z kluczem 56 bit Priorytetowy system przerwań Ogromna ilość interfejsów 8xUSART, 4xSPI, 4xTWI, IrDA Unifikacja peryferii Łatwość pisania kodu

Event System Autonomiczna sieć połączeń między peryferiami Peryferia określają kiedy generować Event Przepełnieni timera, zmiana pinu, wynik ADC Kolejne peryferia reagują na Event Inkrementowanie timera, strat transmisji SPI, start ADC Zmniejszenie ilości przerwań odciążenie CPU Przyśpieszenie reakcji na zdarzenia System pracuje bez udziału rdzenia Pozostaje aktywny w stanie Idle

Narzędzia programistyczne

AVR Studio Zintegrowane środowisko programistyczne Edycja kodu Assembler i C Debugowanie kodu Symulator On Chip Debug Współpraca z narzędziami sprzętowymi Wsparcie dla kompilatora GCC Darmowe

Zestawy startowe STK500 Interfejs RS232 Możliwość rozszerzenia o dodatkowe nakładki STK600 Interfejs USB Możliwość rozszerzenia o dodatkowe nakładki

Programatory i debuggery AVRISPmkII Pogramator ISP AVRDragon Programator ISP, JTAG, równoległy Debugger JTAG i dwire (do 32kB Flash) JTAGICEmkII Programator ISP, JTAG, PDI Debugger JTAG, dwire, PDI AVRONE! Programator ISP, JTAG, PDI Debugger JTAG, dwire, PDI, Nexus Class 3

Koniecznie zajrzyj! Noty katalogowe, przykładowe aplikacje, instrukcje obsługi, FAQ www.atmel.com/products/avr/ www.atmel.com/products/avr/applications.asp www.avrtv.com www.avrfreaks.net forum dyskusyjne przykładowe projekty akademia AVR Kompilatory GNU GCC (darmowy) IAR Code Vision Image Craft Newsletter JM - zapisz się już teraz Zakupy detaliczne www.seguro.pl

Kilka prawd Inżynierowie używają języka C Bascom nie jest narzędziem inżyniera Oryginalne narzędzia nie są drogie Język angielski nie jest językiem obcym Wasz sukces zależy od was

Dziękuję za uwagę.