Mikrokontrolery i ich zastosowania

76
Mikrokontrolery i ich zastosowania Wstępne uwagi

Transcript of Mikrokontrolery i ich zastosowania

Page 1: Mikrokontrolery i ich zastosowania

Mikrokontroleryi ich zastosowania

Wstępne uwagi

Page 2: Mikrokontrolery i ich zastosowania

Wstępny program wykładu:

• Układy sterowania;układy programowalne.• System binarny i heksadecymalny.• Mikroprocesor i mikrokontroler - podobieństwa i różnice.• Charakterystyka przykładowego mikrokontrolera na przykładzie

układu z rodziny HC05 (Motorola/Freescale).• Sposoby pisania programu dla mikrokontrolera, narzędzia

programowe i sprzętowe.• Sprzęganie mikrokontrolera z urządzeniami zewnętrznymi.

Page 3: Mikrokontrolery i ich zastosowania

Układ sterowania -podstawowe pojęcia

• Układ o stałym algorytmie działania:działanie układu określone jest przezbudowę układu; każdorazowa zmianarealizowanego zadania wymagaprzebudowy całego układu.

WEJ WYJ

"Sztywny"algorytm dzia lania

Page 4: Mikrokontrolery i ich zastosowania

Układ programowalny• Sposób działania określony jest poprzez

algorytm umieszczony w pamięci układuWEJ WYJ

a lgorytm dz ia lan ia(p rogram )

P AMIĘĆPROGRAMU

Modyfikacja działania U.P.nie wymaga zmiany jegostruktury!

Pierwsze przykłady - krosnamechaniczne (XIX w.);Większe rozpowszechnienie- dopiero po wynalezieniumikroprocesora (lata 70-teXX w.).

Page 5: Mikrokontrolery i ich zastosowania

System (kod) dziesiętny

Używany w życiu codziennym, podstawą systemu jestliczba 10

Np. 1895 = 1*10^3+8*10^2+9*10^1+5*10^0

Do wyrażenia dowolnej liczby naturalnej potrzeba 10wartości ze zbioru {0,1,2,...,9}.

Liczby zapisane w systemie dziesiętnym często oznaczanesą przyrostkiem DEC.

System bardzo niedogodny do stosowania w technicecyfrowej!

Page 6: Mikrokontrolery i ich zastosowania

System (kod) binarny(dwójkowy)

Podstawą tego systemu (kodu) jest liczba 2. Liczbyzapisane w systemie binarnym często oznaczane sąprzyrostkiem BIN.

Do wyrażenia dowolnej liczby naturalnej wystarczają 2wartości = 0 oraz 1.

1011BIN=1*2^3+0*2^2*1*2^1+1*2^0 = 11DEC

System łatwy do zastosowania w technice cyfrowej!

Page 7: Mikrokontrolery i ich zastosowania

Każda z pozycji wewnątrz liczby binarnejnazywana jest bitem; bit może przyjąć wartość 0lub 1. W zapisie liczbowym bit pierwszy od lewejnazywamy najbardziej znaczącym (MSB - MostSignificant Bit) a pierwszy od prawej najmniejznaczącym (LSB - Least Significant Bit).

1010 -> MSB=1, LSB=0.

Page 8: Mikrokontrolery i ich zastosowania

Inne systemy liczbowe

•Kod szesnastkowy (heksadecymalny) - oznaczenie HEX;podstawą jest liczba 16 (w zapisie dziesiętnym).

•Kod ósemkowy (oktalny) - oznaczenie OCT; podstawą jestliczba 8 [kod rzadko używany].

Page 9: Mikrokontrolery i ich zastosowania

Niedogodności kodu binarnegoZnaczna długość zapisywanych wyrażeń:

254DEC = 11111101BIN ; przy użyciu n cyfr binarnych (bitów)można zapisać 2^n możliwych wartości.

Np. przy użyciu 8 bitów = 256DEC możliwych wartości.

Z pomocą przychodzi kod szesnastkowy

254DEC = FDHEX

