Prezentacja mikrokontrolerów i narzędzi firmy ATMEL

Transkrypt

Prezentacja mikrokontrolerów i narzędzi firmy ATMEL
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
•
•
•
•
•
•
http://www.jm.pl
JM Elektronik – kompleksowa obsługa
http://www.jm.pl
Nasi dostawcy
Zaufało nam już wielu producentów elementów elektronicznych
Jesteśmy oficjalnym dystrybutorem następujących firm:
•
•
•
•
•
•
•
Elementy aktywne
ATMEL, HOLTEK, MEMSIC, RECTRON
Przetwornice DC/DC
MURATA PS, AIMTEC
Optoelektronika
KYOCERA, FUTABA, EDISON-OPTO, SHARP, CHIMEI
Elementy bierne
EPCOS, ELNA, HAHN, HITANO, WIMA, PREMO, YAGEO
Złącza i elektromechanika
WIESON, SUYIN
Komputery przemysłowe
IEI TECHNOLOGY, ICP DAS
Drukarki termiczne
CUSTOM ENGINEERING
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
Porównanie objętości kodu
ST five
COP8
PICmicro® 16, 17
68HC16
PICmicro® 18
N
MAXQ
c80xx251
j
e
z
r
o
g
aj
8051
68HC08
78K4
H8/300
SAM8
TMP68HC11
eZ80
aj
le
pi
ej
M16C/1x-3x, M16C/6x
ST7
68HC12
N
MSP430
mega128
0,0 %
http://www.jm.pl
50,0 %
100,0 %
150,0 %
200,0 %
250,0 %
300,0 %
Schemat blokowy AVR
http://www.jm.pl
AVR - kompletny System On Chip
TWI
Analog
Reference
Temperature
Sensor
Hardware
Multiplier
Analog
Comparator
A/D Converter
USART
SPI
EEPROM
OTP Memory
CPU CORE
SRAM
Register File
I/O pins
Brown Out
Detector
Watchdog
Output
Driver
Większość mikrokontrolerów
ma tylko tę część
In
- Circuit
Emulator
Test
Fixtures
http://www.jm.pl
Programming
Circuitry
LCD driver
AVR - kompletny System On Chip
TWI
Temperature
Sensor
USART
SPI
Flash
EEPROM
CPU CORE
SRAM
A/D Converter
Register File
I/O pins
Brown Out
Detector
Reset
Circuitry
Programmable
Watchdog
On
- Chip
Debug
Analog
Reference
Pull- Ups
On Demand
High Current
Outputs
Calibrated
Oscillator
In System
Programming
LCD
Interface
Hardware
Multiplier
Analog
Comparator
JTAG
Boundary
Scan
AVR ma wszystko w jednej strukturze
http://www.jm.pl
LCD driver
Output
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
http://www.jm.pl
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)
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
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)
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.pl
Narzędzia programistyczne
http://www.jm.pl
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
http://www.jm.pl
Zestawy startowe
• STK500
• Interfejs RS232
• Możliwość rozszerzenia
o dodatkowe nakładki
• STK600
• Interfejs USB
• Możliwość rozszerzenia
o dodatkowe nakładki
http://www.jm.pl
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
http://www.jm.pl
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
http://www.jm.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
http://www.jm.pl
Dziękuję za uwagę.
http://www.jm.pl

Podobne dokumenty