Atmel AVR

200px|nirbing|ka
200px|nirbing|ka

**Atmél AVR** ya iku chip Mikrokontroler tunggal saka modifikasi arsitèktur Harvard 8-bit RISC sing digarap kaliyan déveloper Atmel ning taun 1996. AVR iku chip Mikrokontroler kapisan sing ana lan bisa dianggo kabèh wong (produk masal) kanggo Flash-Mémory ing program panyimpenan,  béda  kaliyan ROM, EPROM, atuwa EEPROM sing dikanggo mikrokontroler liyané.

## Sajarah
Arsitéktur AVR sing digarap kaliyan loro pelajar saka Intitut Teknologi Nurwègen (NTH) ya iku Alf-Egil Bogen and Vegard Wollan.
Asliné AVR MCU iku digarap kaliyan pabrikasi lokal ASIC saka Trodeim, Norway diceluki Nordic VLSI ing zamané, saiki jenengé Nordic Semiconductor. Bogen lan Nolan sing nggarap AVR iku nyambut gawé dadi pelajar ing perusahaan sing nduwé jeneng μRISC (Micro RISC) lan wis katerakaké ing sillicon IP/Building block saking Nordin VLSI. Nalika tèknologi iku wis didol kaliyan Atmel saka Nordic VLSI, njroning arsitèktur komponén iku tetep dipaténaké kaliyan Bogen lan Wollan ing Atmel Norway, panggonané perusahaan Atmel. 
Para penggarapé nyambut gawé ora tetep kaliyan panyerat arsitèktur ing IRS Systerms kanggo mastikaké bahwa instruksi sing sing disediakaké kanggo kompilasi luwih éfisién saka basa pemprograman tingkat ndhuwur . 
Cathetan: Artiken panganggo AVR wonten ing mriki racaké mengacu padha 8-bit RISC line Atmelsaka mikrokontroller Atmel AVR.
AVR ing kapisan digarap saka Atmel AVR ya iku AT90S8515, sing nganggo 40 pin DIP sikil sing padha fungsine kaliyan mikrokontroller 8051, kalebu uga ekternal multipleks address lan data bus. Polaritas saka tombol RESET iku berlawanan (8051 nduwé RESET aktif ndhuwur, benthen kaliyan AVR sing duwé RESET aktif cendhèk) nanging adidasare pin mikroprosessor iku padha.

## Overview Piranti
Atmel AVR iku dimodifikasi kaliyan Mesin Arsitèktur Harvard nalika program lan data disimpen ing njero sistem mémory fisik sanès saka liyané ing njero sistem sing bénten, nanging tetep bisa maca item data saka memory program nganggé instruksi mirunggan.

### Landasané Kulawarga
ana 6 klasifikasi sing diduwèni AVR padha lumrahé:

* **tinyAVR(AVR cilik)** — ATtiny séri cilik
** 0.5–16&nbsp;kB program mémory
** 6–32-pin package
** peripéral sing duwé limit
** Current lineup
* **megaAVR (AVR gedhi)** — ATmega séri gedhi
** 4–512&nbsp;kB program memory
** 28–100-pin package
** Dhuwé instruksi dawa (saged nampa instruksi lan pentunjuk sing punjul program gedhi)
** Extensive peripheral set
* **XMEGA** — séri ATxmega
** 16–384&nbsp;kB program mémory
** 44–64–100-pin packagé (A4, A3, A1)
** fitur sing diduwèni iku didhawakaké, kaya ta DMA, "Event sistem" lan panjurung kriptografi.
** piranti peripéral amba karo DACs
* **aplikasi-spesifik AVR**
** MegaAVR sing nganggo spésial fitur sing ora ditemuaké AVR liyané, kaya ta LCD Controller, USB Controller, PWM Advance, CAN lan liya-liyané.
* **FPSLIC (AVR with FPGA)**
** FPGA 5K nganti 40K gate (maca: gét)
** SRAM kanggo AVR program kodhe, bénten kaliyan AVR liyané
** AVR core saged lumaku nganti 50&nbsp;MHz 
* **32-bit AVRs**