Sposób konwersji BIN->HEX : liczbę binarną dzielimy napaczki po 4 bity, zaczynając od prawej (czyli od LSB);następnie każdą paczkę zamieniamy na liczbę szesnastkowąwedług następującej tabeli:

Page 10: Mikrokontrolery i ich zastosowania

DEC BIN HEX OCT0 00000000 0 01 00000001 1 12 00000010 2 23 00000011 3 34 00000100 4 45 00000101 5 56 00000110 6 67 00000111 7 78 00001000 8 109 00001001 9 1110 00001010 A 1211 00001011 B 1312 00001100 C 1413 00001101 D 1514 00001110 E 1615 00001111 F 1716 00010000 10 20

Page 11: Mikrokontrolery i ich zastosowania

„Paczki” 4-bitowe określamy jako „nible” natomiast 8-bitowejako bajty (byte), 16-bitowe jako słowa (word).

W technice mikroprocesorowej wykorzystywany jest główniekod binarny. Wartości 1 przydzielany jest stan wysokinapięcia (stąd oznaczenie H = High), natomiast wartości 0stan niski (L=Low).

Informacje wewnątrz procesora przechowywane są w tzw.rejestrach. Z pewnym przybliżeniem rejestr możnapotraktować jako komórkę specjalizowanej pamięci oustalonej pojemności (liczbie bitów). Liczbę tę nazywamydługością rejestru.

Page 12: Mikrokontrolery i ich zastosowania

Mikroprocesor i mikrokontroler -- podobieństwa i różnice

MIKROPROCESOR:• duży pobór prądu (>1A)• duża moc obliczeniowa• duża liczba niezbędnych układów

pomocniczych• dość wysoka cena

• MIKROKONTROLER:• niewielki pobór prądu (<10mA)• mała lub średnia moc obliczeniowa• minimalna liczba niezbędnych

elementów pomocniczych• niewielka cena (<1 US$).

Dodatkowe cechy:• możliwość przejścia w stan uśpienia,• sprzętowe zabezpieczenia przed

zawieszeniem się programu(watchdog).

Page 13: Mikrokontrolery i ich zastosowania

Najważniejsi producenci mikrokontrolerów

• Microchip - procesory rodziny PIC• Philips - procesory rodz. 8051,ARM• Freescale (do 07.2004 jako Motorola) -

rodziny HC05,08,11,16,32...• Atmel - 8051, AVR• Hitachi - Renesas• ST Microelectronics - ST6,ST7...

Page 14: Mikrokontrolery i ich zastosowania

Uzupełnienie - udział mikrokontrolerów (MCU) w rynku

Rynek elementów półprzewodnikowych w r. 2006 - ok. 246 mld US$

Rynek mikrokontrolerów - ok. 26 mld US$ (przychody ze sprzedaży)

Cechy rynku:

•Ponad 40 producentów MCU

•Ponad 50 oferowanych architektur MCU

•Żadna z architektur nie przekracza 5% udziału w całym rynku

•Proporcje udziału poszczególnych grup zastosowań:

-zast. przemysłowe: 9 mld US$

-zast. konsumenckie: 6 mld US$

-zast. motoryzacyjne: 11 mld US$

Page 15: Mikrokontrolery i ich zastosowania

Procesory rodziny HC05 -wstępne informacje

Page 16: Mikrokontrolery i ich zastosowania

Procesor 68HCJ1A - wersja w obudowie DIP

Page 17: Mikrokontrolery i ich zastosowania

Charakterystyka przykładowego mikrokontrolera na przykładzieukładu z rodziny 68HC05 (Motorola/Freescale):

• Architektura wewnętrzna• Mapa pamięci• Lista rozkazów rodziny 68HC05 - wprowadzenie• Sposoby pisania programu dla mikrokontrolera, narzędzia

programowe i sprzętowe.

Page 18: Mikrokontrolery i ich zastosowania

Procesor 68HCJ1A - wersja w obudowie DIP

Page 19: Mikrokontrolery i ich zastosowania

