Atmel AVR
Atmel kehitti AVR-mikrokontrolleriarkkitehtuurin vuonna 1996. Se perustuu Harvard-mikrokontrolleriarkkitehtuuriin. AVR oli yksi ensimmäisistä mikro-ohjainperheistä, jotka käyttivät ohjelman tallentamiseen piirin sisäistä flash-muistia vastakohtana muiden silloisten mikro-ohjainten käyttämille kertakäyttöisesti ohjelmoitaville ROM-, EPROM- tai EEPROM-muisteille.
Monet luulevat, että AVR on lyhenne sanoista Alf (Egil Bogen) ja Vegard (Wollan) Risc-prosessori".
Tämä arkkitehtuuri korvaa vanhemman MCS-51-arkkitehtuurin. Yksi MCS-51:n konesykli kestää 12 kellojaksoa, ja suurin osa ohjeista suoritetaan yhdessä konesyklissä.
AVR-mikrokontrollerit (MCU:t) voivat myös suorittaa suurimman osan käskyistä yhdellä konesyklillä, mutta yksi konesykli kestää vain yhden kellojakson. Suorituskyky kellojaksoa kohti on AVR:llä 12 kertaa suurempi.
Ytimessä on 32 yleiskäyttöistä rekisteriä, jotka on liitetty suoraan ALU:hun. Sen avulla voidaan käyttää kahta itsenäistä rekisteriä ja suorittaa niitä koskevat ohjeet yhdessä konesyklissä.
Atmel AVR ATmega8, 28-nastainen DIP.
Perusperheet
tinyAVR
- 0,5-8 kB ohjelmamuisti
- enintään 0,5 kB SRAM
- enintään 0,5 kB EEPROM
- enintään 20 MHz
- 6-32 nastapakkaus
megaAVR
- 4-256 kB ohjelmamuisti
- 0,5-16kB SRAM
- 0,5-4 kB EEPROM
- enintään 20 MHz
- 20-100-nastainen paketti
XMEGA
- 16-384kB ohjelmamuisti
- 2-32 kB SRAM
- ulkoinen väyläliitäntä jopa 16 Mt:n SDRAM SRAM-muistia varten.
- 1-4 kB EEPROM
- enintään 32 MHz
- 44-100 nastapakkaus
Ominaisuudet
Jokaisessa AVR:ssä on joitakin tulo-/lähtöportteja. Portilla on enintään 8 fyysistä pinniä pakkauksessaan. Jokainen nasta voidaan konfiguroida tuloksi tai lähdöksi. Jos nastaa käytetään tulona, se voi kytkeä sisäänrakennetut pull-up-vastukset päälle rekisterin PORTx kautta. Jos nasta on konfiguroitu ulostuloksi, se voi käsitellä enintään 40 mA:n kuormitusta nastaa kohti ja enintään 100 mA:n kuormitusta portin kaikkien nastojen osalta.
A/D-muunnin
- 10-bittinen (tinyAVR, megaAVR), jossa on jopa 8 kanavan multipleksijärjestelmä
- 12-bittinen (XMEGA), jossa on jopa 16 kanavan multipleksi
Ajastimet/laskurit (8- tai 16-bittiset)
- Käyttäjät voivat konfiguroida sen PWM, laskuri tai ajastin.
- Yksinkertaisessa PWM-tilassa laskentarekisteri toimii pysähtymättä ja sitä verrataan toiseen rekisteriin. Jos laskentarekisteri on suurempi kuin toinen rekisteri, nasta Ocx asetetaan arvoon "1". Muuna aikana pin Ocx asetetaan arvoon "0".
- Laskurilla on jokin ulkoinen lähde, kuten valokenno, ja se voi laskea valokennon ohittaneiden ihmisten määrän.
- Ajastin antaa pulssit täsmälleen ajallaan. Sitä käytetään kellosovellusten ohjelmointiin.
TWI - Two Wire Interface Tämä käyttää samaa protokollaa kuin 2IC ja sitä voidaan käyttää 2IC-liitäntänä.
UART/USART UARTia voidaan käyttää RS232/RS485-viestintään.
SPI - Sarjaohjattu oheisliitäntä
- erittäin nopea sarjaväylä, jota käytetään tiedonsiirtoon laitteiden kanssa käytävässä viestinnässä.
- voit polttaa/lukea ohjelmaa ohjelmamuistiin tai EEPROM-muistiin tämän väylän kautta.
USI - Yleinen sarjaliitäntä
- käytetään kaksi- tai kolmijohtimiseen synkroniseen tiedonsiirtoon
JTAG
- käyttöliittymä online-virheenkorjausta varten
D/A-muunnin
- 12-bittinen (vain XMEGA), jossa on jopa 2 kanavan multipleksijärjestelmä
Aiheeseen liittyvät sivut
- Arduino
Kysymyksiä ja vastauksia
K: Milloin AVR-mikrokontrolleriarkkitehtuuri kehitettiin?
V: Atmel kehitti AVR-mikrokontrolleriarkkitehtuurin vuonna 1996.
K: Mihin arkkitehtuuriin AVR-mikrokontrolleri perustuu?
V: AVR-mikrokontrolleri perustuu Harvard-mikrokontrolleriarkkitehtuuriin.
K: Mikä erottaa AVR-mikrokontrollerin muista mikrokontrollereista sen kehittämisen aikaan?
V: AVR-mikrokontrolleri käyttää ohjelman tallentamiseen piirin sisäistä flash-muistia, toisin kuin muissa mikrokontrollereissa tuolloin käytetyt kertakäyttöisesti ohjelmoitavat ROM-, EPROM- tai EEPROM-muistit.
K: Mikä on lyhenteen AVR yleisesti uskottu merkitys?
V: Monet uskovat, että AVR tarkoittaa Alf (Egil Bogen) ja Vegard (Wollan) Risc-prosessoria.
K: Minkä arkkitehtuurin AVR-mikrokontrolleri korvasi?
V: AVR-mikrokontrolleri korvasi vanhemman MCS-51-arkkitehtuurin.
K: Kuinka monta kellosykliä yksi MCS-51:n konesykli kestää?
V: Yksi MCS-51:n konesykli kestää 12 kellojaksoa.
K: Mikä on AVR-mikrokontrollerien etu MCS-51:een verrattuna suorituskyvyn osalta kellojaksoa kohden?
V: Suorituskyky kellojaksoa kohti on 12 kertaa suurempi AVR-mikrokontrollereilla.