Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaVilmos Faragó Megváltozta több, mint 10 éve
1
ATMEL AVR mikrokontroller család hardver-felépítése
SEM tanfolyam 4. előadás ATMEL AVR mikrokontroller család hardver-felépítése
2
Mi az mikrokontroller? Programozható eszköz, melyet program által vezérelhetünk.
3
Mitől több egy uC egy CPU-tól?
memória: flash és eprom interrupt kezelő I/O portok kommunikációs interfészek: I2C, SPI, UART, USB, CAN… perifériák: időzítő, számláló, PWM, watchdog órajel generátor ADC, DAC program/debug support
4
Mikrokontroller gyártók
ARM (32bit) Atmel: AVR(8bit), AVR32, AT91SAM(32bit) Microchip: PIC(8bit), dsPIC(16bit), PIC32 Cypress Semiconductor: PSoC Freescale: Coldfire(32bit), SO8 Intel 8051(8bit) TI: MSP430(16bit) Hitachi NXP STMicroelectronics Toshiba
5
Milyen AVR core családok léteznek?
tinyAVR — the ATtiny series 0.5–8 kB program memory 6–32-pin package Limited peripheral set megaAVR — the ATmega series 4–256 kB program memory 28–100-pin package Extended instruction set (Multiply instructions and instructions for handling larger program memories) Extensive peripheral set XMEGA — the ATxmega series 16–384 kB program memory 44–64–100-pin package (A4, A3, A1) Extended performance features, such as DMA, "Event System", and cryptography support. Extensive peripheral set with DACs Application-specific AVR megaAVRs with special features not found on the other members of the AVR family, such as LCD controller, USB controller, advanced PWM, CAN etc. FPSLIC™ (AVR with FPGA) FPGA 5K to 40K gates SRAM for the AVR program code, unlike all other AVRs AVR core can run at up to 50 MHz 32-bit AVRs
6
Egy általános AVR felépítése
7
AVR programozási lehetőségei
SPI: csak programozásra használható; mindegyik AVR típushoz használható JTAG: debugger, amely csak ATmega16-tól érhető el
8
uC PORT lábak I/O láb, PORT egyik bitjeként Interfész kivezetéseként
9
uC interrupt Esemény hatására jön létre
Prioritás van az interruptok közt Belső és külső interruptok
10
uC Timer egység Számláló kiegészítő regiszterekkel és vezérlő logikával 8/16 bites timer Felhasználása: Egyszerű számláló Frekvencia generátor Külső esemény számláló Órajel osztó PWM
11
uC timer egység config Clk prescaler Interrupt flags: TIMSK, TIFR
Control registers: TCCR1A, TCCR1B, TCCR2 Special function register: SFIOR
12
uC Watchdog Watchdog timer Túlcsorduláskor reset impulzust generál
Kifagyás elleni védelem
13
Serial Peripheral Interface(SPI) Bus
Fizikai felépítés
14
Serial Peripheral Interface(SPI) Bus
Időzítési diagram
15
Serial Peripheral Interface(SPI) Bus
1 Master – 1 Slave
16
Serial Peripheral Interface(SPI) Bus
1 Master – Multi Slave
17
Serial Peripheral Interface(SPI) Bus
Megvalósítás AVR-ben
18
Serial Peripheral Interface(SPI) Bus
Használata AVR programozásban
19
Serial Peripheral Interface(SPI) Bus
Használata AVR programozásban
20
Universal Asynchronous Receiver Transmitter(UART)
Kommunikáció felépítése
21
Universal Asynchronous Receiver Transmitter(UART)
Fizikai felépítés
22
Universal Asynchronous Receiver Transmitter(UART)
Felhasználási lehetőségek
23
Universal Asynchronous Receiver Transmitter(UART)
Felhasználási példa (RS232)
24
Universal Asynchronous Receiver Transmitter(UART)
Megvalósítás AVR-ben
25
Universal Asynchronous Receiver Transmitter(UART)
Használata AVR programozásban
26
Universal Asynchronous Receiver Transmitter(UART)
Használata AVR programozásban
27
Inter-Integrated Circuit(I²C) Bus
Felépítése
28
Inter-Integrated Circuit(I²C) Bus
Fizikai felépítés
29
Inter-Integrated Circuit(I²C) Bus
Protocol
30
Inter-Integrated Circuit(I²C) Bus
Felhasználás - hőmérséklet mérés - memória illesztés - általános kommunikáció - ADC/DAC - RTC
31
Inter-Integrated Circuit(I²C) Bus
Használata AVR programozásban
32
Inter-Integrated Circuit(I²C) Bus
Használata AVR programozásban Adatlap 170.oldal (ATmega8)
33
Pulse Width Modulation (PWM)
Elvi működés
34
Pulse Width Modulation (PWM)
Megvalósítás
35
Pulse Width Modulation (PWM)
Felhasználás - motor vezérlés - LED vezérlés: fényerő szabályzás - feszültségszabályozás
36
Pulse Width Modulation (PWM)
Használata AVR programozásban
37
Pulse Width Modulation (PWM)
Használata AVR programozásban #define PULSE_WIDTH 0x40 void pwm_start() { OCR1AL = PULSE_WIDTH; //Load Pulse width OCR1AH = 0; DDRD |= (1<<5); //PortD.5 as o/p TCCR1A = 0x81; //8-bit, Non-Inverted PWM TCCR1B = 1; //Start PWM }
38
A/D és D/A konverterek link
39
Kvantálási folyamat
40
Kvantálási hiba
41
DAC blokkvázlata
42
DAC típusok R/2R létra negatív visszacsatolású műveleti erősítővel
PWM D/A átalakító
43
ADC típusok Integráló A/D Dual Slope A/D
Szukcesszív Approximációs(SAR) A/D Delta/szigma A/D
44
Közvetlen A/D
45
Kompenzációs A/D
46
Szukcesszív approximácis A/D
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.