BAB 2 LANDASAN TEORI
2.1 Dot Matriks atau Matriks LED Matriks LED adalah sejumlah LED yang disusun dalam kolom dan baris. LED-LED ini kemudian digunakan untuk menampilkan gambar-gambar atau tulisan yang biasanya ditampilkan dengan efek animasi tertentu. Oleh karena itu, matriks LED sering disebut sebagai Running Text atau Moving Sign.
Gambar 2.1 Dot Matriks MXLED merupakan simulator dari rangkaian matriks LED. Dengan simulator ini, kita bisa mencoba program pengendali matriks LED walaupun tanpa hardware. MXLED membuat matriks LED dengan cara menyusun LED pada jalur-jalur vertikal dan jalur-jalur horisontal. Kita harus menyediakan jalur horisontal sebanyak jumlah baris (kita buat delapan baris). Kemudian, kita juga
Universitas Sumatera Utara
membuat jalur vertikal sebanyak jumlah kolom. Susunan jalur-jalur vertikal dan horisontal tersebut adalah seperti gambar berikut:
Gambar 2.2 Susunan Jalur-Jalur Vertikal Dan Horisontal Jalur-jalur vertikal dan horisontal tersebut tidak saling terhubung. Kemudian, pada setiap titik pertemuan antara jalur vertikal dan horisontal tersebut, pasanglah sebuah LED dengan cara menghubungkan anoda ke jalur horisontal dan katoda ke jalur vertikal. Pemasangan LED tersebut adalah seperti gambar berikut:
Gambar 2.3 Cara Pemasangan LED
Universitas Sumatera Utara
Dengan memasang LED seperti di atas, LED yang menyala adalah LED dimana anodanya terhubung pada jalur horisontal yang tinggi (1) dan katodanya terhubung pada jalur vertikal yang rendah (0). Hanya ada satu jalur vertikal yang rendah pada satu waktu, sedangkan jalur-jalur lainnya harus tetap tinggi. Jalur vertikal yang rendah ini kita sebut sebagai kolom aktif. Berbeda dengan jalur vertikal, jalur horisontal yang terdiri dari delapan baris ini boleh bernilai tinggi atau rendah tanpa harus memperhatikan jalur-jalur horisontal lainnya.
2.2 Moving text dengan IC 74HC595 Moving text dengan mode scanning lebih banyak digunakan untuk tujuan komersil dibanding dengan mode static, tetapi masing-masing ada kelemahan dan kelebihannya. Berikut ini adalah gambar rangkaian atau skema dari moving text mode scan dengan menggunakan IC TTL 74HC595, untuk driver kolom juga
74HC959
9 8 13 16 10 1112 14
7 6 5 4 3 2 1 15
ULN2803
14 15 16
slx latch clock 5 VOLT GND
18
17
8 7 6 5 4 3 2 1
13
12
11
untuk driver baris yang dibantu oleh ULN2803
9
TEST LED 7
6
5
4
3
2
1 15 7
74HC959 9
8 13 16 10 11 12 14
6
5
4
3
2
1 15 7
74HC959 9
8 13 16 10 11 12 14 9
6
5
4
3
2
1 15 7
74HC959 8 13 16 10 11 12 14
6
5
4
3
2
1 15
74HC959 9
8 13 16 10 11 12 14
+ -
Gambar 2.4 Rangkaian Moving Text Mode Scan dengan IC TTL 74HC595
Universitas Sumatera Utara
Salah satu kelebihan dari rangkaian ini adalah jumlah kabel hanya 5 1 . Vcc 2. GND 3. DATA 4. Clock 5. Latch Prinsip pemrogramannya adalah sebagai berikut, kirim baris dan kirim kolom secara serentak sebanyak jumlah kolom atau kirim kolom dan kirim baris secara serentak sebanyak jumlah baris. Kalau eeprom bawaan dari atmega32 masih terasa kurang, dapat ditambahkan memory eeprom external seperti 24c64, demikian juga jika RTC bawaan atmega32 kurang memuaskan, dapat ditambahkan DS1307 sebagai RTC external. IC 74 595 dipasang pada bagian belakang PCB untuk menghemat PCB sbb:
Gambar 2.5 Rangkaian Belakang PCB
Universitas Sumatera Utara
Pemasangan kabel dan pengujian dot matriks dapat dilakukan dengan cara menguhubungkan kabel pada dot matriks tersebut. Agar kita dapat membuktikan antara kolom dan baris hidup atau tidak. Atau menggunakan MATRIX LED 8X8 yang sudah jadi, sbb:
Gambar 2.6 Rangkaian Kabel yang dipasang Ke Dot Matriks Selanjutnya kita menguji kolom dan baris, dengan ATmega32 untuk membuktikan atau mengetes kolom dan baris pada dot matriks menyala atau tidak led pada kordinat..
Gambar 2.7 Rangkaian Moving Text Menggunakan Dot Matriks
Universitas Sumatera Utara
2.2.1
Program Menyalanya Led Pada Kordinat
kol = 0x01;
// posisi kolom scanning
while (1) { // Place your code here kar = 0x55;
// data yang mau dikirim (baris)
while (1) { soe = 0; shift_out(kar); // kirim baris shift_out(kol); // kirim kolom soe = 1; delay_ms(150); kol = kol << 1; if (kol == 0) kol = 0x01; } } }
Universitas Sumatera Utara
Berikut ini adalah tampilan dari program diatas pada display led
Gambar 2.8 Tampilan Program Baris Dan Kolom
2.3 Mikrokontroler ATMega 32A Mikrokontroler merupakan sebuah single chip yang didalamya telah dilengkapi dengan CPU (Central Prosessing Unit); RAM ( RandomAcces Memory); ROM ( Read only Memory), Input, dan Output, Timer\ Counter, Serial com port secara spesifik digunakan untuk aplikasi –aplikasi control dan buka aplikasi serbaguna. Mikrokontroler umumnya bekerja pada frekuensi 4MHZ40MHZ. Perangkat ini sering digunakan untuk kebutuhan kontrol tertentu seperti pada sebuah penggerak motor. Read only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai dengan keperluannya, sesuai dengan susunan MCS-51. Memory penyimpanan program dinamakan sebagai memory program. Random Acces Memory (RAM) isinya akan begitu sirna IC kehilangan catudaya dipakai untuk menyimpan data pada saat program bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai memori data. Mikrokontroler
biasanya
dilengkapi
dengan
UART
(Universal
Asychoronous Receiver Transmitter) yaitu port serial komunikasi serial asinkron,
Universitas Sumatera Utara
USART (Universal Asychoronous\Asy choronous Receiver Transmitter) yaitu port yang digunakan untuk komunikasi serial asinkron dan asinkron yang kecepatannya 16 kali lebih cepat dari Uart, SPI ( Serial Port Interface), SCI ( Serial Communication Interface ), Bus RC ( Intergrated circuit Bus ) merupakan 2 jalur yang terdapat 8 bit, CAN ( Control Area Network ) merupakan standard pengkabelan SAE (Society of Automatic Enggineers). Pada system computer perbandingan RAM dan ROM-nya besar, artinya program-program
pengguna
disimpan
dalam
ruang
RAM
yang
relatif
besar,sedangkan rutin-rutin antar muka pernagkat keras disimpan dalm ruang ROM yang kecil. Sedangkan pada mikrokontroler, perbandingan ROM dan RAMnya yang besar artinya program control disimpan dalam ROM yang ukurannya relative lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sedrhana sementara, termasuk register-register yang digunakan pada Microctroller yang bersangkutan. Mikrokontroler saat ini sudah dikenal dan digunakan secar luas pada dunia industri. Banyak sekali penelitian atau proyek mahasiswa yang menggunakan berbagai versi mikrokontroler yang dapat dibeli dengan harga yang relative murah. Hal ini dikarenakan produksi misal yang dilakukan oleh para produse chip seperti Atmel, Maxim, dan Microchip. Mikrokontroler saat ini merupakan chip utama pada hampir setiap peralatan elektronika canggih. Alat-alat canggih pun sekarang ini sangat bergantung pada kemampuan mikrokontroler tersebut. Mikrikontroler AVR memilki arsitektur RISC 8 bit, dimana semua instruksi dikemas dalam kode 16-bit (16-bit word) dan sebagian besar instruksi dieksekusi dalam satu siklus clock, berbeda dengan instruksi CS51 yang membutuhkan siklus
Universitas Sumatera Utara
12 clock. Tentu saja itu terjadi karena kedua jenis mikrokontroler
tersebut
memiliki arsitektur yang berbeda. AVRberteknologi RISC (Reduce Instruction Set Computing), sedangkan seri MCS51 berteknologi CISC (Complex Instruction Set Computing). Secara umum, AVR dapatdikelompokkan menjadi 4 kelas, yaitu keluarga AT90Sxx, keluarga ATmega, dan AT86RFxx. Pada dasarnya, yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsiektur dan instruksi yang digunakan, mereka bias dikatakan hampir sama. Nama AVR sendiri berasal dari "Alf (Egil Bogen) and Vegard (Wollan) 's Riscprocessor" dimana Alf Egil Bogen dan Vegard Wollan adalah dua penemu berkebangsaan Norwegia yang menemukan mikrokontroller AVR yang kemudian diproduksi oleh atmel. Mikrokontroler
adalah
piranti
elektronik
berupa
IC
(Integrated
Circuit)yang memiliki kemampuan manipulasi data (informasi)berdasarkan suatu urutan instruksi (program). Dalam sebuah struktur mikrokontroller akan kita temukan juga komponen-komponen seperti:processor, memory, clock, dll. Salah satu arsitektur mikrokontroler yang terdapat di pasaran adalah jenis AVR (Advanced Virtual RISC). Arsitektur mikrokontroler jenis AVR ini pertama kali dikembangkan pada tahun 1996 oleh dua orang mahasiswa Norwegian Institute of Technology yaitu Alf-Egil Bogen dan Vegard Wollan. Dalam perkembangannya, AVR dibagi menjadi beberapa varian yaitu AT90Sxx, ATmega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing varian adalah kapasitas memori dan beberapa fitur tambahan saja.
Universitas Sumatera Utara
Mikrokontroler AVR (Alf and Vegard's Risc processor) standar memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16-bit, dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. AVR berteknologi RISC (Reduced Instruction Set Computing), sedangkan seri MCS51 berteknologi CISC (Complex Instruction Set Computing). AVR dapat dikelompokkan menjadi empat kelas, yaitu keluarga ATtiny, keluarga ATSOSxx, keluarga ATMega, dan AT86RFxx. Pada dasamya, yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Untuk mikrokontroler AVR yang berukuran lebih kecil, Anda dapat mencoba ATmega8 atau ATtiny2313 dengan ukuran Flash Memory 2KB dengan dua input analog. Mikrokontroler AVR yang perlu Anda kuasai. Selain ATmega 32, sangat direkomendasikan untuk mencoba ATmega16 dan Atmegal 28. Selain itu, kuasai juga jenis mikrokontroler lain produksi Maxim (Maxim-ic.com) seperti DS80C400 dan MAXQ2000. Pemrograman mikrokontroler AVR dapat menggunakan low level language (assembly) dan high level language (C, Basic, Pascal, JAVA, dll)tergantung compiler yang digunakan.Salah satu yang banyak dijumpai di pasaran adalah AVR tipe ATmega, yang tediri dari beberapa versi, yaitu :ATmega8535, ATmega16,ATmega162, ATmega32, ATmega324P, ATmega644, ATmega644P danbATmega128. Pada pembahasan ini
mikrokontroler yang
digunakan adalah AVR ATmega32.
2.3.1 Fitur ATMega 32A Fitur-fitur yang dimiliki ATmega32 sebagai berikut: 1. Frekuensi clock maksimum 16 MHz.
Universitas Sumatera Utara
2. Jalur I/O 32 buah, yang terbagi dalam PortA, PortB, PortC dan PortD. 3. Analog to Digital Converter 10 bit sebanyak 8 input, 4 chanel PWM. 4. Timer/Counter sebanyak 3 buah. 5. CPU 8 bit yang terdiri dari 32 register. 6. Watchdog Timer dengan osilator internal. 7. SRAM sebesar 2K Byte. 8. Memori Flash sebesar 32K Byte dengan kemampuan read while write. 9. Interrupt internal maupun eksternal. 10. Port komunikasi SPI. 11. EEPROM sebesar 512 byte yang dapat diprogram saat operasi. 12. Analog Comparator. 13. Komunikasi serial standar USART dengan kecepatan maksimal 2,5 Mbps.
2.3.2
Konfigurasi ATMega 32A Mikrokontroler merupakan suatu device yang di dalamnya sudah
terintegrasi dengan I/O port,RAM,ROM,sehingga dapat digunakan untuk berbagai keperluan kontroler .Mikrokontroler AVR ATmega32 merupakan low power CMOS mikrokontroler 8 bit yang di kembangkan oleh atmel dengan arsitektur RISC(Reduced Instruction SET Computer) sehingga dapat mencapai troughput eksekusi instruksi 1 MIPS(Million Instruction Per Second).Mikrokontroler AVR dapat dikelompokkan menjadi 4 kelas yaitu kelas ATtiny,kelas AT90xx,keluarga ATmega,dan kelas AT86RFxx.pada dasarnya yang membedakan masing-masing kelas adalah memori,peripheral,spedd.operasi tegangan dan fungsinya sedangkan dari segi arsitektur dan instruksi yang di gunakan bisa di katakan hampir sama.
Universitas Sumatera Utara
Penjelasan konfigurasi pin pada mikrokontroler AVR ATmega32 secara umum: a. Pin 1 sampai 8 (port B) merupakan port paralel 8 bit dua arah (bidirectional), yang dapat di gunakan untuk general purpose dan special feature. b. Pin 9 (riset) jika terdapat minimum pulse pada saat active low. c. Pin 10 (VCC) di hubungkan ke Vcc (2,7-5,5 Volt). d. Pin 11 dan 31 (GND di hubungkan ke Vssatau ground. e. Pin 12 (XTAL 2) adalah pin masukan ke rangkaian osilator internal. Sebuah osilator kristal atau sumber osilator luar dapat di gunakan. f. Pin 13 (XTAL 1) adalah pin keluaran ke rangkaian osilator internal.pin ini di pakai bila menggunakan osilator kristal. g. Pin 14 sampai 21 (port D) adalah 8 bit dua arah (bi-directional I/O) port dengan internal pull-up resistors di gunaka untuk general purpose dan special feature. h. Pin 22 sampai 29 (port C) adalah 8 bit dua arah (bi-directional I/O) port dengan internal pull-up resistors di gunaka untuk general purpose dan special feature. i. Pin 30 adalah Avcc pin penyuplai daya untuk port A dan A/D converter dan di hubungkan ke Vcc.jika ADC di gunakan maka pin ini di hubungkan ke Vcc. j. Pin 32 adalah A REF pin yang berfungsi sebagai referensi untuk pin analog jika A/D converter di gunakan. k. Pin 33 sampai 40 (port A) adalah 8 bit dua arah arah (bi-directional I/O) port dengan internal pull-up resistors di gunaka untuk general purpose.
Universitas Sumatera Utara
Gambar 2.9 Pin-pin ATMega32
Secara fungsional konfigurasi pin ATMega32 adalah sebagai berikut: 1.
VCC Sumber Tegngan
2.
GND (Ground) Ground
3.
Port A (PA7 – PA0) Port A adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin memilki internal pull-up resistor. Output buffer port A dapat mengalirkan arus sebesar 20 mA. Ketika port A digunakan sebagai input dan di pull-up secara langsung, maka port A akan mengeluarkan arus jika internal pull-up resistor diaktifkan. Pin-pin dari port A memiliki fungsi khusus yaitu dapat berfungsi sebagai channel ADC (Analog to Digital Converter) sebesar 10 bit. Fungsi-fungsi khusus pin-pin port A dapat ditabelkan seperti yang tertera pada table.
Universitas Sumatera Utara
Port
Alternate Function
PA7
ADC7 (ADC input channel 7)
PA6
ADC6 (ADC input channel 6)
PA5
ADC5 (ADC input channel 5)
PA4
ADC4 (ADC input channel 4)
PA3
ADC3 (ADC input channel 3)
PA2
ADC2 (ADC input channel 2)
PA1
ADC1 (ADC input channel 1)
PA0
ADC0 (ADC input channel 0) Tabel 2.1 Fungsi khusus port A
4.
Port B (PB7 – PB0) Port B adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin mengandung internal pull-up resistor. Output buffer port B dapat mengalirkan arus sebesar 20 mA. Ketika port B digunakan sebagai input dan di pull-down secara external, port B akan mengalirkan arus jika internal pull-up resistor diaktifkan. Pin-pin port B memiliki fungsi-fungsi khusus, diantaranya : a. SCK port B, bit 7 Input pin clock untuk up/downloading memory. b. MISO port B, bit 6 Pin output data untuk uploading memory.
c. MOSI port B, bit 5 Pin input data untuk downloading memory. Fungsi-fungsi khusus pin-pin port B dapat ditabelkan seperti pada table.
Universitas Sumatera Utara
Port
Alternate Function
PB7
SCK (SPI Bus Serial Clock)
PB6
MISO (SPI Bus Master Input/Slave Output)
PB6
MOSI (SPI Bus Master Output/Slave Input)
PB5
SS (SPI Slave Select Input)
PB3
PB2 PB1 PB0
AIN1 (Analog Comparator Negative Input) OCO (Timer/Counter0 Output Compare Match Output) AIN0 (Analog Comparator Positive Input) INT2 (External Interrupt 2 Input) T1 (Timer/Counter1 External Counter Input) T0 (Timer/Counter External Counter Input) XCK (USART External Clock Input/Output) Tabel 2.2 Fungsi khusus port B
5.
Port C (PC7 – PC0) Port C adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin memiliki internal pull-up resistor. Output buffer port C dapat mengalirkan arus sebesar 20 mA. Ketika port C digunakan sebagai input dan di pull-down secara langsung, maka port C akan mengeluarkan arus. Fungsi-fungsi khusus pin-pin port C dapat ditabelkan seperti yang tertera pada tabel dibawah ini. Port
Alternate Function
PC7
TOSC2 (Timer Oscillator Pin 2)
PC6
TOSC1 (Timer Oscillator Pin 1)
PC6
TD1 (JTAG Test Data In)
PC5
TD0 (JTAG Test Data Out)
PC3
TMS (JTAG Test Mode Select)
PC2
TCK (JTAG Test Clock)
PC1
SDA (Two-wire Serial Bus Data Input/Output Line)
PC0
SCL (Two-wire Serial Bus Clock Line) Tabel 2.3 Fungsi khusus port C
Universitas Sumatera Utara
6.
Port D (PD7 – PD0) Port D adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin memiliki internal pull-up resistor. Output buffer port D dapat mengalirkan arus sebesar 20 mA. Ketika port D digunakan sebagai input dan di pull-down secara langsung, maka port D akan mengeluarkan arus jika internal pull-up resistor diaktifkan. Fungsi-fungsi khusus pin-pin port D dapat ditabelkan seperti yang tertera pada tabel dibawah ini.
Port
Alternate Function
PD7
OC2 (Timer / Counter2 Output Compare Match Output)
PD6
ICP1 (Timer/Counter1 Input Capture Pin)
PD6
OCIB (Timer/Counter1 Output Compare B Match Output)
PD5
TD0 (JTAG Test Data Out)
PD3
INT1 (External Interrupt 1 Input)
PD2
INT0 (External Interrupt 0 Input)
PD1
TXD (USART Output Pin)
PD0
RXD (USART Input Pin) Tabel 2.4 Fungsi khusus port D
2.3.3
Arsitektur CPU ATMEGA32 Fungsi utama CPU adalah memastikan pengeksekusian instruksi dilakukan
dengan benar. Oleh karena itu CPU harus dapat mengakses memori, melakukan kalkulasi, mengontrol peripheral, dan menangani interupsi. Ada 32 buah General Purpose Register yang membantu ALU bekerja. Untuk operasi aritmatika dan logika, operand berasal dari dua buah general register dan hasil operasi ditulis kembali ke register. Status and Control berfungsi untuk menyimpan instruksi aritmatika yang baru saja dieksekusi. Informasi ini
Universitas Sumatera Utara
berguna untuk mengubah alur program saat mengeksekusi operasi kondisional. Instruksi di jemput dari flash memory. Setiap byte flash memory memiliki alamat masing-masing. Alamat instruksi yang akan dieksekusi senantiasa disimpan Program Counter. Ketika terjadi interupsi atau pemanggilan rutin biasa, alamat di Program Counter disimpan terlebih dahulu di stack. Alamat interupsi atau rutin kemudian ditulis ke Program Counter, instruksi kemudian dijemput dan dieksekusi. Ketika CPU telah selesai mengeksekusi rutin interupsi atau rutin biasa, alamat yang ada di stack dibaca dan ditulis kembali ke Program Counter.
2.3.4
Program Memori ATMEGA 32 memiliki 32 KiloByte flash memori untuk menyimpan
program.Karena lebar intruksi 16 bit atau 32 bit maka flash memori dibuat berukuran 16K x 16. Artinya ada 16K alamat di flash memori yang bisa dipakai dimulai dari alamat 0 heksa sampai alamat 3FFF heksa dan setiap alamatnya menyimpan 16 bit instruksi.
2.3.5
SRAM Data Memori ATMEGA32 memiliki 2 KiloByte SRAM. Memori ini dipakai untuk
menyimpan variabel. Tempat khusus di SRAM yang senantiasa ditunjuk register SP disebut stack. Stack berfungsi untuk menyimpan nilai yang dipush. 2.3.6
EEPROM Data Memori ATMEGA32 memiliki 1024 byte data EEPROM. Data di EEPROM tidak
akan hilang walaupun catuan daya ke sistem mati. Parameter sistem yang penting
Universitas Sumatera Utara
disimpan di EEPROM. Saat sistem pertama kali menyala paramater tersebut dibaca dan system diinisialisasi sesuai dengan nilai parameter tersebut.
2.3.7
Interupsi Sumber interupsi ATMEGA32 ada 21 buah. Tabel 2 hanya menunjukkan
10 buah interupsi pertama. Saat interupsi diaktifkan dan interupsi terjadi maka CPU menunda instruksi sekarang dan melompat ke alamat rutin interupsi yang terjadi. Setelah selesai mengeksekusi intruksi-instruksi yang ada di alamat rutin interupsi CPU kembali melanjutkan instruksi yang sempat tertunda.
2.3.8
Status register (SREG) Status register adalah Status Register berisi informasi tentang hasil yang
paling baru-baru ini dieksekusi aritmatika instruksi. Informasi ini dapat digunakan untuk mengubah aliran program untuk melakukan operasi bersyarat. Perhatikan bahwa Register Status diperbarui setelah semua operasi ALU, sebagai ditentukan dalam Instruction Set Reference. Ini akan dalam banyak kasus menghilangkan kebutuhan untuk menggunakan didedikasikan membandingkan instruksi, sehingga lebih cepat dan lebih kompak kode.
Status Register tidak secara otomatis
disimpan ketika memasuki rutin interupsi dan dipulihkan ketika kembali dari interupsi. Ini harus ditangani oleh perangkat lunak.
Gambar 2.10 Status Register ATMega 32A
Universitas Sumatera Utara
• Bit 7 - I: Dunia Interrupt Enable Global Interrupt Enable bit harus ditetapkan untuk menyela harus diaktifkan . Individu interrupt memungkinkan kontrol selanjutnya dilakukan dalam register kontrol terpisah . Jika Global Interrupt Enable Daftar dibersihkan , tidak ada interupsi diaktifkan independen dari interrupt individu mengaktifkan pengaturan . The I- bit dihapus oleh hardware setelah interupsi telah terjadi , dan diatur oleh instruksi RETI untuk mengaktifkan interupsi berikutnya . The I- bit juga dapat diatur dan dibersihkan oleh aplikasi dengan SEI dan CLI instruksi, seperti yang dijelaskan dalam referensi set instruksi . • Bit 6 - T : Bit Copy Storage The Bit Copy instruksi BLD ( Bit Load) dan BST ( Bit Store) menggunakan T - bit sebagai sumber atau tujuan untuk bit yang dioperasikan . Sedikit dari register dalam Daftar file dapat disalin ke T oleh Instruksi BST , dan sedikit di T dapat disalin ke dalam sedikit dalam register dalam Daftar file oleh Instruksi BLD . • Bit 5 - H : Half Carry Flag The Half Carry Flag H menunjukkan setengah carry dalam beberapa operasi aritmatika . Half Carry berguna dalam BCD aritmatika.
• Bit 4 - S : Sign Bit , S = N ⊕ V
The S - bit selalu eksklusif atau antara Negatif Flag N dan Komplemen Dua Overflow Flag V.
• Bit 3 - V : Two Complement Overflow Flag
Universitas Sumatera Utara
The Two Complement Overflow Flag V mendukung dua itu aritmatika komplemen. • Bit 2 - N : Negative Flag Negatif Flag N menunjukkan hasil negatif dalam aritmatika atau operasi logika • Bit 1 - Z : Nol Flag Zero Flag Z mengindikasikan hasil nol dalam aritmatika atau operasi logika . • Bit 0 - C : Carry Flag The Carry Flag C mengindikasikan carry dalam aritmatika atau operasi logika.
2.4 IC 74HC595
2.11 Gambar Bentuk Fisis IC 74HC595 IC 74HC/HCT595 adalah pergeseran 8 stage serial shift register dengan penyimpanan register dan 3 keluaran. Shift register dan penyimpanan register memiliki clock terpisah. IC ini mempunyai master reset untuk clear semua output secara langsung. IC 74HC595 memiliki 16 pin dimana pin 15 sebagai VCC dan pin 8 sebagai GND.
Berikut ini adalah tabel konfigurasi IC 74HC595 :
Universitas Sumatera Utara
Tabel 2.5 Konfigurasi IC 74HC595
Pin Q0-Q7 adalah output pin yang akan dikontrol kondisinya sebagai tambahan pin output IC yang diinginkan. Sedangkan pin Q7’ adalah pin serial output, pin ini dapat digunakan untuk menggabungkan beberapa IC bila membutuhkan lebih banyak output.
Prinsip kerja IC 74HC595 adalah menerima data masukan dari pin serial data input yaitu pin 14 dan menggesernya setiap internal register yang tersusun secara seri pada setiap perubahan pulsa clock dari low sampai ke high yang diberikan pada pin shift register clock input pada pin 11. Pin output Q0-Q7 yang
Universitas Sumatera Utara
merupakan keluaran dari setiap register tetap tidak akan berubah selama proses tersebut terus berjalan dan selama pin 12 belum berubah kondisi dari low ke high.
2.5 RTC DS 1307
RTC yang dimaksud disini adalah real time clock (bukan real time computing), biasanya berupa IC yg mempunyai clock sumber sendiri dan internal batery untuk menyimpan data waktu dan tanggal. Sehingga jika system komputer / microcontroller mati waktu dan tanggal didalam memori RTC tetap uptodate.
Salah satu RTC yang sudah populer dan mudah penggunaanya adalah DS1307, apalagi pada Codevision sudah tersedia fungsi-fungsi untuk mengambil data waktu dan tanggal untuk RTCDS1307 ini.
X1
Vcc
X2
SQW/OUT
VBAT
SCL
GND
SDA
DS1307
2.12 Gambar Fitur-Fitur DS1307
2.5.1 Fitur-fitur DS1307: •
Real-time clock (RTC) menghitung detik, menit, jam,tanggal,bulan dan hari dan tahun valid sampai tahun 2100
•
Ram 56-byte, nonvolatile untuk menyimpan data.
Universitas Sumatera Utara
•
2 jalur serial interface (I2C).
•
output gelombang kotak yg diprogram.
•
Automatic power-fail detect and switch
•
Konsumsi arus hanya 500nA pada batery internal.
•
mode dg oscillator running.
•
temperature range: -40°C sampai +85°C
Untuk membaca data tangal dan waktu yg tersimpan di memori RTC Ds1307 dapat dilakukan melalui komunikasi serial I2C spt tampak pada gambar berikut:
Vcc
Vcc
Vcc
1 2 5 SDA
3
6 SCL
Crystal 32.768khz
3v
bat
4 Microcontroller
DS1307
2.13 Gambar Rangkaian Memori RTC DS1307
Universitas Sumatera Utara
2.5.2 Cara pembacaan
DS1307 beropersai sebagai slave pada bus I2C. Cara Access pertama mengirim sinyal START diikuti device address dan alamat sebuah register yg akan dibaca. Beberapa register dapat dibaca sampai STOP condition dikirim.
2.14 Gambar ADDRESS MAP DS1307
Data waktu dan tanggal tersimpan dalam memori masing masing 1 byte , mulai dari alamat 00H sampai 07H. Sisanya (08H ~ 3FHalamat RAM yg bisa digunakan).
2.6 Rangkaian Elektronik LED
Rangkaian elektronika LED (Light Emiting Diode = Dioda Pemancar Cahaya) atau lebih dikenal dengan sebutan LED adalah komponen semikonduktor elektronika yang memancarkan cahaya monokromatik.
Dioda ini akan
mengeluarkan cahaya bila diberi tegangan sebesar 1.8 V dengan arus 1.5 mA.
Universitas Sumatera Utara
LED dikenal dengan istilah lain Solid State Lamp, yakni piranti elektronik yang merupakan gabungan elektronik dengan optik (lensa) dan akhirnya dikenal sebagai keluarga opto-electronic. Simbol dan fisiknya diperlihatkan seperti gambar di bawah ini. Rangkaian elektronika LED banyak digunakan sebagai lampu indikator dan peraga (display).
A K
A ANODA (+)
K
KATODA (-)
A
K
2.15 Gambar Simbol dan Fisik LED
2.6.1 Fungsi/Kegunaan Rangkaian Elektronika LED
Dioda LED akan menyala jika diberi arus DC arah forward atau arus AC yang sesuai dengan tegangan kerjanya (misal 3 volt). Rangkaian elektronika LED digunakan sebagai lampu indikator dan sebagai display. Kegunaan rangkaian elektronika LED lainnya adalah untuk penampil digit, indikator pandang (sebagai pengganti lampu pijar) dan sebagai acuan tegangan (1,5 V tiap LED).
Keistimewaan
lain
dari
rangkaian
elektronika
LED
ialah
memancarkan cahaya ingin, umur tidak dipendekkan oleh peng-on-off-an yang terus menerus, tidak memancarkan sinar infra merah (kecuali yang sengaja
Universitas Sumatera Utara
dibuat untuk itu). Dalam merangkai LED selalu diperlukan resistor deretan guna membatasi kuat arus.
2.16 Gambar Rangkaian Elektronika LED
LED dibuat dari berbagai bahan semikonduktor campuran seperti galium arsenida
fosfida
(GaAsP),
galium
fosfida
(GaP)
dan
galium
aluminium arsenida (GaAlAs). Kalau LED diberi tegangan panjar (bias) arah maju, juctionnya akan mengeluarkan cahaya. Warna cahaya bergantung kepada jenis dan kadar bahan junctionnya. Bahan GaS memancarkan warna inframerah, Bahan GaAsP warna merah atau kuning sedangkan bahan GaP dengan warna merah atau hijau.
Kecerahan cahaya berbanding lurus dengan arus forward (arah maju) yang mengalirinya. Arus forward berkisar antara 10 mA – 20 mA untuk kecerahan makimum. Pada kondisi menghantar tegangan maju pada LED merah adalah 1,6 V – 2,2 V, pada LED kuning 2,4 V dan pada LED hijau 2,7 V. Tegangan revers (terbalik) maksimum yang dibolehkan pada LED merah adalah 3 V, LED kuning 5 V dan LED hijau 5 V. Keunggulan LED diantaranya
Universitas Sumatera Utara
adalah konsumsi arus yang sangat kecil, awet (dapat bertahan sampai 50 tahun) dan kecil bentuknya (tidak makan tempat).
WARNA TEGANGAN MAJU Merah
1.8 Volt
Orange
2.0 Volt
Kuning
2.1 Volt
Hijau
2.2 Volt
Tabel 2.6 Tegangan Maju LED
2.7 Pengertian Kapasitor Kapasitor adalah suatu komponen elektronika yang berfungsi untuk menyimpan arus listrik dalam bentuk muatan. sebuah kapasitor pada dasarnya terbuat dari dua buah lempengan logam yang saling sejajar satu sama lain dan diantara kedua logam tersebut terdapat bahan isolator yang sering disebut dielektrik. Bahan dielektrik tersebut dapat mempengaruhi nilai dari kapasitansi kapasitor tersebut. adapun bahan dielektrik yang paling sering dipakai adalah keramik, kertas, udara, metal film dan lain-lain.
2.7.1 •
Fungsi dari kapasitor : Kapasitor sebagai kopling, dilihat dari sifat dasar kapasitor yaitu dapat dilalui arus ac dan tidak dapat dilalui arus dc dapat dimanfaatkan untuk memisahkan 2 buah rangkaian yang saling tidak berhubungan secara dc tetapi masih berhubungan secara ac(signal), artinya sebuah kapasitor
Universitas Sumatera Utara
berfungsi sebagai kopling atau penghubng antara 2 rangkaian yang berbeda. •
Kapasitor berfungsi sebagai filter pada sebuah rangkaian power supply, yang saya maksud disini adalah kapasitor sebagai ripple filter, disini sifat dasar kapasitor yaitu dapat menyimpan muatan listrik yang berfungsi untuk memotong tegangan ripple.
•
Kapasitor sebagai penggeser fasa.
•
Kapasitor sebagai pembangkit frekuensi pada rangkaian oscilator.
•
Kapasitor digunakan juga untuk mencegah percikan bunga api pada sebuah saklar.
Electrical Symbol for a Capactor 2.17 Gambar Simbol Kapasitor
2.8 Memory 24C64
Gambar 2.18 Pin Diagram 24C64
Universitas Sumatera Utara
•
A0, A1, A2 - Chip Alamat Input: input ini digunakan untuk beberapa operasi perangkat. Tingkat logika pada ini pin input dibandingkan dengan bit yang sesuai di alamat slave dan chip dipilih jika dibandingkan benar. Dengan demikian hingga delapan perangkat dapat dihubungkan ke bus yang sama menggunakan chip pilih kombinasi bit yang berbeda.
•
WP - Write Protect: Ketika pin ini disimpan RENDAH (grounded) normal membaca dan menulis operasi yang mungkin tetapi jika TINGGI (Vcc) menulis operasi akan terhambat. The resistor PULL BAWAH internal pin ini menjaga jarak perangkat terlindungi bila dibiarkan mengambang.
•
Vcc dan Vss: Vcc adalah positif DC pasokan pin. Perangkat ini mampu bekerja dengan dalam 1,8 sampai kisaran 5.5V. VSS adalah pin ground (0V).
•
SDA - Serial Data: Ini adalah pin dua arah yang digunakan untuk mentransfer data dan alamat dari dan ke perangkat.
•
SCL - Serial Jam: pin ini digunakan untuk sinkronisasi transfer data melalui SDA.
Universitas Sumatera Utara
Gambar 2.19 Perangkat Addressing 24C64 EEPROM Kontrol Byte adalah byte pertama yang diterima oleh perangkat slave setelah menerima sinyal mulai dari perangkat master. Untuk 24C64 4 bit pertama adalah kode kontrol (1010) untuk identifikasi perangkat. Berikutnya 3 bit dari byte kontrol Chip Select Bits (A2, A1, A0). Bit ini memungkinkan kita untuk menghubungkan hingga delapan 24XX64 perangkat pada bus yang sama. The Chip Select Bits of control byte harus sesuai dengan tingkat logika dari A2, A1, A0 perangkat yang akan dipilih. Bit terakhir Pengendalian Byte digunakan untuk menentukan operasi yang akan dilakukan. Hal ini diatur ke 1 ketika operasi baca yang akan dilakukan dan diatur ke 0 ketika menulis operasi yang akan dilakukan.
Universitas Sumatera Utara