at mega 8

Upload: ndi-rezell

Post on 15-Jul-2015

13 views

Category:

Documents


0 download

TRANSCRIPT

  • 5/13/2018 At Mega 8

    1/9

    2.TEORl PENUNJANG

    2.1 Mikrokontroler AVR ATmegaSAVR merupakan salah satu jenis microcontroller yang di dalarnnya

    terdapat berbagai rnacam fungsi, Perbedaannya dengan mikro yang padalImumnya digunakan seperti MCS 5 L adalah pada AVR tidak perlu menggunakanoscil lator eksternal karena ill dalamnya sudah terdapat internal oscillator. Selainitu kelebihan dari AVR adalah memiliki Power-On Reset, yaitu tidak perlu adanyatornbol reset dari luar karena cukup hanya dengan mematikan supply, rnaka secaraotomatis AVR akan melakukan reset. Untuk beberapa jenis AVR terdapatbeberapa fungsi kbusus seperti ADC, BEPROM sekitar ] 28 bytes sampai dengan512 bytes.

    Dalarn hal ini yang digunakan adalah AVR ATMega8, perbedaannyadengan A VR ATMega8L hanyalah terletak pada besarnya tegangan yangdiperlukan untuk bekerja. Untuk ATMega8 tipe L dapat bekerja pada teganganantara 27V - 5,5V sedangkan untuk ATMega8 hanya dapat bekerja padategangan 4,5V - 5,5V. Berikut adalah garnbar dari blok diagram untuk ATMega8.

    (RESET) PCB(RXD) PD~(TXD) POl(INTO) P02 4(INT1) P03

    (XGKlTO) P04veeGNO

    {XTALll fOSC1) PB6(XTAL2I1iOSC2) P8i

    (Ti) P05(A.INO)P06(A.IN1)P07(ICP1) PBD

    PDIP

    iPC5 (ADC5/SCl.)PC4 (ADC4/S0A)' PC 3 ( ADC3 )'PC2 (ADC -2 " )PCl (.NDel)! p e o (ADG{))GNDIARE.AVCCPB>5 (SOK)P,B4 (MISO)'p83 (MOSllOC2)P,B2 (Bs/OC1B), P ,B 1 ( O C -1 A )

    Garnbar 2.1. Pin ConfigurationSumber : 8-bit Microcontroller with 8K Bytes In-System Programmable FlashATMega8.(AThifega8.pdt). San Jose: Atmel Corporation, 2001. p.2.

    4Universitas Kristen Petra

  • 5/13/2018 At Mega 8

    2/9

  • 5/13/2018 At Mega 8

    3/9

  • 5/13/2018 At Mega 8

    4/9

    5

    v o ,

    t.r:r" " I

    ,,,_ _ ..Garnbar 2.2. Blok Diagram ATMega8

    Sumber: 8-bit Microcontroller with 8K Bytes In-System Programmable FlashATMega8.(ATh1ega8.pdt). San Jose: Atmel Corporation, 200 I.p.3.

    ATMega8 rnemiliki 28 pin yang masing-masing pin-nya memiJiki fungsiyang berbeda-beda baik sebagai port ataupun sebagai fungsi yang lain. Berikutakan dijelaskan tentang kegunaan dari rnasing-rnasing kaki pada ATMega8.

    Universitas Kristen Petra

  • 5/13/2018 At Mega 8

    5/9

    6

    VCCMerupakan supply tegangan untuk digital. GND

    Merupakan ground untuk semua komponen yang membutuhkan grounding. Port B

    Di dalam Port B terdapat XTALI, XTAL2, TOSCL, TOSC2. Jumlah Port BadaLah 8 buah pin mulai dari pin B.O sampai dengan pin B.7. Tiap pin dapatdigunakan sebagai input dan juga output. Port B merupakan sebuah 8-bit bi-directional lIO port dengan internal pull-up resistor. Sebagai input, pin-pinyang terdapat pada port B yang secara ekstemal diturunkan, rnaka akanmengeluarkan arus jika pull-up resistor diakti.fkan. Jib ingin rnenggunakantambahan kristal, maka cukup menghubungkan kaki dari kristaJ ke kaki padapin port B. Namun jika tidak digunakan, maka cukup d.ibiarkan saja.Penggunaan kegunaan dari masing-rnasing kaki ditentukan dari clock fusesetting-n ya.

    Port CPort C merupakan sebuah 7-bit bi-directional J10 port yang di dalam masi.ng-musing pin terdapat pull-up resistor. Jumlah pin-nya hanya 7 buah mulai daripin C.O sampai dengan pin C.6. Sebagai keluaran I output, port C mernilikikarakteristik yang sarna dalam hal kemampuan menyerap arus (sink) ataupunmengeluarkan arus (source).

    Reset I PC6Jib RSTDTSBL Fuse diprogram, rnaka PC6 akan berfungsi sebagai pin VO.Untuk diperhatikan juga bahwa pin ini memiliki karakteristik yang berbedadengan pin-pin yang terdapat pada port C. Namun jib RSTDISBL Fuse tidakdiprogram, rnaka pin ini akan berfungsi sebagai input reset. Dan jika leveltegangan yang masuk ke pin ini rendah dan pulsa yang ada lebih pendek daripulsa minimum, rnaka akan menghasilkan suatu kondisi reset meskipun c1ock-nya tidak bekerja.

    Port 0Port D merupakan 8-bit bi-directional JlO dengan internal pull-up resistor.Fungsi dari port ini sarna dengan port-port yang lain. Hanya saja pada port ini

    Universitas Kristen Petra

  • 5/13/2018 At Mega 8

    6/9

    7

    tidak terdapat kegunaan-kegunaan yang lain. Pad a port ini hanya berfungsisebagai masukan dan keluaran saja atau biasa disebut dengan 1/0.

    AVeePad a pin ini memiliki fungsi sebagai supply tegangan untuk ADe. Untuk pinini harus dihubungkan secara terpisah dengan vee karena pin ini digunakanuntuk analog saja. Bahkan jika ADe pada AVR tidak digunakan, tetap sajadisarankan untuk menghubungkan secara terpisab dengan vee. Caramenghubungkan Avec adalah rnelewati low-pass filter setelah itudihubungkan dengan VCe.

    AREFMerupakan pin referensi analogjika menggunakan ADe.

    Pad a AVR status Register mengandung beberapa informasi mengenai hasildari kebanyakan hasil eksekusi instruksi aritmatik. Informasi ini dapat digunakanuntuk altering arus program sebagai kegunaan untuk meningkatkan performapengoperasian. Perlu diketahui bahwa register ini di-update setelah sernua operasiALU (Arithmetic Logic Unit). Hal tersebut seeprti yang telah tertulis dalamdata sheet khususnya pad a bagian Instruction Set Reference.

    Dalam hal ini untuk beberapa kasus dapat membuang kebutuhanpenggunaan instruksi perbandingan yang telah didedikasikan serta dapatmenghasilkan peningkatan dalam hal kecepatan dan kode yang lebih sederhanadan singkat, Register ini tidak secara otomatis tersimpan ketika rnernasuki sebuahrutin interupsi dan juga ketika menjalankan sebuah perintah setelah kernbali dariinterupsi. Namun hal tersebut harus dilakukan melalui software. Berikut adalahgarnbar Status Register.

    ,It b 3 l 'I l'I T H S V N Z C ISREG~,eadllNrite RI"J F V W R I ' v \ ' PJ W R,W R'W R l'tI R l'NInmalValuc 0

    Gambar 2.3. Status Register ATMega8Sumber: 8-bit Microcontroller with 8K Bytes In-System Programmable FlashATMega8. (ATIvlega8.pdt). San Jose: Atmel Corporation, 200]. p.I I.Akan dijelaskan kegunaan dari masing-masing bit yang terlihat di atas :

    Universitas Kristen Petra

  • 5/13/2018 At Mega 8

    7/9

    7

    tidak terdapat kegunaan-kegunaan yang lain. Pad a port ini hanya berfungsisebagai masukan dan keluaran saja atau biasa disebut dengan 1/0.

    AVeePad a pin ini memiliki fungsi sebagai supply tegangan untuk ADe. Untuk pinini harus dihubungkan secara terpisah dengan vee karena pin ini digunakanuntuk analog saja. Bahkan jika ADe pada AVR tidak digunakan, tetap sajadisarankan untuk menghubungkan secara terpisab dengan vee. Caramenghubungkan Avec adalah rnelewati low-pass filter setelah itudihubungkan dengan VCe.

    AREFMerupakan pin referensi analogjika menggunakan ADe.

    Pad a AVR status Register mengandung beberapa informasi mengenai hasildari kebanyakan hasil eksekusi instruksi aritmatik. Informasi ini dapat digunakanuntuk altering arus program sebagai kegunaan untuk meningkatkan performapengoperasian. Perlu diketahui bahwa register ini di-update setelah sernua operasiALU (Arithmetic Logic Unit). Hal tersebut seeprti yang telah tertulis dalamdata sheet khususnya pad a bagian Instruction Set Reference.

    Dalam hal ini untuk beberapa kasus dapat membuang kebutuhanpenggunaan instruksi perbandingan yang telah didedikasikan serta dapatmenghasilkan peningkatan dalam hal kecepatan dan kode yang lebih sederhanadan singkat, Register ini tidak secara otomatis tersimpan ketika rnernasuki sebuahrutin interupsi dan juga ketika menjalankan sebuah perintah setelah kernbali dariinterupsi. Namun hal tersebut harus dilakukan melalui software. Berikut adalahgarnbar Status Register.

    ,It b 3 l 'I l'I T H S V N Z C ISREG~,eadllNrite RI"J F V W R I ' v \ ' PJ W R,W R'W R l'tI R l'NInmalValuc 0

    Gambar 2.3. Status Register ATMega8Sumber: 8-bit Microcontroller with 8K Bytes In-System Programmable FlashATMega8. (ATIvlega8.pdt). San Jose: Atmel Corporation, 200]. p.I I.Akan dijelaskan kegunaan dari masing-masing bit yang terlihat di atas :

    Universitas Kristen Petra

  • 5/13/2018 At Mega 8

    8/9

  • 5/13/2018 At Mega 8

    9/9

    8

    Bit 7 (J)Merupakan bit Global Interrupt Enable. Bit ioi harus di-set supaya sernuaperintah interupsi dapat dija lankan, Untuk fungsi interupsi individual akandijelaskan pada bagian yang lain. Jib bit ini di-reset, maka sernua perintahinterupsi baik yang individual mallpun yang secara umum akan diabaikan. Bitini akan dibersihkan atau cleared oleh hardware setelah sebuah inrerupsidljnJankan dan akan di-set kernbali leh perintah RETl Bit ini juga dapat di-SC L dan dl-reset rnelalui aplikasi dengan instruksi SEl dan CLI.

    Bil (T)Mernpakan bit Copy Storage. lnstruksi bit Copy Instructions Bill (Bit LoaD)and BST (B1I STore menggunakan bit ini sebagai asal atau iujuan untuk bityang Lelah dioperasikan. Sebuah bit dari sebuah register dalarn Register Filednpat disalin ke dalarn bit Ini dengan menggunakan insiruksi BST, don sebuahbit di dalarn bit ini dapat dlsalin ke dalarn sebuah bit di dalam register padaRegister File dcngan rnenggunakan perintah BLD.

    Bit 5 (H)Merupakan bit HalfCarry Flag. Bit ini rnenandakan sebuah Half Carry dalambe bern po operasi aritrnatika, BiLini berfungsi dalarn ari trnatik BCD.

    BiL4 SMerupakan Sign bit. "Bit ini selalu merupakan sebuah eksklusif dl antaraNegative Flag (N dan Two's omplement OVeJ:!1owFlag (II. 5 = N E 9 V.

    B it J VMerupakan bit Two's omplement Overflow Flag, Bit ini menyediakan fungsiaritmatlka dua kornplernen.

    Bil_ {N)Mernpakan bil Negative FLag. Bit ini mengindlkasiknn sebuah hasil negati edi dalrun sebuah fungsl logika atau aritmatlka,

    Bil I lZ)Mernpakan bu Zer Flag. Bit ini ruengindikas ikan ebuahbasil nol "0' dalamsebuah fungsi ariunauka atau logika.

    Universitas Kristen Petra