Opis wyprowadzeń:

-Zerowanie procesora , sygnał aktywny w stanieniskim.

- wejście zewnętrznego przerwania niemaskowalnego

-wyprowadzenia zewnętrznego, dwukierunkowegoportu danych (portu A) - 7 bitów

-wyprowadzenia zewnętrznego, dwukierunkowegoportu danych (portu B) - 5 bitów

Page 20: Mikrokontrolery i ich zastosowania

OSC1,2 -

VCC

VSS

wejścia do podłączenia rezonatora kwarcowego lubceramicznego

Zasilanie +

Zasilanie -

Page 21: Mikrokontrolery i ich zastosowania
Page 22: Mikrokontrolery i ich zastosowania
Page 23: Mikrokontrolery i ich zastosowania

Rejestry CPU

Page 24: Mikrokontrolery i ich zastosowania

Uproszczony opis pracy procesora - kolejne czynności

•Po resecie - sprawdzenie stanu komórek o adresach 7FEhex oraz7FFhex (wektor resetu)

•Przejście pod adres w pamięci, który zapisany jest w komórkach7FE oraz 7FF

•Pobranie rozkazu

•Zdekodowanie rozkazu

•Wykonanie rozkazu

•Pobranie następnego rozkazu

Page 25: Mikrokontrolery i ich zastosowania

Lista rozkazów procesora HC05 - grupy instrukcji

• Instrukcje typu rejestr/pamięć• instrukcje typu czytaj-modyfikuj-zapisz• instrukcje skoków i rozgałęzień• instrukcje manipulacji bitami• instrukcje sterujące

Dokładniejsze informacje - dokumentacja procesora.

Page 26: Mikrokontrolery i ich zastosowania

Charakterystyka przykładowego mikrokontrolera na przykładzie układuz rodziny 68HC05 (Motorola/Freescale) - ciąg dalszy:

• Lista rozkazów rodziny 68HC05 - dokończenie.• Wybrane techniki programowania w asemblerze; metody pisania

programu dla mikrokontrolera, narzędzia programowe i sprzętowe.• Sprzęganie mikrokontrolera z urządzeniami wejścia/wyjścia (I/O);

obsługa sygnałów analogowych i cyfrowych• Wybrane architektury mikrokontrolerów• Programowanie mikrokontrolera w języku wysokiego poziomu -

wprowadzenie• kompatybilność elektromagnetyczna a mikrokontrolery - wybrane

zagadnienia

Page 27: Mikrokontrolery i ich zastosowania

Lista rozkazów procesora HC05 - grupy instrukcji

• Instrukcje typu rejestr/pamięć• instrukcje typu czytaj-modyfikuj-zapisz• instrukcje skoków i rozgałęzień• instrukcje manipulacji bitami• instrukcje sterujące

Page 28: Mikrokontrolery i ich zastosowania

Instrukcje rejestr - pamięćPrzetwarzają dane z rejestrów CPU i komórek pamięci. Większość

używa 2 argumentów - jeden z rejestru CPU, drugi z komórkipamięci.

Page 29: Mikrokontrolery i ich zastosowania

Instrukcje Czytaj-Modyfikuj-ZapiszPrzetwarzają dane z rejestrów CPU lub komórek pamięci. Instrukcja

odczytuje zawartość rejestru, przetwarza ją i wynik zapisuje zpowrotem do rejestru.

Page 30: Mikrokontrolery i ich zastosowania

Instrukcje skoków i rozgałęzieńUmożliwiają zmianę normalnej kolejności wykonywania rozkazów

wchodzących w skład programu.

Najważniejsze z nich to JMP (Jump = skok bezwarunkowy) oraz JSR (Jump to Subroutine = skok dopodprogramu).

JMP = skok bez zapamiętania adresu powrotu

JSR = skok do podprogramu z zapamiętaniem adresu powrotu. Adres ten przechowywany jest w wydzielonymobszarze pamięci (na stosie procesora). Adres wierzchołka stosu przechowywany jest w rejestrze SP (StackPointer).

