6. Status Register SREG
Status register adalah register berisi status yang dihasilkan pada setiap operasi yangdilakukan ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti
CPUmikrokontroler.
Gambar 2.9 Status Register ATMega 16
a. Bit 7 – I : Global Interrupt Enable
Jika bit Global Interrupt Enable diset, maka fasilitas interupsi dapat dijalankan. Bit ini akan clear ketika ada interrupt yang dipicu dari hardware, setelah program interrupt
dieksekusi, maka bit ini harus di set kembali dengan instruksi SEI.
b. Bit 6 – T : Bit Copy Storage
Instruksi bit copy BLD dan BST menggunakan bit T sebagai sumber atau tujuan dalam operasi bit.
c. Bit 5 – H: Half Carry Flag d. Bit 4 – S : Sign Bit
Bit S merupakan hasil exlusive or dari Negative Flag N dan Two’s Complement Overflow Flag V.
a. Bit 3 – V : Two’s Complement Overflow Flag
Digunakan dalam operasi aritmatika
b. Bit 2 – N : Negative Flag
Jika operasi aritmatika menghasilkan bilangan negatif, maka bit ini akan set.
c. Bit 1 – Z : Zero Flag
Jika operasi aritmatika menghaslkan bilangan nol, maka bit ini akan set.
d. Bit 0 – C : Carry Flag
Jika suatu operasi menghasilkan Carry, maka bit ini akan set.
2.4 LCD Liquid Crystal Display
LCD Liquid Crystal Display adalah suatu jenis media tampil yang menggunakan kristal cair sebagai penampil utama. LCD sudah digunakan diberbagai bidang misalnya alal–
alat elektronik seperti televisi, kalkulator, ataupun layar komputer. Pada bab ini aplikasi LCD
Universitas Sumatera Utara
yang dugunakan ialah LCD dot matrik dengan jumlah karakter 2 x 16. LCD sangat berfungsi sebagai penampil yang nantinya akan digunakan untuk menampilkan status kerja alat. Adapun
fitur yang disajikan dalam LCD ini adalah : a. Terdiri dari 16 karakter dan 2 baris.
b. Mempunyai 192 karakter tersimpan. c. Terdapat karakter generator terprogram.
d. Dapat dialamati dengan mode 4-bit dan 8-bit. e. Dilengkapi dengan back light.
Gambar 2.10 LCD Liquid Crystal Display Sebelum menggunakan modul LCD ini, power supply 5V DC harus diberikan sebagai
sumber arusnya seperti yang ditunjukkan gambar 2.10.
Gambar 2.11 Hubungan Power Supply ke LCD Tabel 2.7 Deskripsi pin pada LCD
Pin Deskripsi
1 Ground
2 Vcc
3 Pengatur kontras
Universitas Sumatera Utara
4 “RS” InstructionRegister Select
5 “RW” ReadWrite LCD Registers
6 “EN” Enable
7-14 Data IO Pins
15 Vcc
16 Ground
Untuk mengirim data ke LCD jalur ini harus low 0 dan kedua jalur lainnya diset dan data diletakkan pada data bus. Ketika kedua jalur lainnya benar sudah siap, EN dibuat high 1
dan ditunggu untuk beberapa saat dan kemudian dikembalikan ke low 0.Jalur RS Register Geser digunakan untuk menyatakan bahwa data dianggap sebagai perintah bila RS low
0.Ketika RS high 1 kondisi ini menyatakan bahwa data yang sedang dikirim adalah data text yang hendak ditampilkan pada layar LCD.Jadi untuk menampilkan huruf “T” pada layar,
RS harus diset high 1.Jalur RW ReadWrite adalah jalur control yang keadaannya low 0 memberi informasi bahwa bus data sedang ditulis ke LCD.Bila RS high 1 menyatakan
bahwa data sedang dibaca dari LCD. Pada data bus delapan data dinyatakan dengan DB0, DB1, DB2, DB3, DB4, DB6 dan DB7. Cara menyambungkan mikrokontroler 8051 dengan
LCD yang dalam ini diambil model HD 44780U ditunjukan pada gambar Gambar 2.12
Gambar 2. 12 Penyambungan mikrokontroler dengan LCD
2.3.1 Cara kerja LCD Liquid Crystal Display
Pada aplikasi umumnya RW diberi logika rendah “0”.Bus data terdiri dari 4-bit atau 8- bit.Jika jalur data 4-bit maka yang digunakan ialah DB4 sampai dengan DB7. Sebagaimana
terlihat pada table diskripsi, interface LCD merupakan sebuah parallel bus, dimana hal ini
Universitas Sumatera Utara
sangat memudahkan dan sangat cepat dalam pembacaan dan penulisan data dari atau ke LCD. Kode ASCII yang ditampilkan sepanjang 8-bit dikirim ke LCD secara 4-bit atau 8 bit pada
satu waktu. Jika mode 4-bit yang digunakan, maka 2 nibble data dikirim untuk membuat
sepenuhnya 8-bit pertama dikirim 4-bit MSB lalu 4-bit LSB dengan pulsa clock EN setiap nibble
nya. Jalur kontrol EN digunakan untuk memberitahu LCD bahwa mikrokontroller mengirimkan data ke LCD.Untuk mengirim data ke LCD program harus menset EN ke
kondisi high “1” dan kemudian menset dua jalur kontrol lainnya RS dan RW atau juga mengirimkan data ke jalur data bus.
Saat jalur lainnya sudah siap, EN harus diset ke “0” dan tunggu beberapa saat tergantung pada datasheet LCD, dan set EN kembali ke high “1”. Ketika jalur RS berada
dalam kondisi low “0”, data yang dikirimkan ke LCD dianggap sebagai sebuah perintah atau instruksi khusus seperti bersihkan layar, posisi kursor dan lain-lain. Ketika RS dalam
kondisi high atau “1”, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar. Misal, untuk menampilkan huruf “A” pada layar maka RS harus diset ke “1”. Jalur kontrol
RW harus berada dalam kondisi low 0 saat informasi pada data bus akan dituliskan ke LCD. Apabila RW berada dalam kondisi high “1”, maka program akan melakukan query
pembacaan data dari LCD. Instruksi pembacaan hanya satu, yaitu Get LCD status membaca status LCD, lainnya
merupakan instruksi penulisan.Jadi hampir setiap aplikasi yang menggunakan LCD, RW selalu diset ke “0”.Jalur data dapat terdiri 4 atau 8 jalur tergantung mode yang dipilih
pengguna, DB0, DB1, DB2, DB3, DB4, DB5, DB6 dan DB7.Mengirim data secara parallel baik 4-bit atau 8-bit merupakan 2 mode operasi primer. Untuk membuat sebuah aplikasi
interface LCD, menentukan mode operasi merupakan hal yang paling penting.
Mode 8-bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin IO 3 pin untuk kontrol, 8 pin untuk
data.Sedangkan mode 4 bit minimal hanya membutuhkan 7-bit 3 pin untuk kontrol, 4 pin untuk data. Bit RS digunakan untuk memilih apakah data atau instruksi yang akan ditransfer
antara mikrokontroller dan LCD. Jika bit ini di set RS = 1, maka byte pada posisi kursor LCD saat itu dapat dibaca atau ditulis. Jika bit ini di reset RS = 0, merupakan instruksi yang
dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca. Untuk menampilkan karakter pada LCD ada beberapa algoritma yang harus dijalankan. Algoritma ini dilakukan
dengan memberikan nilai logika 0 atau 1 pada pin yang bersangkutan. Algoritma untuk penampilan karakter ini antara lain:
1. Mengatur display LCD, cursor dan blink.
Universitas Sumatera Utara
Tabel 2.8 Pengaturan Display LCD E
R S
R W
D B7
D B6
D B5
D B4
D B3
D B2
D B1
D B0
1 →0
1 D
C B
Keterangan: D: D=0 display mati dan D=1 display hidup
C: C=0 cursor mati dan C=1 cursor hidup B: B=0 blink mati dan B=1 blink hidup
2. Mengatur karakter yang akan ditampilkan
Tabel 2.9 Pengaturan Display LCD E
R S
R W
D B7
D B6
D B5
D B4
D B3
D B2
D B1
D B0
1 →0
Nilai berdasarkan CGROM
Keterangan: Nilai dari DB0 sampai DB7 yang dimasukkan nantinya akan mengatur tampilan karakter yang berkorespondensi dengan kode karakter CGROM pada chip LCD.
Kode karakter CGROM diberikan pada gambar 8.10 yang terdiri dari kolom yang menunjukkan DB6 – DB7 dan baris yang menunjukkan DB0 – DB3.
Instruksi pembacaan hanya satu, yaitu Get LCD status membaca status LCD, lainnya merupakan instruksi penulisan.Jadi hampir setiap aplikasi yang menggunakan LCD, RW
selalu diset ke “0”.Jalur data dapat terdiri 4 atau 8 jalur tergantung mode yang dipilih pengguna, DB0, DB1, DB2, DB3, DB4, DB5, DB6 dan DB7.Mengirim data secara parallel
baik 4-bit atau 8-bit merupakan 2 mode operasi primer. Untuk membuat sebuah aplikasi interface
LCD, menentukan mode operasi merupakan hal yang paling penting. Mode 8-bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah
aplikasi dan setidaknya minimal tersedia 11 pin IO 3 pin untuk kontrol, 8 pin untuk data.Sedangkan mode 4 bit minimal hanya membutuhkan 7-bit 3 pin untuk kontrol, 4 pin
untuk data. Bit RS digunakan untuk memilih apakah data atau instruksi yang akan ditransfer antara mikrokontroller dan LCD. Jika bit ini di set RS = 1, maka byte pada posisi kursor
Universitas Sumatera Utara
LCD saat itu dapat dibaca atau ditulis. Jika bit ini di reset RS = 0, merupakan instruksi yang dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca.
2.4 Software Desain PCB Printed Circuit Board
Papan sirkuit cetak bahasa Inggris: printed circuit board atau PCB adalah sebuah papan yang penuh dengan sirkuit dari logam yang menghubungkan komponen elektronik satu
sama lain tanpa ka bel. Untuk mendesain PCB dapat digunakan software yang dapat di- download di internet secara gratis . Tampilan software dapat dilihat pada gambar 2.15
dibawah ini :
Gambar 2.13 Tampilan software Cara menggunakan software ini terlebih dahulu yang dikerjakan adalah mendesain
skematik rangkaian, setelah itu memindahkannya ke dalam bentuk board dan mendesain tata letak komponen sesuai keinginan tetapi harus sesuai jalur rangkaian nya agar rangkaian dapat
berfungsi sesuai dengan skematiknya. Setelah itu didesain layout PCB nya , barulah siap di- print
dan di-transfer ke PCB. Pada proses pentransferan layout ke PCB dapat digunakan kertas Transfer Paper.
2.5 Bahasa Pemrograman