Port Sebagai Input Output Digital Interupsi

Gambar 2.5. Konfigurasi Data AVR AT Mega 8535 2.6.2. Memori Program ATmega8535 berisi 8K bytes On-Chip di dalam sistem Memoriflash Reprogrammable untuk penyimpanan program. Karena semua AVR instruksi adalah 16 atau 32 bits lebar, Flash adalah berbentuk 4K x16. Untuk keamanan perangkat lunak, Flash Ruang program memori adalah dibagi menjadi dua bagian, bagian boot program dan bagian aplikasi program dengan alamat mulai dari 000 sampai FFF. Flash Memori mempunyai suatu daya tahan sedikitnya 10,000writeerase Cycles. ATmega8535 Program Counter PC adalah 12 bit lebar, alamat ini 4K lokasi program memori. Gambar 2.6. Memori Program AT Mega 8535

2.7. Port Sebagai Input Output Digital

Universitas Sumatera Utara ATmega8535 mempunyai empat buah port yang bernama PortA, PortB, PortC, dan PortD. Keempat port tersebut merupakan jalur bi-directional dengan pilihan internal pull-up. Tiap port mempunyai tiga buah register bit, yaitu DDxn, PORTxn, dan PINxn. Huruf ā€˜xā€™ mewakili nama huruf dari port sedangkan huruf ā€˜nā€™ mewakili nomor bit. Bit DDxn terdapat pada IO address DDRx, bit PORTxn terdapat pada IO address PORTx, dan bit PINxn terdapat pada IO address PINx. Bit DDxn dalam regiter DDRx Data Direction Register menentukan arah pin. Bila DDxn diset 1 maka Px berfungsi sebagai pin output. Bila DDxn diset 0 makaPx berfungsi sebagai pin input.

2.8. Interupsi

Interupsi adalah suatu kejadian atau peristiwa yang menyebabkan mikrokontroler berhenti sejenak untuk melayani interupsi tersebut. Cara menggunakan interupsi adalah, harus mengetahui sumber-sumber interupsi, vektor layanan interupsi dan yang terpenting rutin layanan interupsi, yaitu subrutin yang akan dikerjakan bila terjadi interupsi . Analoginya adalah sebagai berikut, seseorang sedang mengetik laporan, mendadak telephone berdering dan menginterupsi orang tersebut sehingga menghentikan pekerjaan mengetik dan mengangkat telephone. Setelah pembicaraan telephone selesai maka orang tersebut kembali meneruskan pekerjaannya mengetik. Demikian pula pada sistem mikrokontroler yang sedang menjalankan programnya, saat terjadi interupsi, program akan berhenti sesaat, melayani interupsi tersebut dengan menjalankan program yang berada pada alamat yang ditunjuk oleh vektor dari interupsi yang terjadi hingga selesai dan kembali meneruskan program yang terhenti oleh interupsi tadi. Seperti yang terlihat Gambar di bawah ini : Universitas Sumatera Utara Gambar 2.7. Interrupt Service Routine Pada AVR terdapat 3 pin interupsi eksternal, yaitu INT0, INT1,dan INT2. Interupsi eksternal dapat dibangkitkan apabila ada perubahan logika atau logika 0 pada pin interupsi pengaturan kondisi keadaan yang menyebabkan terjadinya interupsi eksternal diatur oleh register MCUCR MCU Control Register.

2.9. Sensor Cahaya