Ważne instrukcje - BRCLR oraz BRSET : skok warunkowy wykonywany po sprawdzeniu stanu bitu w obszarzepierwszych 256 bajtów przestrzeni adresowej procesora.

Przykłady zastosowania:

BRSET 4,PORTA, ALARM ; jeśli stan bitu nr 4 portu A (PA4) jest wysoki (PA4=1), to skocz do etykiety ALARM

BRCLR 2,PORTB, KONIEC ; jeśli bit PB2=0 to skocz do etykiety KONIEC.

Page 31: Mikrokontrolery i ich zastosowania
Page 32: Mikrokontrolery i ich zastosowania

Przykład zastosowania instrukcji skoku

Org rom

start: lda #$06

sta ddra

lda ddra

jsr czekaj

lda #$01

sta porta

jsr czekaj ;podprogram opóźnienia

petla: inca

sta porta

jsr czekaj

jmp petla

Czekaj: sta $00c0 ; zapamiętaj A w komórce pamięci oadresie 00c0 hex

lda #$80 ; wartość 80hex do akumulat.

Skok: Deca ; zmniejsz zawartość akumulatora o 1.

bpl skok ; jeśli flaga N=0 (tzn. jeśli A>0)

lda $00c0; przywróć zawartość A

rts ; powrót do programu głównego

Page 33: Mikrokontrolery i ich zastosowania

Instrukcje manipulacji na bitachUmożliwiają zapis lub odczyt dowolnego bitu z obszaru pierwszych256 bajtów przestrzeni adresowej procesora; do tej grupy można

również zaliczyć wybrane instrukcje skoków warunkowych

Page 34: Mikrokontrolery i ich zastosowania

Przykład zastosowania instrukcji operacji bitowych

BSET 4,PORTA ; ustaw bit nr 4 portu A (PA4) w stan wysoki (PA4=1) bez sprawdzania warunków

BCLR 2,PORTB; skasuj bit PB2 (tzn. PB2=0) bez sprawdzania warunków

Instrukcje tej grupy są bardzo przydatne przysterowaniu pojedynczych wyjść/wejść procesora

Page 35: Mikrokontrolery i ich zastosowania

Instrukcje sterująceMają wpływ na zawartość rejestrów oraz na sposób pracyprocesora (np. wejście w tryb obniżonego poboru mocy).

Page 36: Mikrokontrolery i ich zastosowania

Sprzęganie mikrokontrolera zurządzeniami wejścia/wyjścia (I/O);

Podstawowe zagadnienie: jak wprowadzić do procesora (MCU) lubwyprowadzić z niego sygnał sterujący. Pojawiają się tu następująceproblemy:

a) dostosowanie poziomów napięć i prądów sygnałów do wymagańprocesora

b) ochrona przed zakłóceniami oraz ich skutkami.

c) konwersja postaci sygnału (np. z postaci szeregowej na równoległą,zmiana protokołu sygnału).

d) zapewnienie właściwych uwarunkowań czasowych (np. czas reakcji nazdarzenie krytyczne).

Page 37: Mikrokontrolery i ich zastosowania

Przykład zastosowania - pilot RTV zrealizowany przyużyciu procesora HC05

Źródło - nota aplikacyjna AN463 Freescale Semiconductors

Page 38: Mikrokontrolery i ich zastosowania

Przy sterowaniu obciążeń indukcyjnych pojawiają się specyficzne problemy -przepięcia mogące uszkodzić porty procesora; ponadto wydajność prądowaportu jest zwykle niewystarczająca np. do załączenia przekaźnika; dlatego

zalecane jest stosowanie tranzystorów pośredniczących i diodantyprzepięciowych; poniżej prosty przykład na bazie procesora atMega128

(moduł Mmnet firmy Propox)

Page 39: Mikrokontrolery i ich zastosowania

Sterowanie urządzeń mocy - wybrane zagadnieniaPrzy sterowaniu urządzeń zasilanych napięciem 230V AC lub wyższym pojawia się

