Golongan Darah Manusia Penentuan jenis golongan darah manusia berbasis mikrokontroler AT-Mega 8535.

Gambar 2.3. Konfigurasi Pin ATmega8535 [3]

2.2.4 Peta Memori

AVR AT-Mega8535 memiliki ruang pengalamatan memori data dan memori program yang terpisah. Memori data terbagi menjadi 3 buah bagian, yaitu 32 buah register umum, 64 buah register IO, dan 512 byte SRAM Internal. Register keperluan umum menempati space data pada alamat terbawah, yaitu 00 sampai 1F. Sementara itu, register khusus untuk menangani IO dan kontrol terhadap mikrokontroler menempati 64 alamat berikutnya, yaitu mulai dari 20 hingga 5F. Register tersebut merupakan register yang khusus digunakan untuk mengatur fungsi terhadap berbagai peripheral mikrokontroler, seperti kontrol register, timercounter, fungsi-fungsi IO, dan sebagainya. Alamat memori berikutnya digunakan untuk SRAM 512 byte, yaitu pada lokasi 60 sampai dengan 25F. Memori SRAM adalah memori yang digunakan untuk menyimpan data sementara memori kerja. Semua memori “biasa” akan ditempatkan dalam SRAM . Memori program yang terletak dalam flash PEROM tersusun dalam word atau 2 byte karena setiap instruksi memiliki lebar 16-bit atau 32-bit. AVR AT-Mega8535 memiliki 4Kbyte x 16-bit flash PEROM dengan alamat mulai dari 000 sampai FFF. AVR tersebut memiliki 12-bit Program Counter PC sehingga mampu mengalamati isi flash. Memori flash adalah salah satu jenis ROM yang cara penulisan dan penghapusannya secara elektrik. Memori ini digunakan untuk menempatakan kode-kode program yang akan dieksekusi oleh CPU. Namun memori ini juga dapat digunakan untuk menyimpan angka- angka data konstan, string yang ketika chip running tidak pernah diubah. Selain itu, AVR ATMega8535 juga memiliki memori data berupa EEPROM 8-bit sebanyak 512 byte. Alamat EEPROM dimulai dari 000 sampai 1FF. Memori EEPROM dapat digunakan untuk menyimpan data pada saat chip running dan tidak dapat terhapus meskipun catu daya mati non volatile [3].

2.2.5 Status Register SREG

Status Register adalah register berisi status yang dihasilkan pada setiap operasi yang dilakukan ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti CPU mikrokontroler. a. Bit 7-I: Global Interrupt Enable Set bit dilakukan untuk mengaktifkan interupsi. Setelah itu, mengaktifkan pilihan interupsi yang akan gunakan dengan cara bit kontrol registernya dibuat enable secara individu. Apabila terjadi suatu interupsi yang dipicu oleh hardware, maka bit harus dibuat clear dan bit tidak akan mengizinkan terjadinya interupsi, serta instruksi RETI akan melakukan set bit. b. Bit 6-T: Bit Copy Storage Instruksi BLD dan BST menggunakan bit-T sebagai sumber atau tujuan dalam operasi bit . Suatu bit dalam sebuah register GPR dapat disalin ke bit-T menggunakan instruksi BST, dan sebaliknya bit-T dapat disalin kembali ke suatu bit dalam register GPR menggunakan instruksi BLD. c. Bit 5-H: Half Carry Flag d. Bit 4-S: Sign Bit Bit -S merupakan hasil operasi EOR antara flag-N Negatif dan flag V Komplemen dua overflow. e. Bit 3-V: Two’s Complement Overflow Flag Bit ini berguna untuk mendukung operasi aritmatika. f. Bit 2-N: Negative Flag Set bit pada flag-N dilakukan, apabila operasi menghasilkan bilangan negatif. g. Bit I-Z: Zero Flag Set bit dilakukan bila hasil operasi yang diperoleh adalah nol. h. Bit 0-C: Carry Flag Set bit pada carry flag dilakukan, apabila suatu operasi menghasilkan carry.

2.2.6 Timer counter

AVR AT-Mega8535 memiliki tiga buah timercounter, yaitu 2 buah timercounter 0 8 bit dan 1 buah timercounter 116-bit. Ketiga modul ini dapat diatur dalam mode yang berbeda-beda secara individu dan saling mempengaruhi satu sama lain. Selain itu semua timercounter juga dapat difungsikan sebagai interupsi. Timer counter 0 adalah 8 bit timercounter yang multifungsi. Deskripsi untuk timercounter 0 pada ATMega8535 adalah sebagai berikut [3]: a. Sebagai counter 1 kanal. b. Timer dinolkan saat match compare auto reload. c. Dapat menghasilkan gelombang PWM dengan glich-free. d. Frekuensi Generator. e. Prescaler 10-bit untuk timer. f. Intrupsi timer yang disebabkan timer overflow dan match compare. Timercounter 1 adalah 16 bit timercounter yang memungkinkan program pewaktuan lebih akurat. Berbagai fitur dari timercounter1 adalah [3]: a. Desain 16-bit juga memungkinkan 16-bit PWM. b. Dua buah compare unit. c. Dua buah register pembanding. d. Satu buah unit capture unit. e. Timer dinolkan saat match compare auto reload. f. Dapat menghasilkan gelombang PWM dengan glich-free. g. Periode PWM yang dapat diubah-ubah. h. Pembangkit frekuensi. i. Empat buah sumber interupsi TOV1,OCF1A,OCF1B,dan ICF1.