Top Banner
SEM tanfolyam 4. előadás ATMEL AVR mikrokontroller család hardver-felépítése
46

SEM tanfolyam 4. előadás

Jan 12, 2016

Download

Documents

anika

SEM tanfolyam 4. előadás. ATMEL AVR mikrokontroller család hardver-felépítése. Mi az mikrokontroller?. Programozható eszköz, melyet program által vezérelhetünk. Mitől több egy uC egy CPU-tól?. memória: flash és eprom interrupt kezelő I/O portok - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: SEM tanfolyam 4. előadás

SEM tanfolyam4. előadás

ATMEL AVR mikrokontroller család hardver-felépítése

Page 2: SEM tanfolyam 4. előadás

Mi az mikrokontroller?

Programozható eszköz, melyet program által vezérelhetünk.

Page 3: SEM tanfolyam 4. előadás

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

Page 4: SEM tanfolyam 4. előadás

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

Page 5: SEM tanfolyam 4. előadás

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

Page 6: SEM tanfolyam 4. előadás

Egy általános AVR felépítése

Page 7: SEM tanfolyam 4. előadás

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

Page 8: SEM tanfolyam 4. előadás

uC PORT lábak

• I/O láb, PORT egyik bitjeként

• Interfész kivezetéseként

Page 9: SEM tanfolyam 4. előadás

uC interrupt

• Esemény hatására jön létre

• Prioritás van az interruptok közt

• Belső és külső interruptok

Page 10: SEM tanfolyam 4. előadás

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

Page 11: SEM tanfolyam 4. előadás

uC timer egységconfig

• Clk prescaler

• Interrupt flags: TIMSK, TIFR

• Control registers: TCCR1A, TCCR1B, TCCR2

• Special function register: SFIOR

Page 12: SEM tanfolyam 4. előadás

uC Watchdog

• Watchdog timer

• Túlcsorduláskor reset impulzust generál

• Kifagyás elleni védelem

Page 13: SEM tanfolyam 4. előadás

Serial Peripheral Interface(SPI)Bus

Fizikai felépítés

Page 14: SEM tanfolyam 4. előadás

Serial Peripheral Interface(SPI)Bus

Időzítési diagram

Page 15: SEM tanfolyam 4. előadás

Serial Peripheral Interface(SPI)Bus

1 Master – 1 Slave

Page 16: SEM tanfolyam 4. előadás

Serial Peripheral Interface(SPI)Bus

1 Master – Multi Slave

Page 17: SEM tanfolyam 4. előadás

Serial Peripheral Interface(SPI)Bus

Megvalósítás AVR-ben

Page 18: SEM tanfolyam 4. előadás

Serial Peripheral Interface(SPI)Bus

Használata AVR programozásban

Page 19: SEM tanfolyam 4. előadás

Serial Peripheral Interface(SPI)Bus

Használata AVR programozásban

Page 20: SEM tanfolyam 4. előadás

Universal Asynchronous Receiver Transmitter(UART)

Kommunikáció felépítése

Page 21: SEM tanfolyam 4. előadás

Fizikai felépítés

Universal Asynchronous Receiver Transmitter(UART)

Page 22: SEM tanfolyam 4. előadás

Felhasználási lehetőségek

Universal Asynchronous Receiver Transmitter(UART)

Page 23: SEM tanfolyam 4. előadás

Felhasználási példa (RS232)

Universal Asynchronous Receiver Transmitter(UART)

Page 24: SEM tanfolyam 4. előadás

Megvalósítás AVR-ben

Universal Asynchronous Receiver Transmitter(UART)

Page 25: SEM tanfolyam 4. előadás

Használata AVR programozásban

Universal Asynchronous Receiver Transmitter(UART)

Page 26: SEM tanfolyam 4. előadás

Használata AVR programozásban

Universal Asynchronous Receiver Transmitter(UART)

Page 27: SEM tanfolyam 4. előadás

Inter-Integrated Circuit(I²C) Bus

Felépítése

Page 28: SEM tanfolyam 4. előadás

Fizikai felépítés

Inter-Integrated Circuit(I²C) Bus

Page 29: SEM tanfolyam 4. előadás

Protocol

Inter-Integrated Circuit(I²C) Bus

Page 30: SEM tanfolyam 4. előadás

Felhasználás

- hőmérséklet mérés - memória illesztés - általános kommunikáció - ADC/DAC - RTC

Inter-Integrated Circuit(I²C) Bus

Page 31: SEM tanfolyam 4. előadás

Használata AVR programozásban

Inter-Integrated Circuit(I²C) Bus

Page 32: SEM tanfolyam 4. előadás

Használata AVR programozásban

Adatlap 170.oldal (ATmega8)

Inter-Integrated Circuit(I²C) Bus

Page 33: SEM tanfolyam 4. előadás

Pulse Width Modulation (PWM)

Elvi működés

Page 34: SEM tanfolyam 4. előadás

Megvalósítás

Pulse Width Modulation (PWM)

Page 35: SEM tanfolyam 4. előadás

Felhasználás

- motor vezérlés - LED vezérlés: fényerő szabályzás - feszültségszabályozás

Pulse Width Modulation (PWM)

Page 36: SEM tanfolyam 4. előadás

Használata AVR programozásban

Pulse Width Modulation (PWM)

Page 37: SEM tanfolyam 4. előadás

Használata AVR programozásban

#define PULSE_WIDTH 0x40void pwm_start(){

OCR1AL = PULSE_WIDTH; &nbsp; //Load Pulse widthOCR1AH = 0;DDRD |= (1<<5); //PortD.5 as o/pTCCR1A = 0x81; //8-bit, Non-Inverted PWMTCCR1B = 1; //Start PWM

}

Pulse Width Modulation (PWM)

Page 38: SEM tanfolyam 4. előadás

A/D és D/A konverterek

link

Page 39: SEM tanfolyam 4. előadás

Kvantálási folyamat

Page 40: SEM tanfolyam 4. előadás

Kvantálási hiba

Page 41: SEM tanfolyam 4. előadás

DAC blokkvázlata

Page 42: SEM tanfolyam 4. előadás

DAC típusok

• R/2R létra negatív visszacsatolású műveleti erősítővel

• PWM D/A átalakító

Page 43: SEM tanfolyam 4. előadás

ADC típusok

• Integráló A/D

• Dual Slope A/D

• Szukcesszív Approximációs(SAR) A/D

• Delta/szigma A/D

Page 44: SEM tanfolyam 4. előadás

Közvetlen A/D

Page 45: SEM tanfolyam 4. előadás

Kompenzációs A/D

Page 46: SEM tanfolyam 4. előadás

Szukcesszív approximácis A/D