problem bezpieczeństwa operatora oraz zabezpieczenia mikrokontrolera przeduszkodzeniami. Najlepszym rozwiązaniem jest separacja galwaniczna (oddzielenie

elektryczne urządzeń).

Rozwiązanie 1 - optoizolacja = użycie transoptora

Page 40: Mikrokontrolery i ich zastosowania

Elementem wykonawczym często jest tyrystor lub triakjego główną zaletą jest brak elementów mechanicznych

i stąd duża trwałość (liczba cykli łączeniowych >108)

Page 41: Mikrokontrolery i ich zastosowania

Przykład aplikacji - minirobotzadanie nawigacyjne = śledzenie czarnej linii narysowanej na podłożu

Źródło: Seattle Robotics Society

Page 42: Mikrokontrolery i ich zastosowania

Przykład aplikacji - minirobotzadanie nawigacyjne = śledzenie czarnej linii narysowanej na podłożu

Page 43: Mikrokontrolery i ich zastosowania

Przy okazji - inne zastosowanie transoptora - czujnik optycznypodłoża

Page 44: Mikrokontrolery i ich zastosowania

Schemat blokowy układu sterowania

Page 45: Mikrokontrolery i ich zastosowania

Inne architektury procesorów

Page 46: Mikrokontrolery i ich zastosowania

Mikrokontrolery AVR (Atmel)

Nowości:

wbudowanyUART (układtransmisjiszeregowej)

ProgramowanieISP (w systemie)

Page 47: Mikrokontrolery i ich zastosowania

Narzędzie potrzebne do pracy z systemem =programator ISP

Koszt elementów <10 PLN

Page 48: Mikrokontrolery i ich zastosowania

Układ docelowy do współpracy z programatorem

Page 49: Mikrokontrolery i ich zastosowania

Procesory AVR -atMega (Atmel)

Nowości:wbudowany

przetwornik A/C

Mocnorozbudowany układczasowy (timery z

możliwościągeneracji PWM).

Page 50: Mikrokontrolery i ich zastosowania

Dalsze zagadnienia:

• Wybrane architektury mikrokontrolerów - konstrukcjezaawansowane

• Programowanie mikrokontrolera w języku wysokiego poziomu -wprowadzenie

• kompatybilność elektromagnetyczna a mikrokontrolery - wybranezagadnienia - ciąg dalszy

• systemy operacyjne czasu rzeczywistego - wprowadzenie

Page 51: Mikrokontrolery i ich zastosowania

Procesory rodziny ARM

• Opracowanie - firma ARM (Wielka Brytania) www.arm.com• brak własnej produkcji, udostępnianie na zasadach licencyjnych

innym producentom (obecnie ponad 40 firm).• Oferowane jest kilka rodzin procesorów, najbardziej popularne

są procesory rodziny ARM7 oraz ARM9.

Page 52: Mikrokontrolery i ich zastosowania

Uproszczony schemat blokowy procesora rodziny ARM7

Wybrane cechy:

•Częstotliwość zegara do 133MHz;

•Dodatkowe bloki wbudowane wstrukturę procesora, np. MMU -Moduł Zarządzania Pamięcią

•Pipelining, czyli jednoczesnaobsługa kilku rozkazów(przetwarzanie potokowe, 3 rozk.)

•Kompatybilność z różnymisystemami operacyjnymi(Embedded Linux, Windows CE,Symbian, Palm OS).

•Zastosowania: drukarki, prostepalmtopy, aparaty cyfrowe,telefony GSM, sprzęt medyczny

Page 53: Mikrokontrolery i ich zastosowania

Uproszczony schemat blokowy procesora rodziny ARM9

Wybrane cechy:

•Częstotliwość zegara do 250MHz;

•Dodatkowe bloki wbudowane wstrukturę procesora, np. MMU -Moduł Zarządzania Pamięcią

•Pipelining, czyli jednoczesnaobsługa kilku rozkazów(przetwarzanie potokowe, 5 rozk.)

