PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Wykład XIII
Procesory AVR
EAIiE, IV rok AR, AGH Kraków 2004 Copyright by Maciej Rosół
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Podstawowe właściwości procesorów AVR firmy ATMEL:
" Architektura typu RISC.
- od 89 do 133 prostych instrukcji (większość realizowana w jednym cyklu zegara),
- 32 x 8 bit rejestrów ogólnego przeznaczenia,
- wydajność 1 MIPS dla zegara o częstotliwości 1 MHz,
- wbudowany układ mnożący (2 cykle zegarowe).
" Pamięć programu typu FLASH od 1 KB (np. AT90S1200, ATiny11) do 128 KB
(ATmega128) gwarantowane 10 000 cykli zapisu/kasowania.
" Pamięć danych typu EEPROM od 64 B (np. AT90S1200, ATiny12) do 4 KB (ATmega128)
gwarantowane 100 000 cykli zapisu/kasowania.
" Wewnętrzna pamięć SRAM od 32 B (np. ATiny11) do 4 KB (ATmega128).
" Rozbudowane peryferia:
- dwa 8-bitowe układy czasowo-licznikowe z odrębnymi układami preskalerów i
komparatorów,
- od jednego do dwóch 16-bitowych układów czasowo-licznikowych z odrębnymi
układami preskalerów i komparatorów,
- od czterech do 6 kanałów PWM,
- 8 kanałowy 10-bitowy przetwornik A/C,
- obsługa szeregowych interfejsów typu: USART, SPI, I2C (tutaj nazywany two-wire
serial interface),
- programowalny układ Watchdog.
" Obsługa interfejsu JTAG (np. ATmega16, ATmega128)
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Architektura procesora Atmega16
" 32 x 8 bit rejestrów ogólnego przeznaczenia.
" 16 KB pamięci programu typu FLASH
(podzielona na dwie części: Application
Section, Boot Section).
" 512 B pamięci danych typu EEPROM.
" 1 KB pamięci SRAM.
" Linie wejścia/wyjścia podzielone na cztery 8-
bitowe porty PA PD.
" Dwa 8-bitowe układy czasowo-licznikowe z
odrębnymi układami preskalerów i
komparatorów.
" Jeden 16-bitowy układ czasowo-licznikowych.
" Cztery kanały PWM.
" 8 kanałowy 10-bitowy przetwornik A/C.
" Obsługa szeregowych interfejsów typu:
USART, SPI, I2C.
" Programowalny układ Watchdog.
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Architektura MCU - Atmega16
" Architektura typu Harvard: odrębne
pamięci (magistrale) programu i danych.
" Program realizowany z wykorzystaniem
jedno-stopniowego potoku.
" Rejestry ogólnego przeznaczenia
bezpośrednio połączone z ALU (w
jednym cyklu możliwy jest odczyt
dwóch operandów i zapis wyniku).
" 6 z 32 rejestrów może zostać
wykorzystane jako trzy 16-bitowe
wskaznik dla celów adresowania pamięci
programu i danych (np. realizacja LUT).
" ALU realizuje operacje arytmetyczne i
logiczne pomiędzy rejestrami, pomiędzy
rejestrem a stałą oraz na pojedynczym
rejestrze.
" Podczas skoku do procedury w tym
procedury obsługi przerwania na stos
zapisywany jest automatycznie adres
powrotu.
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
70 Adres
Zbiór rejestrów ogólnego
R0 00h
przeznaczenia
R1 01h
Obsługiwane schematy:
R2 02h
" Jeden 8-bitowy operand i jeden 8-
...
bitowy wynik
R13 0Dh
" Dwa 8-bitowe operandy i jeden 8-bitowy
R14 0Eh
wynik
R15 0Fh " Dwa 8-bitowe operandy i jeden 16-
bitowy wynik
R16 10h
" Jeden 16-bitowy operand i jeden 16-
R17 11h
bitowy wynik
...
R26 1Ah Rejestr X młodszy bajt
R27 1Bh Rejestr X starszy bajt
R28 1Ch Rejestr Y młodszy bajt
R29 1Dh Rejestr Y starszy bajt
R30 1Eh Rejestr Z młodszy bajt
R31 1Fh Rejestr Z starszy bajt
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Przykłady różnych schematów operacji
realizowanych przez ALU
;Jeden 8-bitowy operand, jeden 8-bitowy wynik
inc r12 ; Zwiększ r12 o jeden
;Dwa 8-bitowe operandy, jeden 8-bitowy wynik
and r13,r1 ; Operacja iloczynu logicznego pomiędzy r13 i
; r1, wynik zapisany do r13
;Dwa 8-bitowe operandy, jeden 16-bitowy wynik
mul r8,r7 ; Operacja iloczynu na r8 i r7 (bez znaku),
; wynik zapisany w rejestrach r1 i r0
;Jeden 16-bitowy operand, jeden 16-bitowy wynik
sbiw r25:r24,56 ; Odejmij od pary rejestrów r25:r24 stałą 56
movw r15:r14,r1:r0 ; Przepisz zawartość pary rejestrów r1:r0 do
; r15:r14
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Realizacja rozkazów
przez CPU
Działanie
potoku
Realizacja
operacji w
jednym cyklu
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Pamięć programu - ATmega16
0000h
" Organizacja pamięci: 8K x 16
bitów
" Licznik rozkazów 13 bitowy
Instrukcja SPM
Application
(adresuje 8 K słów)
zabroniona
" Podział pamięci na dwie części
flash section
Część pamięci programu typu
Application może być
modyfikowana przez program
zawarty w części typu Boot
Instrukcja SPM
Boot flash
dopuszczona. Adresuje
section
1FFFh całą pamięć programu
Struktura pamięci programu
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Wyznaczanie adresu bajtu danych w pamięci
programu
Adres bajtu 2x
Adres słowa
;Realizacja LUT
większy niż
16-bitowego
ldi ZH,high(TABLE<<1) ;Inicjalizacja
adres słowa
;wskaznika Z
ldi ZL,low(TABLE<<1)
0000h Byte-0 Byte-1
main:
0001h Byte-2 Byte-3 lpm r18,Z ;Aaduj bajt z pamięci
;programu
0002h Byte-4 Byte-5
adiw ZL,1 ;Zwiększ wartość Z o
; 1
... ... ...
nop
1FFDh Byte-3FFA Byte-3FFB
rjmp main
.cseg
1FFEh Byte-3FFC Byte-3FFD
.org 0x01FF
1FFFh Byte-3FFE Byte-3FFF
TABLE:
.db 0x00, 0x01, 0x02, 0x03, 0x04, 0x05
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Pamięć danych SRAM -
Zbiór rejestrów Przestrzeń adresowa
R0 0000h
ATmega16
R1 0001h
R2 0002h
Podział pamięci danych na trzy bloki:
... ...
1. 32 rejestry ogólnego przeznaczenia
R29 001Dh
2. 64 rejestry I/O
R30 001Eh
R31 001Fh
3. 1024 bajty wewnętrznej pamięci
Rejestry I/O
SRAM
00h 0020h
Tryby adresowania pamięci danych:
01h 0021h
02h 0022h
1. Bezpośredni
... ...
2. Pośredni
3Dh 005Dh
3. Pośredni z przesunięciem
3Eh 005Eh
4. Pośredni z pre-dekrementacją
3Fh 005Fh
5. Pośredni z post-inkrementacją
SRAM wewnętrzna
0060h
UWAGA !!!
0061h
Wskaznik stosu musi być ustalony
...
na wartość e" 60h
045Fh
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Przykłady adresowania pamięci danych
;Adresowanie bezpośrednie obejmuje całą przestrzeń adresową
lds r18,0x90 ;Załaduj bezpośrednio z RAM (0x90) do rejestru r18
sts 0x9F,r19 ;Zapisz bezpośrednio z rejestru r19 do RAM (0x9F)
;Adresowanie pośrednie jako wskazników używa się rejestrów X, Y i Z
ldi XL,0x12 ;Ustalenie wskaznika X na zadanej wartości
ldi XH,0x04 ;X = 0412h
ld r18,X ;Załaduj pośrednio z pamięci o adresie zawartym w (X) do r18
st X,r18 ;Zapisz pośrednio z r18 do pamięci o adresie zawartym w (X)
;Adresowanie pośrednie z post-inkrementacją (inkrementowany tylko młodszy bajt)
ld r18,X+ ;Załaduj z pamięci o adresie zawartym w (X) do r18 i X=X+1
st X+,r18 ;Zapisz z r18 do pamięci o adresie zawartym w (X) i X=X+1
;Adresowanie pośrednie z pre-dekrementacją (dekrementowany tylko młodszy bajt)
ld r18,-X ; X=X-1 i załaduj z pamięci o adresie zawartym w (X) do r18
st -X,r18 ; X=X-1 i zapisz z r18 do pamięci o adresie zawartym w (X)
;Adresowanie pośrednie z przesunięciem (0 d" przesunięcie d" 63)
ldd r18,Z+23 ;Załaduj z pamięci o adresie zawartym w (Z+23) do r18
std Z+23,r18 ;Zapisz z rejestru r18 do pamięci o adresie zawartym w (Z+23)
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Porty I/O
ATmega16 zawiera cztery 8-bitowe porty: PA PD.
Każdy port posiada przypisane trzy rejestry:
1. DDxn. Ustalenie kierunku sygnału (1-wyjście, 0-wejście)
2. PORTxn. Wymuszenie określonego stanu na końcówce (w tym stanu wysokiej
impedancji) lub aktywacja rezystora podciÄ…gajÄ…cego
3. PINxn. Odczyt stanu końcówek
gdzie: x oznaczenie portu (A,B,C,D), n numer wyprowadzenia (0-7)
Właściwości:
1. Każda z końcówek portów może być
indywidualnie ustawiona jako:
wejście i wyjście
2. Zabezpieczenie wyprowadzeń przed
przepięciami (diody do VCC i GND)
3. Możliwość aktywacji rezystora
podciÄ…gajÄ…cego do VCC (pull-up)
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Porty I/O
Konfiguracja wyprowadzeń
DDxn PORTxn PUD I/O Pull-up Stan
0 0 X In No Tri-state
0 1 0 In Yes In-Low
(source I)
0 1 1 In No Tri-state
1 0 X Out No Out Low
1 1 X Out No Out High
PUD bit w rejestrze SFIOR. Zablokowanie rezystorów
podciągających globalnie dla wszystkich wyprowadzeń
UWAGA ! Przy zmianie konfiguracji końcówek
dla których bity DDxn i PORTxn różnią się na
dwóch pozycjach należy uwzględnić stan
pośredni np. przejście od stanu Tri-state (00)
do Out-High (11).
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Przykład konfiguracji wyprowadzeń
.include "m16def.inc ; Dołączenie pliku z mnemonikami
.def Temp = r16 ; Rejestr tymczasowy
; PORTB: 0-7 wyjścia
ldi Temp,0xFF ; Konfiguracja wyprowadzeń portu B
out DDRB,Temp ; jako 8 wyjść i 0 wejść
ldi Temp,0x0F ; PD7-PD4 = 1
out PORTB,Temp ; PD7-PD4 = 0
; PORTD: 0-3 wejścia, 4-7 wyjścia
ldi Temp,0xF0 ; Konfiguracja wyprowadzeń portu D
out DDRD,Temp ; jako 4 wyjść i 4 wejść
ldi Temp,0x0F ; PD7-PD4 = 0
out PORTD,Temp ; PD3-PD0: pull-up
nop ; Krótkie opóznienie dla celów synchronizacji
in Temp,PIND ; Odczyt stanu końcówek portu D
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Alternatywne funkcje portów
Pin Funkcja
PD7 OC2 (Timer/Counter2 Output Compare Match Out)
Pin Funkcja
PD6 ICP (Timer/Counter1 Input Capture Pin)
PA7 ADC7 (A/D channel 7)
PD5 OC1A (Timer/Counter1 Output Compare A Match Out)
PA6 ADC7 (A/D channel 6)
PD4 OC1B (Timer/Counter1 Output Compare B Match Out)
PA5 ADC7 (A/D channel 5)
PD3 INT1 (External Interupt 1 Input)
PA4 ADC7 (A/D channel 4)
PD2 INT0 (External Interupt 0 Input)
PA3 ADC7 (A/D channel 3)
PD1 TXD (Output Pin USART)
PA2 ADC7 (A/D channel 2)
PD0 RXD (Input Pin - USART)
PA1 ADC7 (A/D channel 1)
PA0 ADC7 (A/D channel 0)
Pin Funkcja
PB7 SCK (Linia zegarowa SPI)
Pin Funkcja
PB6 MISO (Master In/Slave Out SPI)
PC7 TOSC2 (Timer Oscilator Pin2)
PB5 MOSI (Master Out/Slave In SPI)
PC6 TOSC1 (Timer Oscilator Pin1)
PB4 ~SS (Slave Select Input - SPI)
PC5 TDI (Test Data In JTAG)
AIN1 (Analog Comparator Negative In)
PB3
OC0 (Timer/Counter0 Output Compare Match Out)
PC4 TDO (Test Data Out - JTAG)
AIN0 (Analog Comparator Positive In)
PC3 TMS (Test Mode Select - JTAG)
PB2
INT2 (External Interupt 2 Input)
PC2 TCK (Test Clock - JTAG)
PB1 T1 (Timer/Counter1 External Counter Input)
PC1 SDA (Data In/Out Line Two Wire Serial Bus)
T0 (Timer/Counter0 External Counter Input)
PC0 SCL (Clock Line Two Wire Serial Bus) PB0
XCK (USART External Clock Input/Output)
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Przetwornik A/D ATmega16
Właściwości:
" Rozdzielczość 10-bitów (sukcesywna aproksymacja)
" Czas konwersji: 65-260 µs
" 8 wejściowych multipleksowanych kanałów typu Single-Ended
" 7 wejściowych kanałów różnicowych
" 2 wejściowe kanały różnicowe z regulacją wzmocnienia 1x, 10x lub 200x
" Wbudowane zródło napięcia odniesienia 2.56 V
" Ciągły lub pojedynczy cykl konwersji
" Zakres przetwarzanych napięć od 0-VADC (napięcie referencyjne lub
zasilające część analogową)
Konwersja typu single-ended Konwersja typu differential
VIN Å"1024 (VPOS -VNEG ) Å"GAIN Å"512
ADC = ADC =
VREF VREF
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Wynik konwersji zapisywany w dwóch rejestrach: ADCL i ADCH
15 14 13 12 11 10 9 8
- - - - - - ADC9 ADC8 ADCH
ADLAR = 0
ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0 ADCL
7 6 5 4 3 2 1 0
Wyrównywanie wyniku konwersji do prawej
15 14 13 12 11 10 9 8
ADC9 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADCH
ADLAR = 1
ADC1 ADC0 - - - - - - ADCL
7 6 5 4 3 2 1 0
Wyrównywanie wyniku konwersji do lewej
UWAGA ! Jeżeli ADLAR=1 i mierzymy z rozdzielczością 8-bitową to można odczytać
jedynie ADCH. W przeciwnym wypadku najpierw odczytujemy ADCL, a pózniej ADCH.
Jeżeli ta kolejność nie zostanie zachowana to można utracić wynik kolejnych konwersji
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Tryby pracy przetwornika A/D
Pojedyncza Konwersja wyzwalana Konwersja
konwersja automatycznie samo-wyzwalana
" Ustaw bit ADEN " Ustaw bit ADEN " Ustaw bit ADEN
" Uruchom konwersję " Wybierz zródło sygnału " Wybierz zródło sygnału
ustawiajÄ…c bit ADSC wyzwalania (bity ADTS) jako ADIF
" ADSC= 1 dopóki trwa " Ustaw bit " Ustaw bit
konwersja automatycznego automatycznego
" ADSC zerowany wyzwalania ADATE wyzwalania ADATE
sprzętowo po " Jeżeli narastające zbocze " Ustaw ADSC pierwsza
zakończeniu konwersji sygnału to start konwersji konwersja
" Jeżeli uaktywnione " Kolejne narastające " Kolejne konwersje
przerwanie to ADIF= 1 zbocze podczas trwania uruchamiane po
po zakończeniu konwersji nie powoduje ustawieniu ADIF
konwersji restartu " Po zakończeniu
" Obsługa procedury " Po zakończeniu konwersji konwersji obsługa jak
przerwania obsługa jak obok obok
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Wybór trybu pracy Wybór częstotliwości
przetwornika A/D pracy przetwornika A/D
UWAGA ! Dla 10-bitowej rozdzielczości
częstotliwość pracy przetwornika A/D
powinna wynosić od 50 kHz do 200 kHz
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Rejestry sterujÄ…ce pracÄ… przetwornika A/D
7 6 5 4 3 2 1 0
REFS1 REFS0 ADLAR MUX4 MUX3 MUX2 MUX1 MUX0 ADMUX
REFS1,REFS0 Wybór napięcia referencyjnego
0 0 Napięcie podłączone do końcówki AREF
0 1 Napięcie zasilające część analogową AVCC z kondensatorem na AREF
1 0 Zarezerwowany
1 1 Wbudowane napięcie referencyjne z kondensatorem na AREF
ADLAR Typ wyrównywania wyniku konwersji w rejestrach ADCL i ADCH
0 Wyrównywanie do prawej
1 Wyrównywanie do lewej
MUX4-MUX0 Wybór kanału pomiarowego i wzmocnienia
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
7 6 5 4 3 2 1 0
ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS0 ADCSRA
ADEN WÅ‚Ä…czenie przetwornika A/D
0Wyłączenie
1WÅ‚Ä…czenie
ADSC Uruchomienie pojedynczej konwersji
0Stan poczÄ…tkowy
1 Uruchomienie konwersji
ADATE Uruchomienie trybu automatycznego wyzwalania
0Wyłączenie
1WÅ‚Ä…czenie
ADIF Flaga przerwania od przetwornika A/D. Ustawiana po zakończeniu
konwersji
ADIE Odblokowanie przerwania od przetwornika A/D (ADIE= 1 )
ADPS2-ADPS0 Wybór preskalera dla podziału częstotliwości pracy
przetwornika A/D
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
7 6 5 4 3 2 1 0
ADTS2 ADTS1 ADTS0 - ACME PUD PSR2 PSR10 SFIOR
ADTS2-ADTS0 Wybór zródła sygnału automatycznego wyzwalania
ADTS2 ADTS1 ADTS0 yródło
0 0 0 Auto-wyzwalanie flagÄ… przerwania ADIF
0 0 1 Komparator analogowy
0 1 0 Zewnętrzne przerwanie 0
0 1 1 Zgodność porównania Timer/Counter0
1 0 0 Przepełnienie Timer/Counter0
1 0 1 Zgodność porównania Timer/Counter B
1 1 0 Przepełnienie Timer/Counter1
1 1 1 Zdarzenie capture Timer/Counter1
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Przykład obsługi przetwornika A/D
.org 0x1C
jmp ADCHand ;Skok do procedury obsługi przerwania A/D
.org 0x100
; Ustawienie parametrów przetwornika A/D
ldi r18,0b01000001
out ADMUX,r18 ; Zewnętrzne AVCC,ADLAR=0,ADC0
Ldi r18,0b00000000 ; PoczÄ…tkowe parametry ADEN=0 itd.
; Preskaler = 1
out ADCSR, r18
sie ; Globalne odblokowanie przerwań
sbi ADCSR,ADIE ; Odblokowanie przerwania od A/D
main:
sbis ADCSR,ADSC ; Sprawdzenie czy trwa konwersja
sbi ADCSR,ADSC ; Jeżeli nie to start konwersji
rjmp main
ADCHand:
in r19,ADCL
in r20,ADCH
reti
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
TCCRn rejestr sterujÄ…cy pracÄ…
8-bitowy układ czasowo-licznikowy
układu czasowo-licznikowego
Flaga
TCNTn licznik 8-bitowy
przepełnienia
OCRn 8-bitowy rejestr
Zegar taktujÄ…cy
porównawczy
licznik
Tn końcówka dla zewnętrznego
zegara
OCn końcówka wyjściowa z
układu komparatora
TOP informacja, że osiągnięto
maksymalną wartość (0xFF lub
zawartość OCRn)
BOTTOM - informacja, że
osiągnięto minimalną wartość
(0x00)
Flaga z
count inkrementacja lub
komparatora
dekrementacja licznika TCNTn
direction wybór pomiędzy
Rejestry TCNTn i OCRn
inkrementacjÄ… i dekrementacjÄ…
porównywane są w sposób ciągły
clear zerowanie licznika
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Tryby pracy układów czasowo-licznikowych
Normal Mode Compare Match Mode PWM Mode
Phase
Fast
Zawsze inkrementacja
TOP = OCRn
Correct
TOP = 0xFF
BOTTOM = 0x00
BOTTOM = 0x00
Licznik zerowany jeżeli
Flaga przepełnienia
TCNTn = OCRn
TOVn może być
TOP = 0xFF
Końcówka Ocn może
wykorzystana jako 9
BOTTOM = 0x00
być wykorzystana do
bit
Inkrementaja
generacji przebiegu
prostokÄ…tnego o
zmiennej częstotliwości
TOP = 0xFF
BOTTOM = 0x00
Inkrementaja i
dekrementacja
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Fast PWM
Phase Correct PWM
Flaga TOVn ustawiana jeżeli TCNTn =
BOTTOM
Flaga OCFn ustawiana jeżeli TCNTn = OCRn
(inkrementacja i dekrementacja)
fclk
fPWM =
N Å"510
Flaga TOVn ustawiana jeżeli TCNTn = TOP
Flaga OCFn ustawiana jeżeli TCNTn = OCRn
fclk
fPWM =
N Å" 256
N podzielnik częstotliwości
(1,8,64,256,1024)
EAIiE, IV rok AR, AGH Kraków 2004
PROTOTYPOWANIE UKAADÓW ELEKTRONICZNYCH
Literatura
1. Atmel, ATmega16/16L, Data Sheet, USA, http://www.atmel.com, 2003.
2. Atmel, 8 bit AVR Instruction Set, Data Sheet, USA,
http://www.atmel.com, 2002.
EAIiE, IV rok AR, AGH Kraków 2004
Wyszukiwarka
Podobne podstrony:
ATMEL AVR start programming in CAtmel Avr USB Firmware Upgrade For AT90USB doc7769Atmel Avr Self Programming(dsp digitalfilter) atmel digital filters with avrAtmel Avr Efficient C Codinggroup avr errnoUsing the EEPROM memory in AVR GCCAVR GCC w Linuksie przykład instalacji ze źródełAVR Syntaxnom XIIIWarsztaty AVR Programowanie uCAVR 2dRegsklawiatrura do avrzestaw uruchominiowy dla procesorów 89Cx051 i AVR11 120 lat modlitwy papieża Leona XIII do śwPoeci staropolscy Poezja Polska XIII XV wiekEl sutil Petrosián XIIIwięcej podobnych podstron