:ing taun 2006 Atmel ngetokaké mikrikontroler berbasis saka mikon anyar, 32-bit, arsitèktur AVR32. AVR iku kalebu SIMD lan instruksi DSP, bersama dengan audio lan fitur pemrosésan video liyané. kulawarga 32-bit iku piranti sing dilebokaké kanggo nyaingi prosessor berbasis ARM. rerangkèn instruksiné padha karo RISC core liyané, nanging produk iku ora kompatibel karo AVR lan variasi ARM coré liyané.

250px|jmpl|ki|arsitèktur atmega 128B

### Arsitektur Piranti
Flash, EEPROM, and SRAM kabèh kalebung ing single chip, ngeguwakaké kabutuhan kanggo èksternal mémori ing njroning aplikasi.

## Program Penyimpanan
Kongkonan program kalebu ing non-volatile flash memory. Nalika MCUs iku 8bit, kabéh instruksi njupuk siji utawa loro tembung-tembung 16bit. ukuran program memory iku jlèntrèhaké jeneng sing ana ing piranti iku, kados ta (ATMéga 64x iku duwé 64 KB saka flash mémory lan nalika piranti iku jenengé ATMéga32, ATMéga iku saka 32Bit Flash Memory)
Ora ana ketentuan kanggo Off-Chip mémory program, kabèh kodhe digarap karo AVR core musthi ana ing njero chip flash. Nanging, imitasi iku ora bisa didawuhaké ing kabèh AT94 FPSLIC AVR/FPGA chip.

## Data saka Mémori internal 
Ruang Data address terdiri saka règister file, punjul siji I/O règister, lan SRAM.

## Register Internal 
Atmel AVRs iku duwé 32 Register Byte lan diklasifikasikake minangka piranti 8-bit RISC.
ing akèh-akehé tipe saka Arsitektur AVR, sistem kerja Régister sing dipetakaké ing kapisan ya iku 32 memori address (000016–001F16) dipelokaké karo register 64 I/O (002016–005F16).
SRAM sing mbener dimulai nalika pretilan-pretilan register (address 006016) wis dimulai. (wigati: ruwang I/O terregistrasi luwih akèh tinimbang piranti sing luwih gedhi utawa akèh, ing adicara iku ya iku memori I/O sing dipetakaké register arep netepi sapérangan ruwang address SRAM).

## piranti pengembangan lan kit evaluasi
Ofisial Atmel AVR piranti pengembangan lan kit evaluasi duwé akèh stater kit lan piranti debugging karo panjurung kanggé piranti AVR sing kaya:

### STK200 starter kit
STK200 starter kit lan sistem pengembang duwé DIP cup-cupan piranti Chip AVR ing 40, 20, utawa 8-fungsiné pin. Papan punika duwé  sumber frèkuènsi, 8 biji light-émitting diode, 8 tombol kalebon, duwé RS-232 port, salah sawijining sokèt 32k SRAM lan sambungan standar I/O. Chip punika saged dipunprogam nganggo program doglé pinuju parallél-port.

## Bibliografi
* *Embedded C Programming and the Atmel AVR*; Richard H Barnett, Sarah Cox, Larry O'Cull; 560 pages; 2006; ISBN 978-1-4180-3959-2.
* ''C Programming for Microcontrollers Featuring ATMEL's AVR Butterfly and WinAVR Compiler*; Joe Pardue; 300 pages; 2005; ISBN 978-0-9766822-0-2.
* *Atmel AVR Microcontroller Primer: Programming and Interfacing*; Steven F Barrett, Daniel Pack, Mitchell Thornton; 194 pages; 2007; ISBN 978-1-59829-541-2.
* *Arduino: A Quick Start Guide''; Maik Schmidt; 276 pages; 2011; ISBN 978-1-934356-66-1.

## Cathethan Sikil
## Ndelok Sisan
* Arduino
* AVR32
* Atmel

## Link Njaba
;Primary Sources
* Atmel AVR homepage
* AVR Freaks community
* Atmel AVR Serial Port Programmer
* Atmel AVR USBasp USB Port Programmer
* Arduino community
* , numerous AVR links
* Why you need a clock source for the AVR?
* AVR Basics-AVR guide for beginners
* Simplest AVR programmer Using LPT Port 
* Atmega8 Breadboard Tutorial