•Kompatybilność z różnymisystemami operacyjnymi(Embedded Linux, Windows CE,Symbian, Palm OS).

•Zastosowania: konsole do gier,zaawans. palmtopy, telefony 3G,routery sieciowe

Page 54: Mikrokontrolery i ich zastosowania

Dalszy rozwój rodziny rdzeni procesorów ARM (mapa drogowa)

Dalszy rozwój technologii, zmniejszenie zużycia mocy: np. dla ARM11 - pobór mocyprzy Ucc=1,2V nie przekracza 0.4 mW/MHz; dla f=500 MHz P<=0,2W

Spokrewnione/ bazujące na ARM rodziny - Intel XScale

Page 55: Mikrokontrolery i ich zastosowania

Programowanie mikrokontrolerów w języku wysokiego poziomu -wprowadzenie

Programowanie w języku asemblera:

Zalety:

•Pełne panowanie nadzasobami procesora

•Możliwość ręcznejoptymalizacji algorytmu

•Mały rozmiar programu(kodu) wynikowego

Wady:

•Mała produktywność pracyprogramisty

•Nieczytelny kod źródłowy

•Bardzo trudneprogramowanie np.złożonych operacjimatematycznych

Page 56: Mikrokontrolery i ich zastosowania

Porównanie wyglądu kodu (fragmenty)

Asembler:

lda $#0xf5 ; załaduj do A wartość

;f5 hex

sta porta ; zawartość akumulatora

prześlij do portu A

;---------------------------

inc porta

??????? (brak gotowej procedury!)

Język C:

porta=0xf5;

porta++;

y=sin(x);

Page 57: Mikrokontrolery i ich zastosowania

Programowanie w języku C:

Zalety:

•Szybkość tworzenia programu

•duża przenośność kodu

•łatwe programowanie złożonychalgorytmów

•łatwa obsługa operacji wej/wyj

•wielka liczba dostępnych bibliotek

Wady:

•Nieco większa objętośćkodu źródłowego (przestajebyć to obecnie problemem).

•Dość drogie narzędziaprogramistyczne(ale częstodostępne są wersjedarmowe)

Page 58: Mikrokontrolery i ich zastosowania

Programowanie w języku C - przykładowa literatura:

1) Kernighan , Ritchie - Język C; wyd. WNT 1985+wznow.

2) Kardach, Majewski - Mikrokontrolery jednoukładowe 8051;programowanie w języku C w przykładach, Wyd. PWr 1995, wyd. II2002

3) Strostroup - Język C++ (dla ambitnych!).

Page 59: Mikrokontrolery i ich zastosowania

Programowanie w języku C: przykładowe programy dla procesora rodziny8051 (© Krzysztof Kardach & Jacek Majewski)

/**************************************************************************Program zapala lub gasi diody LED dołączone do portu P3 w zależności odstanu przycisków P1 (gdy przycisk wciśnięty to odpowiednia dioda świeci).**************************************************************************/sfr P1= 0x90; /* definicja adresu portu P1 */sfr P3= 0xB0; /* definicja adresu portu P2 */

void main(void){ data char i;

while (1) { i=P3; /* odczyt stanu portu P3 i kopiowanie tego stanu do zmiennej i */ P1=i; /* kopiowanie stanu zmiennej i do portu P1 */ }

}

Page 60: Mikrokontrolery i ich zastosowania

/**************************************************************************Ćwiczenie 2

Program symuluje działanie 8-bitowego licznika binarnego. Ekspozycja stanówlicznika odbywa się na diodach LED (DDS) dołączonych do portu P1.

**************************************************************************/#include <io51.h> /* zbiór definiujący adresy rejestrów procesora 8051 */

void main(void){ int i;

while (1) { P1++; /* zwiększanie zawartości portu P3 */ for(i=0;i<0x7fff;i++){}; /* opóźnienie czasowe */ }

}

Page 61: Mikrokontrolery i ich zastosowania

/**************************************************************************Ćwiczenie 3

Program symuluje działanie 8-bitowego licznika binarnego.Ekspozycja stanu licznika prezentowana jest na diodach LED, dołączonych doportu P1 (DDS). Program wywołuje podprogram opóźnienia czasowego - Delay.

**************************************************************************/#include <io51.h> /* zbiór definiujący adresy rejestrów procesora 8051 */

#define SPEED 0x7fff /* definicja stałej */

void Delay(int time) /* podprogram opóźnienia czasowego */{ int i; for(i=0;i<time;i++){}; /* opóźnienie czasowe */}

void main(void){ char k;

while (1) { P1=~--k; /* zmniejszanie zawartości portu P1 */ /* negacja zapewnia świecenie diody gdy odpowiedni bit portu P1 jest w stanie 1 (high) */ Delay(SPEED); }

}

Page 62: Mikrokontrolery i ich zastosowania

Przykładowe narzędzie - kompilator ICC-AVR firmy ImageCraft dlaprocesorów AVR:

Page 63: Mikrokontrolery i ich zastosowania

Wybór opcji kompilatora:

Page 64: Mikrokontrolery i ich zastosowania

Wybór opcji programatora:

Page 65: Mikrokontrolery i ich zastosowania

Przydatne narzędzie : AVR Calc (kalkulator konfiguracyjny)

Page 66: Mikrokontrolery i ich zastosowania

Perspektywy rozwoju

Page 67: Mikrokontrolery i ich zastosowania

Rozwiązania Embedded Linux - minimoduł firmy Gumstixwww.gumstix.com

Page 68: Mikrokontrolery i ich zastosowania

Kompatybilność elektromagnetyczna a mikrokontrolery

-wybrane zagadnienia

Literatura:

•Intel - Application Note AP-125

•ST - Application Note AN1015 i inne

Page 69: Mikrokontrolery i ich zastosowania

Definicja kompatybilnościelektromagnetycznej (EMC)

• Odpornośc na zakłócenia przedostające sięz zewnątrz do układu

• Niski poziom zakłóceń generowanych

Badania EMC - norma ISO/IEC 61000

Page 70: Mikrokontrolery i ich zastosowania

Objawy niekompatybilnościEMC

• Niestabilność systemu - np. resetowaniesterownika przy zmianach napięcia zasilania- załączenie innego odbiornika w siecipowoduje zawieszenie programu

• zakłócanie pracy innych urządzeń.

Wszystkie urządzenia sprzedawane w UEmuszą spełniać wymagania dot. EMC

Page 71: Mikrokontrolery i ich zastosowania

Należy odróżniać EMS od EMC

Page 72: Mikrokontrolery i ich zastosowania

Przykładowe źródła zakłóceń• Impulsy zakłócające z obwodu zasilania• Wyładowanie elektrostatyczne w obudowę

urządzenia

Model zastępczy obwodu zasilania - wyłączenie obciążeniaR1, R2 powoduje przepięcie indukcyjne.

Page 73: Mikrokontrolery i ich zastosowania

Wyładowania iskrowe• Częste źródło problemów w układach

motoryzacyjnych (układ zapłonowy - wysokienapięcie).

• Występują również w układach zawierającychsilniki komutatorowe (iskrzenia naszczotkach).

• Użycie w takich warunkach sterownikamikroprocesorowego wymaga specjalnychśrodków zaradczych.

Page 74: Mikrokontrolery i ich zastosowania

Dalsze informacje

• Intel - nota aplikacyjna AP-125

Page 75: Mikrokontrolery i ich zastosowania

Programowe metody polepszenianiezawodności systemów

mikroprocesorowych• Specjalna konstrukcja programu -

sprawdzanie w pętli, czy nie nastąpiłozakłócenie pracy programu

• Przydatne jest użycie watchdoga (w raziezawieszenia programu w ciągu ms generujesprzętowy sygnał reset).

Page 76: Mikrokontrolery i ich zastosowania

Dalsze informacje -

• Nota ST Microelectronics = AN1015