BAB 2 LANDASAN TEORI

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAB 2 LANDASAN TEORI"

Transkripsi

1 BAB 2 LANDASAN TEORI 2.1. Perangkat Keras Real-Time Clock (RTC) DS1307 Real-time clock DS1307 adalah IC yang dibuat oleh perusahaan Dallas Semiconductor. IC ini memiliki kristal yang dapat mempertahankan frekuensinya dengan baik. Real-time clock DS1307 memiliki fitur sebagai berikut: 1. Real-time clock (RTC) menyimpan data-data detik, menit, jam, tanggal dan bulan dalam seminggu, dan tahun valid hingga byte, battery-backed, RAM nonvolatile (NV) RAM untuk penyimpanan. 3. Antarmuka serial Two-wire (I2C). 4. Sinyal keluaran gelombang-kotak terprogram (Programmable squarewave). 5. Deteksi otomatis kegagalan-daya (power-fail) dan rangkaian switch. 6. Konsumsi daya kurang dari 500nA menggunakan mode baterei cadangan dengan operasional osilator. 7. Tersedia fitur industri dengan ketahanan suhu: -40 C hingga +85 C. 8. Tersedia dalam kemasan 8-pin DIP atau SOIC.

2 Sedangkan daftar pin RTC DS1307 adalah sebagai berikut: 1. VCC Primary Power Supply. 2. X1, X kHz Crystal Connection. 3. VBAT +3V Battery Input. 4. GND Ground. 5. SDA Serial Data. 6. SCL Serial Clock. 7. SQW/OUT Square Wave/Output Driver. Gambar 2.1. Diagram pin RTC DS1307 (Data Sheet IC Real-Time Clock DS1307).

3 Gambar 2.2. Block Diagram DS Komunikasi Serial antar IC (I2C/ TWI) I2C singkatan dari Inter Integrated Circuit, adalah sebuah protokol untuk komunikasi serial antar IC, dan sering disebut juga Two Wire Interface (TWI). Bus yang digunakan untuk komunikasi antara mikrokontroler dan divais periferal seperti memori, sensor temperatur dan I/O expander Prinsip Komunikasi I2C Komunikasi dilakukan melalui dua jalur: SDA (serial data) dan SCL (serial clock). Setiap divais I2C memiliki 7-bit alamat yang unik. MSB adalah fix dan ditujukan untuk kategori divais. Sebagai contoh, 1010 biner ditujukan untuk serial EEPROM. Tiga bit berikutnya memungkinkan 8 kombinasi alamat I2C, yang berarti, dimungkinkan 8 divais dengan tipe yang sama, beroperasi pada bus I2C yang sama. Pengiriman data hanya dapat dimulai ketika saluran tidak sibuk, ditandai dengan kondisi HIGH yang cukup lama pada pin SCL maupun SDA. Selama pengiriman data, saluran data (SDA) harus dalam keadaan stabil ketika saluran clock (SCL) dalam keadaan high. Perubahan kondisi SDA pada saat SCL high akan dianggap sebagai sinyal-sinyal kendali, seperti: sinyal START (HIGH ke LOW) atau sinyal STOP (LOW ke HIGH).

4 Gambar 2.3. Prinsip komunikasi serial bus I2C (Data Sheet RTC DS1307) Pengalamatan 7-bit I2C/ TWI Byte pertama setelah sinyal START yang dikirim oleh master adalah alamat slave. Pengalamatan 7-bit memungkinkan 128 divais pada bus yang sama. Alamat I2C dikirim dalam byte pertama. LSB dari byte ini digunakan untuk menunjukkan bila master akan melakukan penulisan (0) atau pembacaan (0) terhadap slave. Divais yang mengirim data sepanjang bus disebut master, divais yang menerima data disebut slave. Master memulai transmisi dengan sebuah sinyal start, dan menghentikan transmisi dengan sebuah sinyal stop pada jalur SDA. Selama sinyal start dan stop, jalur SCL harus dalam keadaan HIGH. Setelah master memulai pengiriman data dengan sebuah sinyal start, master menulis satu byte alamat divais kepada slave. Setiap byte data harus memiliki panjang 8-bit. Slave harus memberikan konfirmasi dari byte data yang diterimanya dengan sebuah bit acknowledge (ACK). (Data Sheet IC Real-Time Clock DS1307).

5 Defenisi-defenisi Kondisi Bus Berikut ini adalah defenisi kondisi bus pada sistem komunikasi serial I2C/ TWI: 1. Bus tidak sibuk (bus not busy): menyatakan pada saat ini bus tidak sibuk yaitu pada saat jalur clock (SCL) dan jalur data (SDA) dua-duanya dalam keadaan HIGH. 2. Mulai transfer data (start data transfer): ditandai dengan perubahan kondisi SDA dari HIGH ke LOW ketika SCL dalam kondisi HIGH. 3. Stop transfer data (stop data transfer): ditandai dengan perubahan kondisi SDA dari LOW ke HIGH ketika SCL dalam kondisi HIGH. 4. Data valid: data yang dikirim bit demi bit dianggap valid jika setelah START, kondisi SDA tidak berubah selama SCL HIGH, baik SDA HIGH maupun SDA LOW tergantung dari bit yang ingin ditransfer. Setiap siklus HIGH SCL baru menandakan pengiriman bit baru. Duty cycle untuk SCL tidak mesti 50%, tetapi frekuensi kemunculannya hanya ada dua macam, yaitu mode standar 100 khz dan fast mode atau mode cepat 400 khz. Setelah SCL mengirimkan sinyal HIGH yang kedelapan, arah transfer SDA berubah, sinyal kesembilan pada SDA ini dianggap sebagai acknowledge dari receiver ke transmitter. DS1307 hanya bisa melakukan transfer pada mode standar 100 khz. 5. Pemberitahuan (Acknowledge): setiap receiver wajib mengirimkan sinyal acknowledge atau sinyal balasan setiap selesai pengiriman 1-byte (8-bit data). Master harus memberikan ekstra clock atau clock tambahan pada SCL, yaitu clock kesembilan untuk memberikan kesempatan receiver mengirimkan sinyal acknowledge ke transmitter berupa keadaan LOW pada SDA selama SCL HIGH. Meskipun master berperan sebagai receiver, ia tetap sebagai penentu

6 sinyal STOP. Pada bit akhir penerimaan byte terakhir, master tidak mengirimkan sinyal acknowledge, SDA dibiarkan HIGH oleh receiver dalam hal ini master, kemudian master mengubah SDA dari LOW menjadi HIGH yang berarti sinyal STOP. (Data Sheet IC Real-Time Clock DS1307) Mode Pengoperasian Transfer Data Mode pengoperasian transfer data berdasarkan kondisi bit R/W, ada dua jenis transfer data yaitu: transfer data dari transmitter master ke receiver slave dan transfer data dari transmitter slave ke receiver master. A. Transfer Data dari Transmitter Master ke Receiver Slave Byte pertama yang dikirimkan oleh master adalah alamat slave, setelah itu master mengirimkan sejumlah byte data. Slave atau receiver mengirimkan sinyal acknowledge setiap kali menerima 1-byte data. Pada tiap byte, bit pertama yang dikirim adalah MSB dan bit yang terakhir adalah LSB. B. Transfer Data dari Transmitter Slave ke Receiver Master Meskipun master berperan sebagai receiver, byte pertama dikirimkan oleh master berupa alamat slave. Setelah itu slave meengirimkan bit acknowledge, dilanjutkan dengan pengiriman sejumlah byte dari slave ke master. Master mengirimkan bit acknowledge untuk setiap byte yang diterimanya kecuali byte terakhir. Pada akhir

7 byte, master mengirimkan sinyal not avknowledge, setelah itu master mengirimkan sinyal STOP. Gambar 2.4. Proses transfer data pada I2C (data sheet RTC DS1307) Mode Operasi RTC DS1307 Melalui I2C/TWI IC RTC DS1307 beroperasi dalam dua mode, yaitu Slave Receiver Mode (Write Mode) dan Slave Transmitter Mode (Read Mode). A. Slave Receiver Mode (Write Mode): Mode penerima slave (write mode) dalam pengiriman sinyal memiliki urutan: 1. Setelah sinyal START, master mengirim byte pertama yang terdiri dari 7-bit address IC DS1307, yaitu dan 1-bit R/W, yaitu LOW, karena ini adalah operasi WRITE. 2. Hardware pada DS1307 akan membaca address yang dikirimkan oleh master tersebut, kemudian slave, dalam hal ini IC DS1307 akan bit-acknowledge pada SDA.

8 3. Setelah itu master akan mengirimkan address tempat data pertama akan diakses. Address ini berbeda dengan 7-bit address tadi, ini adalah address isi IC DS1307, bukan address dari IC DS1307. Address ini akan disimpan dalam register pointer oleh DS1307 yang juga mengirim sinyal acknowledge ke master. 4. Setelah itu master dapat mengirimkan sejumlah byte ke slave, dimana setiap byte dibalas dengan acknowledge oleh slave. Setiap menerima byte baru isi register pointer ditambah satu sehingga register ini menunjuk ke alamat berikutnya dari lokasi data pada DS1307. Setelah menerima acknowledge terakhir, master akan mengirim sinyal STOP untuk mengakhiri transfer data. Gambar 2.5. Data write slave receiver mode (Data sheet RTC DS1307). B. Slave Transmitter Mode (Read Mode): Sama seperti mode write, setelah master memberikan sinyal START, ia mengirimkan byte pertama yang terdiri dari 7-bit dalam IC DS1307, yaitu , diikuti 1-bit R/W, yaitu HIGH. Setelah menerima byte pertama ini, slave, dalam hal ini DS1307 akan mengirimkan bit acknowledge pada SDA. Setelah itu slave mulai mengirimkan

9 sejumlah byte ke master. Setiap byte pengiriman dibalas dengan 1-bit acknowledge oleh master. Byte pertama yang dikirimkan oleh slave atau DS1307 adalah data yang alamatnya ditunjuk oleh register pointer pada DS1307. Setiap kali pengiriman byte ke master, secara otomatis isi register pointer ditambah satu. DS1307 akan terus menerus mengirimkan byte ke master sampai master mengirimkan bit not acknowledge diikuti dengan sinyal STOP. (Data sheet RTC DS1307). Gambar 2.6. Data read slave transmitter mode (Data sheet RTC DS1307) Peta Alamat (Address Map) RTC DS1307 Pemetaan alamat (address map) pada RTC dimana register-register RTC di tempatkan pada lokasi pengalamatan 00h sampai 07h. sedangkan register-register RAM (Random Access Memory) ditempatkan pada lokasi pengalamatan 08h sampai 3Fh. Khusus alamat 02H, bit-6 LOW untuk siklus jam dan HIGH untuk siklus jam Bit-5 HIGH pada saat PM dan LOW pada saat AM atau angka puluhan jika bit-6 LOW.

10 Jam dan Kalender Informasi waktu dan kalender diperoleh dengan membaca byte register yang sesuai. Tabel 2.1 menunjukkan RTC register. Waktu dan kalender diatur atau diawali dengan menuliskan byte register yang sesuai. Isi waktu dan register kalender dalam format BCD. Pergantian hari dan minggu terjadi pada tengah malam. Nilai-nilai yang sesuai dengan hari dan minggu yang digunakan harus sekuensial (yaitu, jika 1 sama dengan hari Minggu, kemudian 2 sama dengan Senin, dan seterusnya). Ketidaklogisan waktu dan tanggal hasil entri dalam operasi dapat didefinisikan. Bit 7 dari register 0 adalah penghentian jam (CH) bit. Bila bit ini di set ke 1, osilator dinonaktifkan. Ketika diatur ke 0, osilator ini diaktifkan. Pada penerapan listrik pertama ke perangkat, register waktu dan tanggal biasanya diatur ulang ke 01/01/ :00:00 (MM / DD / YY Dow HH: MM: SS). Register CH bit pada detik-detik akan ditetapkan ke 1. Jam ini dapat dihentikan setiap kali fungsi ketepatan waktu tidak diperlukan, yang dapat meminimalkan arus. DS1307 dapat dijalankan baik dalam jam bermodus 12 maupun dengan jam bermodus 24. Bit 6 dari jam didefinisikan sebagai register bit pada mode pilihan 12- jam atau 24-jam. Ketika tinggi, modus 12-jam dipilih. Pada modus 12-jam, bit 5 adalah bit AM / PM dengan logika tinggi menjadi PM. Pada modus 24-jam, bit 5 adalah 10-bit kedua jam ( jam ). Nilai jam harus kembali setiap kali masuk modus bit 12/24-jam berubah. Ketika membaca atau menulis waktu dan tanggal register, penggunaan penyangga digunakan untuk mencegah kesalahan ketika internal register diperbaharui. Ketika membaca waktu dan register saat ini, penggunaan penyangga disinkronisasi ke

11 register internal pada setiap I²C START. Informasi waktu dibaca dari register sekunder sementara jam terus berjalan. Hal ini menghilangkan kebutuhan untuk membaca kembali register dalam kasus register internal update selama membaca. Rantai pembagi diatur ulang setiap kali detik register tertulis. Transfer terjadi pada I²C dari DS1307. Setelah rantai pembagi diatur ulang, untuk menghindari masalah rollover, waktu yang tersisa dan tanggal register harus ditulis dalam satu detik. Tabel 2.1. Peta alamat RTC DS1307 (Data sheet RTC DS1307) Register Kontrol (Control Register) Register kontrol pada RTC DS1307 digunakan untuk mengontrol operasi pada pin SQW/OUT. Tabel 2.2. Register kontrol (control register) (Data sheet RTC DS1307). Keterangan bit-bit pada register kontrol: 1. Bit-7: Output Control (OUT) yaitu jika pin SQW/OUT di-disable sehingga tidak mengeluarkan clock, bit-7 ini menentukan level sinyal yang keluar dari

12 pin SQW/OUT. Jika bit-7 ini LOW, maka level pin SQW/OUT ikut LOW dan jika bit-7 ini HIGH, maka level pin SQW/OUT ikut HIGH. 2. Bit-4: Square-wave Enable digunakan untuk enable/ disable keluarnya clock dari pin SQW/OUT. HIGH berarti enable dan LOW berarti disable. Frekuensi sinyal clock yang keluar dari pin SQW/OUT ditentukan oleh kondisi bit-1 dan bit Bits 1, 0: Rate Select (RS1, RS0) untuk menentukan frekuensi yang keluar dari pin SQW/OUT. Kombinasi nilai RS0, dan RS1 menghasilkan output gelombang kotak dengan nilai frekuensi masing-masing yang ditunjukkan oleh tabel 2.3. Tabel 2.3. Rate select (RS1, RS0) (Data sheet RTC DS1307) Mikrokontroller ATMega8L Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroller dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semi konduktor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah (dibandingkan mikroprosessor). Sebagai kebutuhan pasar, mikrokontroller hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat bantu dan mainan yang lebih canggih serta dalam bidang pendidikan.

13 Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka, dan lain sebagainya), Mikrokontroller hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM dan ROM-nya. Pada sistem komputer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna disimpan dalam ruang RAM yang relatif besar, sedangkan rutin-rutin antar muka perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan Pada mikrokontroller, perbandingan ROM dan RAM-nya yang besar artinya program kontrol disimpan dalam ROM yang ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sederhana sementara, termasuk registerregister yang digunakan pada mikrokontroller yang bersangkutan. Mikrokontroller ATmega8L merupakan salah satu keluarga dari MCS-51 keluaran Atmel. Jenis mikrokontroller ini pada prinsipnya dapat digunakan untuk mengolah data per bit ataupun data 8 bit secara bersamaan. Pada prinsipnya program pada mikrokontroller dijalankan bertahap, jadi pada program itu sendiri terdapat beberapa set instruksi dan tiap instruksi itu dijalankan secara bertahap atau berurutan. Beberapa fasilitas yang dimiliki oleh mikrokontroller ATmega8L adalah sebagai berikut : 1. Saluran I/O sebanyak 23 buah terbagi menjadi 3 port. 2. ADC sebanyak 6 saluran dengan 4 saluran 10 bit dan 2 saluran 8 bit 3. Tiga buah timer counter, dua diantaranya memiliki fasilitas pembanding. 4. CPU dengan 32 buah register. 5. EEPROM sebesar 512 byte.

14 6. Empat buah programable port I/O yang masing-masing terdiri dari delapan buah jalur I/O. 7. Memori flash sebesar 8K bytes sistem Self-progamable Flash. 8. Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika. 9. Kecepatan dalam melaksanakan instruksi per siklus 1 mikrodetik pada frekuensi 16 MHz Konstruksi ATMega8L Mikrokontroller ATmega8L hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1 kristal serta catu daya 5 volt. Kapasitor 10 micro-fard dan resistor 10 kilo Ohm dipakai untuk membentuk rangkaian riset. Dengan adanya rangkaian riset ini ATmega8L otomatis diriset begitu rangkaian menerima catu daya. Kristal dengan frekuensi maksimum 24MHz dan kapasitor 30 mikro-farad dipakai untuk melengkapi rangkaian oscilator pembentuk clock yang menentukan kecepatan kerja mikrokontroller. Memori merupakan bagian yang sangat penting pada mikrokontroller. Mikrokontroller memiliki dua macam memori yang sifatnya berbeda. Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai dengan keperluannya, dalam susunan MCS-51 memori penyimpanan program ini dinamakan sebagai memori program. Random Access Memory (RAM) isinya akan sirna begitu IC kehilangan catu daya, dipakai untuk menyimpan data pada saat program bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai memori data. Ada berbagai jenis ROM.

15 Untuk mikrokontroller dengan program yang sudah baku dan diproduksi secara massal, program diisikan kedalam ROM pada saat IC mikrokontroller dicetak dipabrik IC. Untuk keperluan tertentu mikrokontroller menggunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang disingkat menjadi PROM (PEROM). Dulu banyak UV-EPROM (Ultra Violet Eraseable Programble ROM) yang kemudian dinilai mahal dan ditinggalkan setelah ada flash PEROM yang harganya jauh lebih murah. Jenis memori yang dipakai untuk memori program ATmega8L adalah flash PEROM, program untuk mengendalikan mikrokontroller diisikan ke memori itu lewat bantuan alat yang dinamakan sebagai ATmega8L flash PEROM Programmer. ATmega8L dilengkapi UART (Universal Asyncronous Receiver/Transmiter) yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data seri (RXD dan TXD) diletakkan berhimpitan dengan P1.0 dan P1.1. pada kaki nomor 2 dan 3, sehingga kalau sarana input/output bekerja menurut fungsi waktu. Clock penggerak untaian pencacah ini bisa berasal dari oscillator kristal atau clock yang diumpan dari luar lewat T0 dan T1/T0 dan T1 berhimpitan dengan P3.4 dan P3.5, sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/output paralel kalau T0 dan T1 dipakai. ATmega8L mempunyai enam sumber pembangkit interupsi, dua diantaranya adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini berhimpitan dangan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur input / output paralel kalau INT0 dan INT1 dipakai untuk menerima sinyal interupsi. Port1 dan 2, UART, Timer 0, Timer 1 dan sarana lainnya merupakan yang secara fisik merupakan RAM khusus, yang ditempatkan di Special Function Register (SFR).

16 Pin-Pin pada Mikrokontroller ATMega8L Deskripsi pin-pin pada mikrokontroller ATmega8L : Gambar 2.7. IC Mikrokontroler ATmega8L 1. VCC - Merupakan pin yang berfungsi sebagai pin masukan catu daya. 2. GND Merupakan pin ground. 3. Port B (PB0 PB7) Merupakan pin I/O dua arah dan pin fungsi khusus, yaitu sebagai Timer/Counter, komperator analog dan SPI. 4. Port C (PC0 PC7) Merupakan pin I/O dua arah dan pin fungsi khusus, yaitu TWI, komperator analog, input ADC dan Timer Osilator. 5. Port D (PD0 PD7) Merupakan pin I/O dua arah dan pin fungsi khusus, yaitu komperator analog, interupsi eksternal dan komunikasi serial. 6. RESET Merupakan pin yang digunakan untuk mereset mikrokontoler. 7. XTAL1 dan XTAL2 Merupakan pin masukan clock eksternal. 8. AVCC Merupakan pin masukan tegangan untuk ADC. 9. AREF Merupakan pin tegangan referensi ADC.

17 2.1.3.Menentukan lamanya satu detik Baik jam digital maupun analog pada prinsipnya sama, yaitu frekuensi getaran. Perbedaannya hanya terletak pada sumber getaran / frekuensinya. Kalau jam analog menggunakan ayunan mekanik dan gear dengan kombinasi tertentu sehingga dia mampu untuk menentukan lamanya 1 detik dan menghitung 1 menit = 60 detik. Skema jam digital sumber frekuensinya dengan detak/ clock ditunjukkan pada gambar 2.8. Gambar 2.8. Skema penentuan detik, menit dan jam ( Sebuah pembangkit getaran sumber detak 1 Hz akan dicacah dengan menggunakan MOD 60, artinya 1 Hz = 1 detik, setelah melewati MOD 60, maka 60 detik = 1 menit. Begitu pula dengan jam, 60 menit = 1 jam dan 24 jam = 1 hari (pukul 00 : 00 : 00). ( Menentukan satu detik menggunakan osilator kristal Pembagian suatu sinyal osilator dengan menggunakan frekuensi kristal untuk menghasilkan akurasi (0,01%) waktu 1 detik. Dua buah kounter 12 stage (CD4040)

18 membentuk sebuah kounter biner 24 stage dan bit-bit yang sesuai digerbangkan bersama untuk memperoleh hasil yang diinginkan. Menggunakan sebuah kristal 50 khz, perhitungan diperoleh ketika bitbit yang sesuai dijumlahkan untuk menghasilkan nilai adalah berlogika high (1). Bit-bit sesuai yang dijumlahkan adalah: bit 15 (= 32768) + bit 14 (= 16384) + bit 9 (= 512) + bit 8 (= 256) + bit 6 (= 64) + bit 4 (= 16). Bit 14 dan 15 adalah stage ke-3 dan ke-4 pada kounter kedua (Q3 pin 6 dan Q4 pin 5), bit 0 adalah stage pertama pada kounter pertama (Q1 pin 9). Untuk menggunakan kristal 100 khz, masingmasing bit digeser ke kanan sebanyak satu kali menjadi: 65536(bit 16) (bit 15) (bit 10) + 512(bit 9) + 128(bit 7) + 32(bit 5) = Dan jika menggunakan kristal 1MHz, bit-bit berikut ini akan diperlukan: Bit 19 Right counter Q8 pin 1 Decimal value = Q7 pin Q6 pin Q5 pin Q3 pin Bit 9 Left counter Q10 pin Q7 pin Pada 1 MHz, resistor 330K pada rangkaian osilator dibutuhkan untuk peredaman yang setara dengan kira-kira 15K. Ketika hitungan terminal tercapai, sebuah pulsa reset 7 us dibangkitkan oleh inverter Schmitt Trigger yang mengikuti gerbang NAND. Resistor 47K dan kapasitor 470 pf menopang output agar kounter-

19 kounternya menghasilkan reset ke nol. Ini kurang dari satu siklus klok pada 50kHz dan tidak menghasilkan error akan menjadi sama dengan 7 siklus pada 1 MHz yang akan menyebabkan kounter kehilangan 7 mikro sekon waktu dalam setiap detiknya. Ini bukan error yang besar (7 bagian dari 1 juta). Lebar pulsa reset minimum untuk kounter CMOS kira-kira 1.5 mikro sekon, jadi pulsa reset tidak dapat dibuat terlalu singkat. Gambar 2.9. Rangkaian skematik untuk menentukan satu detik menggunakan kristal osilator 50 khz ( Menentukan satu detik pada mikrokontroler Sebuah mikrokontroler mempunyai beberapa port keluaran. Dari port tersebut dapat dikeluarkan isyarat clock dengan frekuensi tertentu. Arus rendah clock dapat dikeluarkan dengan memberikan logika rendah pada keluaran port tersebut; dan arus tinggi clock dapat dikeluarkan dengan memberikan logika tinggi pada keluaran port tersebut. Frekuensi tertinggi clock yang dapat dikeluarkan sebuah port tergantung

20 pada frekuensi clock yang diberikan kepada mikrokontroler tersebut dan pemilihan instruksi yang tepat. Pembangkit isyarat clock Pembangkitan isyarat clock dapat dilakukan minimal dengan tiga cara. Pertama, dengan mengeluarkan data logika tinggi diikuti dengan data logika rendah secara periodis. Hal ini dapat dilakukan dengan instruksi pemindahan data seperti MOV. Agar dapat diperoleh frekuensi clock cukup tinggi, maka dipilih instruksi yang mempunyai waktu eksekusi paling kecil yaitu satu siklus. Contoh instruksi tersebut adalah MOV P1, A (Atmel Corp., 1997). Jika suatu mikrokontroler dioperasikan dengan clock 24 MHz, maka dengan instruksi tersebut perubahan logika keluaran port 1 dapat dilakukan setiap 0,5 mikrodetik sekali. Cara kedua dengan mengeset dan mereset sebuah pin port keluaran. Hal ini dapat dilakukan dengan instruksi SETB <pin_port> dan CLR <pin_port>. Cara kedua ini mempunyai kelebihan tidak terlibatnya data di memori lain. Sedangkan cara ketiga adalah dengan menegasikan logika port keluaran. Dengan menggunakan instruksi CPL <pin_port>, maka logika keluaran di suatu pin pada port keluaran dapat dinegasikan setiap satu siklus sekali atau 0,5 mikrodetik sekali. Pembangkit clock 1 MHz Dengan mengoperasikan mikrokontroler pada frekuensi 24 MHz, maka satu siklus bahasa mesin yang terdiri dari enam fase dapat dieksekusi dalam waktu 0,5 mikrodetik (Atmel Corp., 2007). Dengan menggunakan instruksi CPL P1.0 berturutturut, maka di pin 0 port 1 akan diperoleh keluaran isyarat clock dengan periode 1 mikrodetik atau berfrekuensi 1 MHz.

21 Keluaran pin 0 port 1 diharapkan berbentuk gelombang kotak dengan frekuensi 1 MHz. Namun dengan adanya efek kapasitif pada keluaran port tersebut, bentuk gelombang berbentuk keluaran mungkin tidak kotak, tapi mendekati keluaran gelombang kotak yang telah melalui untai integrator. Untuk mengembalikan bentuk tersebut ke gelombang kotak dapat digunakan gerbang dengan pemicu Schmitt, misalnya gerbang NOT dengan pemicu Schmitt 74LS14 (Tocci dan Widmer, 1998). Gambar Pembangkitan clock 1 MHz di port 1 pin 0 (Teknoin, Volume 13, Nomor 2, Desember 2008, ISSN: ). Pembangkit clock kurang dari 1 MHz Clock dengan frekuensi kurang dari 1 MHz dapat dibentuk dengan menunda pelaksanaan instruksi CPL P1.0 berikutnya. Penundaan dapat dilakukan dengan menyisipkan instruksi untuk tidak mengerjakan apa-apa, yaitu NOP (No operation). Instruksi tersebut membutuhkan waktu eksekusi satu siklus. Penyisipan satu instruksi NOP di antara dua instruksi CPL P1.0 akan menunda eksekusi instruksi CPL P1.0 berikutnya selama satu siklus. Dengan mengoperasikan mikrokontroler ini pada clock 24 MHz, maka instruksi CPL berikutnya akan tertunda satu siklus atau 0,5 mikrodetik, sehingga selang eksekusi dua instruksi CPL adalah 1 μs.

22 Gambar Pembangkitan clock 500 khz (Teknoin, Volume 13, Nomor 2, Desember 2008, ISSN: ) Penyisipan satu instruksi NOP akan membentuk clock dengan periode 2 mikrodetik atau berfrekuensi 500 khz. Penyisipan dua instruksi NOP akan membentuk clock dengan frekuensi Hz. Jumlah instruksi NOP yang dapat disisipkan dan frekuensi clock keluaran pada tabel 2.4. Tabel 2.4. Jumlah instruksi NOP yang disisipkan dan frekuensi clock keluaran (Teknoin, Volume 13, Nomor 2, Desember 2008, ISSN: ). NOP yang disisipkan fclock (khz) Mikrokontroler AT89C2051 Mikrokontroler AT89C2051 merupakan salah satu keluarga dari MCS-51 keluaran Atmel. Jenis Mikrokontroler ini pada prinsipnya dapat digunakan untuk mengolah data per bit ataupun data 8 bit secara bersamaan.

23 Pada prinsipnya program pada mikrokontroler dijalankan bertahap, jadi pada program itu sendiri terdapat beberapa set instruksi dan tiap instruksi itu dijalankan secara bertahap atau berurutan. Beberapa fasilitas yang dimiliki oleh mikrokontroler AT89C2051 adalah sebagai berikut: 1. Sebuah Central Processing Unit 8 bit. 2. Osilator internal dan rangkaian pewaktu. 3. RAM internal 128 byte. 4. Flash memori 2 Kbyte. 5. Lima buah jalur interupsi (dua buah interupsi eksternal dan tiga buah interupsi internal). 6. Empat buah programable port I/O yang masing-masing terdiri dari delapan buah jalur I/O. 7. Sebuah port serial dengan kontrol serial full duplex UART. 8. Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika. 9. Kecepatan dalam melaksanakan instruksi per siklus 1 mikrodetik pada frekuensi 12 MHz Pin-pin pada Mikrokontroler AT89C2051 Deskripsi pin-pin pada Microcontroller AT89C2051 adalah sebagai berikut:

24 AT89C GND VCC Gambar Pin IC Mikrokontroller AT89C VCC (Pin 20) Supply tegangan. 2. GND (Pin 10) Ground. 3. Port 3 (Pin 2, 3, 6 pin 9, 11) Port 3 merupakan 7 bit port I/O dua arah dengan internal pullup. Port 3 mempunyai fungsi pin masing-masing yang ditunjukkan pada tabel 2.5. Tabel 2.5. Fungsi masing-masing pin port 3 mikrokontroler AT89S2051. (Data sheet AT89C2051) Port (pin) Fungsi P3.0 (pin 2) RXD (port serial penerima data). P3.1 (pin 3) TXD (port serial pengirim data). P3.2 (pin 6) INT0 (input interupsi eksternal 0, aktif low).

25 P3.3 (pin 7) INT1 (input interupsi ekstrernal 1, aktif low). P3.4 (pin 8) T0 (eksternal input timer / counter 0). P3.5 (pin 9) T1 (eksternal input timer / counter 1). P3.7 (pin 11) RD (Read, aktif low) Sinyal kontrol pembacaan memori data input-output eksternal ke port RST (pin 1) Reset akan aktif dengan memberikan input high selama 2 siklus. 5. XTAL1 (pin 4) Input untuk clock internal. 6. XTAL2 (pin 5) Output dari osilator IC 4094 IC 4094 adalah suatu IC shift register 8 tingkat yang memiliki register latch untuk setiap bit untuk keperluan memindahkan data dari saluran serial kesaluran paralel dengan 3 tingkatan pergeseren bit Q0 sampai bit Q7 menuju output. Output paralel dapat dihubungkan langsung dengan jalur data umum. Data digeser pada perubahan sinyal clock dari Low ke High, selanjutnya data digeser dari register geser keregister penyimpanan, kemudian dengan memberikan logika high pada pin OE akan menggeser data dari register penyimpangan menuju register output.

26 Gambar Diagram fungsi register (Data Sheet IC 4094) Ada dua serial yang keluar dari IC 4094 yaitu Qs dan Q s yang disediakan untuk keperluan penyambungan beberapa IC secara serial. Data tersedia pada Qs pada pergeseran sinyal clock dari logika low ke logika high untuk memungkinkan pergeseran dengan kecepatan tinggi dalam keperluan penyambungan beberapa IC secara serial. Output pada Q s akan bergeser pada saat sinyal clock berubah dari logika high ke logika low. Gambar 2.14 menunjukkan posisi dan penamaan pin untuk IC Gambar Diagram Pin IC 4094 (Data sheet IC 4094).

27 Keterangan: D CP STR EO = data input = clock input = strobe input = ouput enable input Q S, Q S Q 0 S/d Q 7 = output serial = output parallel Seven Segment Seven segment merupakan LED yang disusun atas 7 segment yang dipergunakan untuk menampilkan angka 0 sampai 9 dan sejumlah karakter alfabet. Gambar Tampilan seven segmen Seven segment terdiri dari dua konfigurasi, yaitu common anoda dan common katoda. Pada seven segment tipe common anoda, anoda dari setiap LED dihubungkan menjadi satu kemudian dihubungkan ke sumber tegangan positif dan katoda dari masingmasing LED berfungsi sebagai input dari seven segment, seperti ditunjukkan pada gambar Gambar Konfigurasi seven segment tipe common anoda.

28 Sesuai dengan gambar 2.16, maka untuk menyalakan salah satu segmen, maka katodanya harus diberi tegangan 0 volt atau logika low. Misalnya jika segmen a akan dinyalakan, maka katoda pada segmen a harus diberi tegangan 0 volt atau logika low, dengan demikian maka segmen a akan menyala. Demikian juga untuk segmen lainnya. Pada seven segment tipe common katoda, katoda dari setiap LED dihubungkan menjadi satu kemudian dihubungkan ke ground dan anoda dari masing-masing LED berfungsi sebagai input dari seven segment. Gambar Konfigurasi seven segmen tipe common katoda. Sesuai dengan gambar 2.17, maka untuk menyalakan salah satu segmen, maka anodanya harus diberi tegangan minimal 3 volt atau logika high. Misalnya jika segmen a akan dinyalakan, maka anoda pada segmen a harus diberi tegangan minimal 3 volt atau logika high, dengan demikian maka segmen a akan menyala. Demikian juga untuk segmen lainnya.

29 2.2. Perangkat Lunak Pemrograman Bahasa C Pencipta bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada sekitar tahun C adalah bahasa pemrograman terstruktur, yang membagi program dalam bentuk sejumlah blok. Tujuannya adalah untuk memudahkan dalam pembuatan dan pengembangan program. Program yang ditulis dengan mengunakan C mudah sekali untuk dipindahkan dari satu jenis mesin ke jenis mesin lainnya. Hal ini berkat adanya standarisasi bahasa C yaitu berupa standar ANSI (American National Standards Institute) yang dijadikan acuan oleh para pembuat kompiler C. (Agus Bejo, 2008) Bentuk Dasar Program C Sebuah program dalam bahasa C setidaknya harus memiliki sebuah fungsi. Fungsi dasar ini disebut dengan fungsi utama (fungsi main) dan memiliki kerangka program sebagai berikut: void main (void) { // pernyataan-pernyataan } Jika kita memiliki beberapa fungsi yang lain maka fungsi utama inilah yang memiliki kedudukan paling tinggi dibandingkan fungsi-fungsi yang lain sehingga setiap kali program dijalankan akan selalu dimulai dari memanggil fungsi utama

30 terlebih dahulu. Fungsi-fungsi yang lain dapat dipanggil setelah fungsi utama dijalankan melalui pernyataan-pernyataan yang berada didalam fungsi utama. Contoh: // prototype fungsi inisialisasi port Void inisialisasi_port (char A, char B, char C, char D) { DDRA = A ; DDRB = B ; DDRC = C ; DDRD = D ; } // fungsi utama void main (void) { Inisialisasi_port (0xFF, 0xF0, 0x0F, 0x00) ; Pengenal Pengenal (identifier) merupakan sebuah nama yang diisikan oleh pemrogram untuk menunjukkan identitas dari sebuah konstanta, variable, fungsi, label atau tipe data khusus. Pemberian nama sebuah pengenal dapat ditentukan bebas sesuai keinginan pemrogram tetapi harus memenuhi aturan berikut: 1. Karakter pertama tidak boleh menggunakan angka. 2. Karakter kedua dapat berupa huruf, angka, atau garis bawah. 3. Tidak boleh menggunakan spasi. 4. Case sensitive, yaitu huruf kapital dan huruf kecil dianggap berbeda.

31 5. Tidak boleh menggunakan kata-kata yang merupakan sintaks maupun operator dalam pemrograman C, misalnya: void, short, const, if, bit, long, case, do, switch, char, float, for, else, break, int, double, include, while Tipe Data Tipe data merupakan bagian program yang paling penting karena tipe data mempengaruhi setiap instruksi yang akan dilaksanakan oleh computer. Misalnya saja 5 dibagi 2 bisa saja menghasilkan hasil yang berbeda tergantung tipe datanya. Jika 5 dan 2 bertipe integer maka akan menghasilkan nilai 2, namun jika keduanya bertipe float maka akan menghasilkan nilai Pemilihan tipe data yang tepat akan membuat proses operasi data menjadi lebih efisien dan efektif. Tabel 2.6. Tipe Data (Agus Bejo, 2009). Tipe data Ukuran Jangkauan nilai Bit 1 bit 0 atau 1 Char 1 byte -128 s/d 127 Unsigned char 1 byte 0 s/d 255

32 Signed char 1byte -128 s/d 127 Int 2 byte s/d Short int 2 byte s/d Unsigned int 2 byte 0 s/d Signed int 2 byte s/d Long int 4 byte s/d Unsigned long int 4 byte 0 s/d Signed long int 4 byte s/d Float 4 byte 1.2*10-38 s/d 3.4* Double 4 byte 1.2*10-38 s/d 3.4*10 +38

33 Variabel Bertanda (Signed) dan Tak Bertanda (Unsigned) Untuk pendeklarasian tipe data yang berupa bilangan bulat yaitu char, int, short dan long dapat ditambahkan signed atau unsigned. Signed digunakan untuk mendefenisikan bahwa data yang disimpan dalam variabel adalah bertanda sedangkan unsigned untuk data yang tidak bertanda. Contoh: Unsigned char data1; Signed char data2; Pada contoh diatas variabel data1 bertipe char (1 byte) dan tidak bertanda (unsigned) sehingga dapat menyimpan data dari 0 sampai 255. Sedangkan variabel data2 bertipe char (1 byte) dan bertanda (signed) sehingga dapat menyimpan data dari -128 sampai 127. Nilai negatif pada bilangan bertanda disimpan dalam bentuk komplemen 2. Misalnya untuk nilai (-1) komplemen 2 nya adalah 0xFF sehingga data 0xFF inilah yang disimpan dalam variabel tersebut. (Agus Bejo 2008) Pengarah Preprosesor Pengarah preprosesor digunakan untuk mendefenisikan prosesor yng digunakan, dalam hal ini adalah untuk mendefenisikan jenis mikrokontroler yang digunakan. Dengan pengarah preprosesor ini maka pendeklarasian register-register dan penamaannya dilakukan pada file lain yang disisipkan dalam program utama dengan sintaks sebagai berikut: # include <nama_preprosesor> Contoh: # include <mega 8L.h>

34 Pernyataan Pernyataan adalah satu buah instruksi lengkap yang berdiri sendiri. Berikut adalah contoh sebuah pernyataan: PORTC = 0x0F; Pernyataan PORTC = 0x0F; merupakan sebuah instruksi untuk mengeluarkan data 0x0F ke Port C. (Agus Bejo, 2008) Fungsi Pustaka Bahasa C memiliki sejumlah fungsi pustaka yang berada pada file-file tertentu dan sengaja disediakan untuk menangani berbagai hal dengan cara memanggil fungsifungsi yang telah dideklarasikan dalam file tersebut. Dalam banyak hal, pustakapustaka yang tersedia tidak berbentuk kode sumber melainkan dalam bentuk yang telah dikompilasi. Sintaks untuk menggunakan fungsi pustaka ini adalah sebagai berikut: # include <nama_file_pustaka> Contoh: # include <lcd.h> Beberapa fungsi pustaka yang telah disediakan oleh CodeVisionAVR antara lain adalah: 1. Fungsi Tipe Karakter (ctype.h). 2. Fungsi Standar I/O (stdio.h).

35 3. Fungsi matematika (math.h). 4. Fungsi String (string.h). 5. Fungsi Konversi BCD (bcd.h). 6. Fungsi Konversi Akses Memori (mem.h). 7. Fungsi Tunda (delay.h). 8. Fungsi LCD (lcd.h). 9. Fungsi I2C (i2c.h).fungsi SPI (spi.h). 10. Fungsi Real Time Clock (RTC) (ds 1302.h, ds1307.h). 11. Fungsi Sensor Suhu LM75, DS1621 dll (lm75.h, ds1621.h). 12. Fungsi Sensor Suhu LM75, DS1621 dll (lm75.h, ds1621.h) Pernyataan IF Pernyataan if digunakan untuk melakukan pengambilan keputusan terhadap dua buah kemungkinan yaitu mengerjakan suatu blok pernyataan atau tidak. Bentuk pernyataan if adalah sebagai berikut: If (kondisi) { // blok pernyataan yang akan dikerjakan // jika kondisi if terpenuhi } Contoh: If (PINA>0x80) { Dataku = PINA;

36 PORTC=0xFF; } Pernyataan if diatas akan mengecek apakah data yang terbaca pada Port A (PINA) nilainya lebih dari 0x80 atau tidak, jika ya maka variabel dataku diisi dengan nilai PINA dan data 0xFF dikeluarkan ke port C. Apabila dalam blok pernyataan hanya terdapat satu pernyataan saja maka tanda { dan } dapat dihilangkan seperti contoh berikut: If (PINA>0x80) PORTC = 0xFF Pernyataan Switch Pernyataan switch digunakan untuk melakukan pengambilan keputusan terhadap banyak kemungkinan. Bentuk pernyataan switch adalah sebagai berikut: switch (ekspresi) { case nilai_1 case nilai_2 case nilai_3 : pernyataan_1; break; : pernyataan_2; break; : pernyataan_3; break;. Default : pernyataan_default; break; } Pada pernyataan switch, masing-masing pernyataan (pernyataan_1 sampai dngan pernyataan_default) dapat berupa satu atau beberapa perintah dan tidak perlu berupa blok pernyataan. Pernyataan_1 akan dikerjakan jika ekspresi bernilai sama dengan nilai_1, pernyataan_2 akan dikerjakan jika ekspresi bernilai sama dengan

37 nilai_2, pernyataan_3 akan dikerjakan jika ekspresi bernilai sama dengan nilai_3, dan seterusnya. Pernyataan_default bersifat opsional, artinya boleh ada boleh tidak. Jika ada maka pernyataan_default akan dikerjakan apabila nilai ekspresi tidak ada yang sama satupun dengan salah satu nilai_1, nilai_2, nilai_3 dan seterusnya. Setiap akhir dari pernyataan harus diakhiri dengan break, karena ini digunakan untuk keluar dari pernyataan switch. Contoh: switch (PINA) { Case 0xFE Case 0xFD : PORTC = 0x00; break; : PORTC = 0xFF; break; Pernyataan di atas berarti membaca port A, kemudian datanya (PINA) akan dicocokkan dengan nilai case. Jika PINA bernilai 0xFE maka data 0x00 akan dikeluarkan ke port C kemudian program keluar dari pernyataan switch tetapi jika PINA bernilai 0xFD maka data 0xFF akan dikeluarkan ke port C kemudian program keluar dari pernyataan switch Memanggil Assembler Meskipun kita menggunakan bahasa C, kita masih tetap bisa menggunakan sintaks pemrograman assembler. Caranya adalah sebagai berikut: # asm ; instruksi-instruksi assembler # endasm Contoh: # asm Ldi r0, 100

38 mov r2, r3 # endasm Bahasa Assembly MCS-51 Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89C4051 adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa ini hanya ada 51 instruksi, antara lain yaitu: 1. Instruksi MOV Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register tertentu. Pengisian nilai dapat secara langsung atau tidak langsung. Contoh pengisian nilai secara langsung: MOV R0, #20h Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0). Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai.contoh pengisian nilai secara tidak langsung: MOV 20h, #80h MOV R0, 20h Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20 Heksadesimal ke register 0 (R0). Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah alamat.

39 2. Instruksi DJNZ Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk mengurangi nilai register tertentu dengan 1 dan lompat jika hasil pengurangannya belum nol. Contoh: MOV R0, #80h Loop: DJNZ R0, Loop... R0 = 1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan meneruskan ke perintah pada baris berikutnya. 3. Instruksi ACALL Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh:... ACALL TUNDA... TUNDA: Instruksi RET Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin pemanggil setelah instruksi ACALL dilaksanakan. Contoh:

40 ACALL TUNDA... TUNDA:... RET 5. Instruksi JMP (Jump) Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh: Loop: JMP Loop 6. Instruksi JB (Jump if bit) Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika high (1). Contoh: Loop: JB P1.0, Loop Instruksi JNB (Jump if Not bit) Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika low (0). Contoh, Loop:

41 JNB P1.0, Loop Instruksi CJNZ (Compare Jump If Not Equal) Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register dengan suatu nilai tertentu. Contoh, Loop:... CJNE R0, #20h, Loop... Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin Loop. Jika nilai R0 sama dengan 20h, maka program akan melanjutkan instruksi selanjutnya. 9. Instruksi DEC (Decreament) Instruksi ini merupakan perintah untuk mengurangi nilai register yang dimaksud dengan 1. Contoh: MOV R0, #20h R0 = 20h... DEC R0 R0 = R Instruksi INC (Increament) Instruksi ini merupakan perintah untuk menambahkan nilai register yang dimaksud dengan 1. Contoh,

42 MOV R0,#20h R0 = 20h... INC R0 R0 = R CodeVisionAVR CodeVisionAVR merupakan salah satu software kompiler yang khusus digunakan untuk mikrokontroler keluarga AVR. CodeVisionAVR merupakan yang terbaik bila dibandingkan dengan kompiler-kompiler yang lain karena beberapa kelebihan yang dimiliki oleh CodeVisionAVR antara lain: 1. Menggunakan IDE (Integrated Development Environment). 2. Fasilitas yang disediakan lengkap (mengedit program, mengkompile program, mendownload program) serta tampilannya terlihat menarik dan mudah dimengerti. Kita dapat mengatur settingan editor sedemikian rupa sehingga membantu memudahkan kita dalam penulisan program. 3. Mampu membangkitkan kode program secara otomatis dengan menggunakan fasilitas CodeWizardAVR. 4. Memiliki fasilitas untuk mendownload program langsung dari CodeVisionAVR dengan menggunakan hardware khusus seperti Atmel STK500, Kanda System STK200+/300 dan beberapa hardware lain yang telah didefenisikan oleh CodeVisionAVR. 5. Memiliki fasilitas debugger sehingga dapat menggunakan software compiler lain untuk mengecek kode assembler nya, contohnya AVRStudio. 6. Memiliki terminal komunikasi serial yang terintegrasi dalam CodeVisionAVR sehingga dapat digunakan untuk membantu pengecekan

43 program yang telah dibuat khususnya yang menggunakan fasililtas komunikasi serial UART. CodeVision chip programmer Salah satu kelebihan dari CodeVisionAVR adalah tersedianya fasilitas untuk mendownload program ke mikrokontroler yang telah terintegrasi sehingga demikian CodeVisionAVR ini selain dapat berfungsi sebagai software kompiler juga dapat berfungsi sebagai software programmer/ downloader. Jadi kita dapat melakukan proses download program yang telah dikompile dengan menggunakan software CodeVisionAVR juga. Gambar Programmer Setting ( Software 8051 Editor, Assembler, Simulator Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah editor, yaitu 8051 Editor, Assembler, Simulator.

44 Gambar Software 8051 Editor, Assembler, Simulator ( pdf). Setelah program selesai ditulis, kemudian di-save dan kemudian di-assemble (di-compile). Pada saat di-assemble akan tampil pesan peringatan dan kesalahan. Jika masih ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu sampai tidak ada pesan kesalahan lagi. Software 8051 IDE ini berfungsi untuk merubah program yang kita tuliskan ke dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an. Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroler Software Downloader Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller digunakan software ISP- Flash Programmer 3.0a yang dapat didownload dari internet.

45 Gambar ISP- Flash Programmer ( pdf). Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file heksadesimal dari hasil kompilasi, kemudian klik Write untuk mengisikan hasil kompilasi tersebut ke mikrokontroller.

Pencipta bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada. sekitar tahun C adalah bahasa pemrograman terstruktur, yang membagi

Pencipta bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada. sekitar tahun C adalah bahasa pemrograman terstruktur, yang membagi 2.. PerangkatLunak 2.1.1. Pemrograman Bahasa C Pencipta bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada sekitar tahun 1972. C adalah bahasa pemrograman terstruktur, yang membagi program dalam

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 6 BAB 2 LANDASAN TEORI 2.1 Perangkat Keras 2.1.1 Bahasa Assembly MCS-51 Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi

Lebih terperinci

BAB 2 TINJAUAN TEORITIS. Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer,

BAB 2 TINJAUAN TEORITIS. Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer, BAB 2 TINJAUAN TEORITIS 2.1.Hardware 2.1.1 Mikrokontroler AT89S51 Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi

Lebih terperinci

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu:

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu: BAB 2 LANDASAN TEORI 2.1 Perangkat Keras 2.1.1 Mikrokontroler AT89S52 Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu mikrokomputer CMOS 8 bit dengan daya rendah, kemampuan tinggi,

Lebih terperinci

Dasar Pemrograman Mikrokontroler dengan Bahasa C

Dasar Pemrograman Mikrokontroler dengan Bahasa C Dasar Pemrograman Mikrokontroler dengan Bahasa C Pokok Bahasan: 1. Penggunaan Fungsi (Using Functions) 2. Penanaman bahasa rakitan di dalam Program 'C' Tujuan Belajar: Setelah mempelajari dalam bab ini,

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan BAB II TINJAUAN PUSTAKA 2.1. PERANGKAT KERAS 2.1.1. Arsitektur Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, hadir memenuhi kebutuhan pasar

Lebih terperinci

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan BAB 2 LANDASAN TEORI 2.1. Sistem Minimum Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 PERANGKAT KERAS 2.1.1 Arsitektur Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontoler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market

Lebih terperinci

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu BAB II LANDASAN TEORI 2.1. Perangkat Keras Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu perangkat keras (hardware) yang dapat mengolah data, menghitung, mengingat dan mengambil pilihan.

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI 4 BAB II LANDASAN TEORI 2.1 Perangkat keras Mikrokontroler AT89S51 2.1.1 Arsitektur Mikrokontroler AT89S51 Mikrokontroler AT89S51 merupakan salah satu keluarga dari MCS-51 keluaran Atmel. Jenis mikrokontroler

Lebih terperinci

BAB 2 LANDASAN TEORI. Mikrokontroler AVR (Alf and Vegard s RISC Processor) dari Atmel ini

BAB 2 LANDASAN TEORI. Mikrokontroler AVR (Alf and Vegard s RISC Processor) dari Atmel ini BAB 2 LANDASAN TEORI 2.1 Mikrokontroller ATMega 8535 Mikrokontroler AVR (Alf and Vegard s RISC Processor) dari Atmel ini menggunakan arsitektur RISC (Reduced Instruction Set Computing) yang artinya proses

Lebih terperinci

DASAR PEMROGRAMAN C UNTUK MIKROKONTROLER

DASAR PEMROGRAMAN C UNTUK MIKROKONTROLER DASAR PEMROGRAMAN C UNTUK MIKROKONTROLER Naskan, Jurusan Teknik Informatika, STMIK AMIKOM Yogyakarta Jl. Ring Road Utara Condong Catur Depok Sleman Yogyakarta Bahasa pemrograman yang dapat digunakan untuk

Lebih terperinci

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

ARSITEKTUR MIKROKONTROLER AT89C51/52/55 ARSITEKTUR MIKROKONTROLER AT89C51/52/55 A. Pendahuluan Mikrokontroler merupakan lompatan teknologi mikroprosesor dan mikrokomputer. Mikrokontroler diciptakan tidak semata-mata hanya memenuhi kebutuhan

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Perangkat Keras 2.1.1. Real-Time Clock (RTC) DS1307 Real-time clock DS1307 adalah IC yang dibuat oleh perusasahaan Dallas Semiconductor. IC ini memiliki kristal yang dapat mempertahankan

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Perangkat Keras (Hardware) 2.1.1. Mikrokontroller AT89S51 Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroller dan mikrokomputer, hadir memenuhi kebutuhan pasar

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA 4 BAB II TINJAUAN PUSTAKA 2.1 Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontoler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru.

Lebih terperinci

BAB II LANDASAN TEORI. dikembangkan pada tahun 1996 oleh dua orang mahasiswa Norwegian Institute of

BAB II LANDASAN TEORI. dikembangkan pada tahun 1996 oleh dua orang mahasiswa Norwegian Institute of 5 BAB II LANDASAN TEORI 2.1 Mikrokontroler ATmega8535 Atmel AVR adalah jenis mikrokontroller yang paling sering dipakai dalam bidang elektronika dan instrumentasi. Arsitektur mikrokontroler jenis AVR pertama

Lebih terperinci

BAB 2 TINJAUAN TEORITIS

BAB 2 TINJAUAN TEORITIS 7 BAB 2 TINJAUAN TEORITIS 1 Konveyor Konveyor hanya bergerak ke satu arah saja, konveyor digerakkan dengan motor stepper 12V type. Sinyal keluaran dari motor stepper untuk menggerakkan konveyor dirangkaikan

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI 1 BAB II LANDASAN TEORI 2.1. Real-Time Clock (RTC) DS1307 Real Time Clock berhubungan dengan waktu mulai dari detik, menit, jam, hari, tanggal, bulan dan tahun. Tetapi IC RTC ini juga bisa dipakai untuk

Lebih terperinci

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51 MIKROKONTROLER Arsitektur Mikrokontroler AT89S51 Ringkasan Pendahuluan Mikrokontroler Mikrokontroler = µp + Memori (RAM & ROM) + I/O Port + Programmable IC Mikrokontroler digunakan sebagai komponen pengendali

Lebih terperinci

MIKROKONTROLER AT89S52

MIKROKONTROLER AT89S52 MIKROKONTROLER AT89S52 Mikrokontroler adalah mikroprosessor yang dirancang khusus untuk aplikasi kontrol, dan dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu chip. AT89S52 adalah salah satu anggota

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Perangkat Keras 2.1.1. Mikrokontroler AT89S51 Mikrokontroler sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer hadir memenuhi kebutuhan pasar (market need) dan

Lebih terperinci

PERANCANGAN HARDWARE JAM DIGITAL DENGAN SISTEM KALENDER BERBASIS MIKROKONTROLLER DS1307 TUGAS AKHIR DIAN SAIFUL RAMADHAN NUR TANJUNG

PERANCANGAN HARDWARE JAM DIGITAL DENGAN SISTEM KALENDER BERBASIS MIKROKONTROLLER DS1307 TUGAS AKHIR DIAN SAIFUL RAMADHAN NUR TANJUNG PERANCANGAN HARDWARE JAM DIGITAL DENGAN SISTEM KALENDER BERBASIS MIKROKONTROLLER DS1307 TUGAS AKHIR DIAN SAIFUL RAMADHAN NUR TANJUNG 072408030 PROGRAM STUDI DIPLOMA III FISIKA INSTRUMENTASI DEPARTEMEN

Lebih terperinci

BAB II. PENJELASAN MENGENAI System-on-a-Chip (SoC) C8051F Pengenalan Mikrokontroler

BAB II. PENJELASAN MENGENAI System-on-a-Chip (SoC) C8051F Pengenalan Mikrokontroler BAB II PENJELASAN MENGENAI System-on-a-Chip (SoC) C8051F005 2.1 Pengenalan Mikrokontroler Mikroprosesor adalah sebuah proses komputer pada sebuah IC (Intergrated Circuit) yang di dalamnya terdapat aritmatika,

Lebih terperinci

BAB III PERENCANAAN DAN REALISASI

BAB III PERENCANAAN DAN REALISASI BAB III PERENCANAAN DAN REALISASI 3.1 PERANCANGAN UMUM SISTEM Metode untuk pelaksanaan Program dimulai dengan mempelajari system pengukuran tangki air yang akan digunakan. Dari sini dikembangkan apa saja

Lebih terperinci

MICROCONTROLER AVR AT MEGA 8535

MICROCONTROLER AVR AT MEGA 8535 MICROCONTROLER AVR AT MEGA 8535 Dwisnanto Putro, S.T., M.Eng. MIKROKONTROLER AVR Mikrokontroler AVR merupakan salah satu jenis arsitektur mikrokontroler yang menjadi andalan Atmel. Arsitektur ini dirancang

Lebih terperinci

MICROCONTROLER AVR AT MEGA 8535

MICROCONTROLER AVR AT MEGA 8535 MICROCONTROLER AVR AT MEGA 8535 Dwisnanto Putro, S.T., M.Eng. MIKROKONTROLER AVR Jenis Mikrokontroler AVR dan spesifikasinya Flash adalah suatu jenis Read Only Memory yang biasanya diisi dengan program

Lebih terperinci

BAB II DASAR TEORI. 2.1 Ethanol

BAB II DASAR TEORI. 2.1 Ethanol BAB II DASAR TEORI 2.1 Ethanol Ethanol yang kita kenal dengan sebutan alkohol adalah hasil fermentasi dari tetes tebu. Dari proses fermentasi akan menghasilkan ethanol dengan kadar 11 12 %. Dan untuk menghasilkan

Lebih terperinci

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor Sistem Minimum Mikrokontroler TTH2D3 Mikroprosesor MIKROKONTROLER AVR Mikrokontroler AVR merupakan salah satu jenis arsitektur mikrokontroler yang menjadi andalan Atmel. Arsitektur ini dirancang memiliki

Lebih terperinci

DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR...

DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR... DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR... ABSTRAKSI... TAKARIR... DAFTAR ISI... DAFTAR TABEL...

Lebih terperinci

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut. Arsitektur mikrokontroler MCS-51 diotaki oleh CPU 8 bit yang terhubung melalui satu jalur bus dengan memori penyimpanan berupa RAM dan ROM serta jalur I/O berupa port bit I/O dan port serial. Selain itu

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM 3.1 Rancangan Perangkat Keras 3.1.1 Blok Diagram Sistem Blok diagram dari sistem AVR standalone programmer adalah sebagai berikut : Tombol Memori Eksternal Input I2C PC SPI AVR

Lebih terperinci

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS 3.1. Pendahuluan Perangkat pengolah sinyal yang dikembangkan pada tugas sarjana ini dirancang dengan tiga kanal masukan. Pada perangkat pengolah sinyal

Lebih terperinci

PERANCANGAN SOFTWARE JAM DIGITAL DENGAN SISTEM KALENDER BERBASIS MIKROKONTROLLER DS1307 TUGAS AKHIR TAUFIK PASARIBU

PERANCANGAN SOFTWARE JAM DIGITAL DENGAN SISTEM KALENDER BERBASIS MIKROKONTROLLER DS1307 TUGAS AKHIR TAUFIK PASARIBU PERANCANGAN SOFTWARE JAM DIGITAL DENGAN SISTEM KALENDER BERBASIS MIKROKONTROLLER DS1307 TUGAS AKHIR TAUFIK PASARIBU 072408023 PROGRAM STUDI DIPLOMA III FISIKA INSTRUMENTASI DEPARTEMEN FISIKA FAKULTAS MATEMATIKA

Lebih terperinci

BAB II DASAR TEORI 2.1. Mikrokontroler AVR ATmega32

BAB II DASAR TEORI 2.1. Mikrokontroler AVR ATmega32 BAB II DASAR TEORI Pada bab ini akan menerangkan beberapa teori dasar yang mendukung terciptanya skripsi ini. Teori-teori tersebut antara lain mikrokontroler AVR ATmega32, RTC (Real Time Clock) DS1307,

Lebih terperinci

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika. Assembler Bahasa pemrograman mikrokontroler MCS-51

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika. Assembler Bahasa pemrograman mikrokontroler MCS-51 TAKARIR Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika Assembler Bahasa pemrograman mikrokontroler MCS-51 Assembly Listing Hasil dari proses assembly dalam rupa campuran dari

Lebih terperinci

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK 4.1 Pengukuran Alat Pengukuran dilakukan untuk melihat apakah rangkaian dalam sistem yang diukur sesuai dengan spesifikasi

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI PLC (Programable Logic Control) adalah kontroler yang dapat diprogram. PLC didesian sebagai alat kontrol dengan banyak jalur input dan output. Pengontrolan dengan menggunakan PLC

Lebih terperinci

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika TAKARIR AC (Alternating Current) Adalah sistem arus listrik. Sistem AC adalah cara bekerjanya arus bolakbalik. Dimana arus yang berskala dengan harga rata-rata selama satu periode atau satu masa kerjanya

Lebih terperinci

Mikrokontroler AVR. Hendawan Soebhakti 2009

Mikrokontroler AVR. Hendawan Soebhakti 2009 Mikrokontroler AVR Hendawan Soebhakti 2009 Tujuan Mampu menjelaskan arsitektur mikrokontroler ATMega 8535 Mampu membuat rangkaian minimum sistem ATMega 8535 Mampu membuat rangkaian downloader ATMega 8535

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 1.1 Penelitian Terdahulu Sebagai bahan pertimbangan dalam penelitian ini akan dicantumkan beberapa hasil penelitian terdahulu : Penelitian yang dilakukan oleh Universitas Islam

Lebih terperinci

Tabel 1. Karakteristik IC TTL dan CMOS

Tabel 1. Karakteristik IC TTL dan CMOS BAB II TINJAUAN PUSTAKA 2.1. IC Digital TTL dan CMOS Berdasarkan teknologi pembuatannya, IC digital dibedakan menjadi dua jenis, yaitu TTL (Transistor-Transistor Logic) dan CMOS (Complementary Metal Oxide

Lebih terperinci

Rancangan Sistem Autofeeder Ikan pada Aquarium Berbasis Mikrokontroler ATMEGA8535

Rancangan Sistem Autofeeder Ikan pada Aquarium Berbasis Mikrokontroler ATMEGA8535 Rancangan Sistem Autofeeder Ikan pada Aquarium Berbasis Mikrokontroler ATMEGA8535 Dedi Satria Teknik Informatika Universitas Serambi Mekkah dedisatria@serambimekkah.ac.id ABSTRAK Kajian sistem mikrokontroler

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1. Perangkat Keras 2.1.1. Mikrokontroler AT89S51 Mikrokontroler merupakan suatu komponen elektronika yang di dalamnya terdapat rangkaian mikroprosesor, memori (RAM atau ROM) dan

Lebih terperinci

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED 3.1. Rancang Bangun Perangkat Keras Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar 3.1. Sistem ini terdiri dari komputer, antarmuka

Lebih terperinci

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

PORT PARALEL MIKROKONTROLER ATMEL AT89C51 Lab Elektronika Industri Mikrokontroler - 1 PORT PARALEL MIKROKONTROLER ATMEL AT89C51 I. FISIK AT89C51 Mikrokontroler AT89C51 umumnya mempunyai kemasan 40 pin seperti gambar berikut. AT89C51 mempunyai

Lebih terperinci

BAB III MIKROKONTROLER

BAB III MIKROKONTROLER BAB III MIKROKONTROLER Mikrokontroler merupakan sebuah sistem yang seluruh atau sebagian besar elemennya dikemas dalam satu chip IC, sehingga sering disebut single chip microcomputer. Mikrokontroler merupakan

Lebih terperinci

BAB II KONSEP DASAR PERANCANGAN

BAB II KONSEP DASAR PERANCANGAN BAB II KONSEP DASAR PERANCANGAN Pada bab ini akan dijelaskan konsep dasar sistem keamanan rumah nirkabel berbasis mikrokontroler menggunakan modul Xbee Pro. Konsep dasar sistem ini terdiri dari gambaran

Lebih terperinci

Mikrokontroler 89C51 Bagian II :

Mikrokontroler 89C51 Bagian II : Mikrokontroler 89C51 Bagian II : Mikrokontroler 89C51 Mikrokontroler 89C51 merupakan mikrokomputer CMOS 8 bit dengan 4 Kbytes Flash Programmable Memory. Arsitektur 89C51 ditunjukkan pada gambar 2. Accumulator

Lebih terperinci

BAB 2. cara merancang alat yang akan di buat sesuai dasar teori. Sebelum merancang suatu

BAB 2. cara merancang alat yang akan di buat sesuai dasar teori. Sebelum merancang suatu BAB 2 LANDASAN TEORI PINTU KANAL BANJIR OTOMATIS PADA BENDUNGAN 2.1 Prinsip kerja pembuka/penutup pintu Dalam membuat suatu alat ada beberapa hal yang perlu di perhatikan yaitu bagaimana cara merancang

Lebih terperinci

Memprogram Port sebagai Output dan Input Sederhana

Memprogram Port sebagai Output dan Input Sederhana BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram Port sebagai Input dan Output sederhana menggunakan bahasa pemrograman assembly Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami Konstruksi

Lebih terperinci

4. Port Input/Output Mikrokontroler MCS-51

4. Port Input/Output Mikrokontroler MCS-51 4. Port Input/Output Mikrokontroler MCS-51 Mikrokontroler MCS-51 memiliki 2 jenis port input/output, yaitu port I/O parallel dan port I/O serial. Port I/O parallel sebanyak 4 buah dengan nama P0,P1,P2

Lebih terperinci

BAB 2 LANDASAN TEORI. bisa digunakan untuk memindahkan program yang ber-ekstention.hex ke Flash,

BAB 2 LANDASAN TEORI. bisa digunakan untuk memindahkan program yang ber-ekstention.hex ke Flash, BAB 2 LANDASAN TEORI Arsitektur Mikrokontroler AT89S51 Programer Atmel seri S merupakan programer yang serbaguna, karena programer ini bisa digunakan untuk memindahkan program yang ber-ekstention.hex ke

Lebih terperinci

BAB III ANALISA DAN CARA KERJA RANGKAIAN

BAB III ANALISA DAN CARA KERJA RANGKAIAN BAB III ANALISA DAN CARA KERJA RANGKAIAN 3.1 Analisa Rangkaian Secara Blok Diagram Pada rangkaian yang penulis buat berdasarkan cara kerja rangkaian secara keseluruhan penulis membagi rangkaian menjadi

Lebih terperinci

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di BAB III TEORI PENUNJANG 3.1. Microcontroller ATmega8 Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti proccesor, memori (sejumlah kecil RAM, memori

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada bab ini akan dibahas mengenai perancangan dan realisasi dari perangkat keras maupun perangkat lunak dari setiap modul yang dipakai pada skripsi ini. 3.1. Perancangan dan

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Mikrokontroller AT89S51 Didalam pembuatan alat ini peran penting mikrokontroller sangat berpengaruh dalam menentukan hasil akhir /output dari fungsi alat ini, yang mana hasil akhir/ouput

Lebih terperinci

BAB III METODE PENELITIAN. oleh karenanya akan dibuat seperti pada Gambar 3.1.

BAB III METODE PENELITIAN. oleh karenanya akan dibuat seperti pada Gambar 3.1. BAB III METODE PENELITIAN 3.1 Model Penelitian Agar mendapatkan hasil yang diinginkan maka diperlukan suatu rancangan agar dapat mempermudah dalam memahami sistem yang akan dibuat, oleh karenanya akan

Lebih terperinci

INSTRUKSI. TTH2D3 Mikroprosesor

INSTRUKSI. TTH2D3 Mikroprosesor INSTRUKSI TTH2D3 Mikroprosesor AT Mega 32 pin diagram Port B Port A Port D Port C ATMega32 Pin out & Descriptions Mega32/Mega16 (XCK/T0) PB0 PA0 (ADC0) (T1) PB1 PA1 (ADC1) (INT2/AIN0) PB2 PA2 (ADC2) (OC0/AIN1)

Lebih terperinci

PERANCANGAN DAN PEMBUATAN JAM DIGITAL DILENGKAPI DENGAN PENUNJUK TERMOMETER BERBASIS MIKROKONTROLER ATMEGA8535

PERANCANGAN DAN PEMBUATAN JAM DIGITAL DILENGKAPI DENGAN PENUNJUK TERMOMETER BERBASIS MIKROKONTROLER ATMEGA8535 PERANCANGAN DAN PEMBUATAN JAM DIGITAL DILENGKAPI DENGAN PENUNJUK TERMOMETER BERBASIS MIKROKONTROLER ATMEGA8535 SKRIPSI Diajukan Oleh: ARDINAL SAKTI HASIBUAN NIM: 070821003 DEPARTEMEN FISIKA FAKULTAS MATEMATIKA

Lebih terperinci

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto TKC210 - Teknik Interface dan Peripheral Eko Didik Sistem Komputer - Universitas Diponegoro Review Kuliah Pembahasan tentang: Referensi: mikrokontroler (AT89S51) mikrokontroler (ATMega32A) Sumber daya

Lebih terperinci

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK 21 BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK 3.1 Gambaran umum Perancangan sistem pada Odometer digital terbagi dua yaitu perancangan perangkat keras (hardware) dan perangkat lunak (software). Perancangan

Lebih terperinci

BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS DAN PERANGKAT LUNAK SISTEM. Dari diagram sistem dapat diuraikan metode kerja sistem secara global.

BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS DAN PERANGKAT LUNAK SISTEM. Dari diagram sistem dapat diuraikan metode kerja sistem secara global. BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS DAN PERANGKAT LUNAK SISTEM 3.1 Perancangan Perangkat Keras 3.1.1 Blok Diagram Dari diagram sistem dapat diuraikan metode kerja sistem secara global. Gambar

Lebih terperinci

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia Mikrokontroler Mikrokontroler adalah sistem komputer yang dikemas dalam sebuah IC. IC tersebut mengandung semua komponen pembentuk komputer seperti CPU,

Lebih terperinci

BAB III PERANCANGAN STAND ALONE RFID READER. Dalam penelitian ini, perancangan sistem meliputi :

BAB III PERANCANGAN STAND ALONE RFID READER. Dalam penelitian ini, perancangan sistem meliputi : BAB III PERANCANGAN STAND ALONE RFID READER 3.1 Perancangan Sistem Dalam penelitian ini, perancangan sistem meliputi : a. perancangan perangkat keras (hardware) dengan membuat reader RFID yang stand alone

Lebih terperinci

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051 Lab Elektronika Industri Mikrokontroler - 1 AT89C1051 I. FITUR AT89C1051 Kompatibel dengan produk MCS51 1k byte program flash ROM yang dapa diprogram ulang hingga 1000 kali Tegangan operasi 2.7 volt hingga

Lebih terperinci

ANALISIS KETEPATAN FREKUENSI PEMBANGKIT CLOCK BERBASIS MIKROKONTROLER

ANALISIS KETEPATAN FREKUENSI PEMBANGKIT CLOCK BERBASIS MIKROKONTROLER 6 ANALISIS KETEPATAN FREKUENSI PEMBANGKIT CLOCK BERBASIS MIKROKONTROLER Freedy Kurniawan Jurusan Teknik Elektro, Sekolah Tinggi Teknologi Adisutjipto Jl. Janti Blok R, Kompleks Lanud Adisutjipto, Yogyakarta

Lebih terperinci

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi BAB 2 LANDASAN TEORI 2.1. Inteligent Parking System Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi menjadi beberapa tempat. Dengan demikian kendaraan yang

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada bab ini akan dijelaskan mengenai perancangan dari perangkat keras, serta perangkat lunak dari alat akuisisi data termokopel 8 kanal. 3.1. Gambaran Sistem Alat yang direalisasikan

Lebih terperinci

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN DAN PEMBUATAN ALAT BAB III PERANCANGAN DAN PEMBUATAN ALAT 3.1 Uraian Umum Dalam perancangan alat akses pintu keluar masuk menggunakan pin berbasis mikrokontroler AT89S52 ini, penulis mempunyai pemikiran untuk membantu mengatasi

Lebih terperinci

BAB III PERANCANGAN DAN REALISASI ALAT

BAB III PERANCANGAN DAN REALISASI ALAT BAB III PERANCANGAN DAN REALISASI ALAT Pada bab ini akan dibahas mengenai perancangan sistem dan realisasi perangkat keras dan perangkat lunak dari setiap modul yang mendukung alat secara keseluruhan.

Lebih terperinci

BAB 3 PERANCANGAN ALAT DAN PROGRAM

BAB 3 PERANCANGAN ALAT DAN PROGRAM BAB 3 PERANCANGAN ALAT DAN PROGRAM 3.1. DIAGRAM BLOK display Penguat sinyal Sensor 1 keypad AT89S51 Penguat sinyal Sensor 5 relay alarm pompa Keterangan diagram blok: Sensor air yang berfungsi untuk mengetahui

Lebih terperinci

BAB III PERANCANGAN PERANGKAT KERAS DAN LUNAK. Perangkat keras dari alat ini secara umum terdiri dari rangkaian dibagi

BAB III PERANCANGAN PERANGKAT KERAS DAN LUNAK. Perangkat keras dari alat ini secara umum terdiri dari rangkaian dibagi 68 BAB III PERANCANGAN PERANGKAT KERAS DAN LUNAK 3.1. Gambaran Umum Perangkat keras dari alat ini secara umum terdiri dari rangkaian dibagi perangkat elektronik. Perancangan rangkaian elektronika terdiri

Lebih terperinci

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin 4 BAB II TEORI DASAR 2.1 Pendahuluan Pada bab ini akan dijelaskan mengenai teori-teori mengenai perangkatperangkat pendukung baik perangkat keras dan perangkat lunak yang akan dipergunakan sebagai pengukuran

Lebih terperinci

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN ALAT BAB III PERANCANGAN ALAT 1.1 Blok Diagram Sensor Kunci kontak Transmiter GSM Modem Recivier Handphone Switch Aktif Sistem pengamanan Mikrokontroler Relay Pemutus CDI LED indikator aktif Alarm Buzzer Gambar

Lebih terperinci

BAB III METODE PENELITIAN

BAB III METODE PENELITIAN BAB III METODE PENELITIAN Pada bab ini akan dijelaskan langkah-langkah yang akan digunakan dalam menyelesaikan perangkat keras (hardware) yang berupa komponen fisik penunjang seperti IC AT89S52 dan perangkat

Lebih terperinci

BAB III RANCANGAN DAN CARA KERJA ALAT

BAB III RANCANGAN DAN CARA KERJA ALAT BAB III RANCANGAN DAN CARA KERJA ALAT 3.1 Perancangan Alat 3.1.1 Blok Diagram Perancangan Alat Rancangan dan cara kerja alat secara blok diagram yaitu untuk mempermudah dalam menganalisa rangkaian secara

Lebih terperinci

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan BAB 3 PERANCANGAN SISTEM Konsep dasar mengendalikan lampu dan komponen komponen yang digunakan pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan perancangan sistem

Lebih terperinci

BAB 3 PERANCANGAN SISTEM

BAB 3 PERANCANGAN SISTEM BAB 3 PERANCANGAN SISTEM Pada bab ini akan dijelaskan secara umum perancangan sistem pengingat pada kartu antrian dengan memanfaatkan gelombang radio, yang terdiri dari beberapa bagian yaitu blok diagram

Lebih terperinci

BAHASA C CodeVisionAVR (CVAVR)

BAHASA C CodeVisionAVR (CVAVR) BAHASA C CodeVisionAVR (CVAVR) mohammad iqbal iqbal.umk@gmail.com Teknik Elektro Universitas Muria Kudus Mengapa Bahasa C Bahasa C lebih mudah dan membutuhkan waktu cepat dibandingkan assembly. Walaupun

Lebih terperinci

BAB II DASAR TEORI. Gambar 2.1 Sensor MLX 90614[5]

BAB II DASAR TEORI. Gambar 2.1 Sensor MLX 90614[5] BAB II DASAR TEORI Dalam bab ini dibahas beberapa teori pendukung yang digunakan sebagai acuan dalam merealisasikan skripsi yang dibuat. Teori-teori yang digunakan dalam pembuatan skripsi ini adalah sensor

Lebih terperinci

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN DAN PEMBUATAN ALAT BAB III PERANCANGAN DAN PEMBUATAN ALAT 3.1 Gambaran Umum Pada bab ini akan dibahas mengenai perencanaan perangkat keras elektronik (hardware) dan pembuatan mekanik robot. Sedangkan untuk pembuatan perangkat

Lebih terperinci

Nama : Zulham.Saptahadi Nim : Kelas : 08 Tk 04

Nama : Zulham.Saptahadi Nim : Kelas : 08 Tk 04 Nama : Zulham.Saptahadi Nim : 10808017 Kelas : 08 Tk 04 Latar Belakang Dalam bidang transportasi masih banyak sekali permasalahan-permasalahan yang sering ditemukan salah satunya di terminal. Banyaknya

Lebih terperinci

BAB 3 PERANCANGAN SISTEM

BAB 3 PERANCANGAN SISTEM BAB 3 PERANCANGAN SISTEM Perancangan sistem pada timbangan digital sebagai penentuan pengangkatan beban oleh lengan robot berbasiskan sensor tekanan (Strain Gauge) dibagi menjadi dua bagian yaitu perancangan

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1. Konsep Dasar Sistem pendeteksi intensitas cahaya yang akan dirancang pada tugas akhir ini adalah sebuah sistem yang menggunakan sebuah mikrokontroler, dimana sistem ini berfungsi

Lebih terperinci

BAB III PERANCANGAN. Perancangan tersebut mulai dari: spesifikasi alat, blok diagram sampai dengan

BAB III PERANCANGAN. Perancangan tersebut mulai dari: spesifikasi alat, blok diagram sampai dengan 41 BAB III PERANCANGAN Pada bab ini akan menjelaskan perancangan alat yang akan penulis buat. Perancangan tersebut mulai dari: spesifikasi alat, blok diagram sampai dengan perancangan rangkaian elektronik,

Lebih terperinci

ARTIKEL. 1.3 Batasan Masalah Untuk menghindari meluasnya bahasan maka perlu adanya batasan-batasan masalah yang meliputi :

ARTIKEL. 1.3 Batasan Masalah Untuk menghindari meluasnya bahasan maka perlu adanya batasan-batasan masalah yang meliputi : ARTIKEL 1.1 Latar Belakang Masalah Sholat lima waktu merupakan suatu kewajiban bagi semua umat muslim baik dimanapun maupun kapanpun. Untuk itu kita sebagai umat muslim senantiasa menjalankan sholat lima

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Teori Dasar Mikrokontroller ATMega8535 Perkembangan teknologi telah maju dengan pesat dalam perkembangan dunia elektronika, khususnya dunia mikroelektronika. Penemuan silicon

Lebih terperinci

digunakan untuk pembahasan dan cara kerja dari rangkaian Teori komponen-komponen pendukung.

digunakan untuk pembahasan dan cara kerja dari rangkaian Teori komponen-komponen pendukung. 13 Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian Teori pendukung itu antara lain tentang mikrokontroler AT89S51 (hardware

Lebih terperinci

AN2014 : Pembuatan Jam Digital dengan Development System DST -R8C

AN2014 : Pembuatan Jam Digital dengan Development System DST -R8C AN2014 : Pembuatan Jam Digital dengan Development System DST -R8C Catatan aplikasi ini membahas pembuatan Jam digital dengan development System DST - R8C. Modul-modul yang diperlukan V2.0: θ Development

Lebih terperinci

BAB III METODE PENELITIAN. baik pada perangkat keras maupun pada komputer. Buffer. Latch

BAB III METODE PENELITIAN. baik pada perangkat keras maupun pada komputer. Buffer. Latch BAB III METODE PENELITIAN Metode penelitian yang digunakan dalam perancangan perangkat keras adalah studi kepustakaan berupa data-data literatur dari masing-masing komponen, informasi dari internet dan

Lebih terperinci

BAB III PERANCANGAN ALAT. dibuat. Gambar 3.1. menunjukkan blok diagram alat secara keseluruhan.

BAB III PERANCANGAN ALAT. dibuat. Gambar 3.1. menunjukkan blok diagram alat secara keseluruhan. BAB III PERANCANGAN ALAT Bab ini akan membahas mengenai perancangan alat dan realisasi perangkat keras dan perangkat lunak dari setiap modul yang mendukung keseluruhan alat yang dibuat. Gambar 3.1. menunjukkan

Lebih terperinci

BAB III LANDASAN TEORI. digunakan seperti MCS51 adalah pada AVR tidak perlu menggunakan oscillator

BAB III LANDASAN TEORI. digunakan seperti MCS51 adalah pada AVR tidak perlu menggunakan oscillator BAB III LANDASAN TEORI 3.1 Microcontroller Atmega 8 AVR merupakan salah satu jenis mikrokontroler yang di dalamnya terdapat berbagai macam fungsi. Perbedaannya pada mikro yang pada umumnya digunakan seperti

Lebih terperinci

Pendahuluan Mikrokontroler 8051

Pendahuluan Mikrokontroler 8051 Pendahuluan Mikrokontroler 8051 Pokok Bahasan: 1. Mikrokontroler 8051 Arsitektur (Architecture) Timers/Counters Interrupts Komunikasi Serial (Serial Communication) Tujuan Belajar: Setelah mempelajari dalam

Lebih terperinci

BAB 2 DASAR TEORI. sistem atau rangkaian terlebih dahulu membuat blok diagramnya. Sensor air sederhana

BAB 2 DASAR TEORI. sistem atau rangkaian terlebih dahulu membuat blok diagramnya. Sensor air sederhana BAB 2 DASAR TEORI 2.1 Perangkat Keras 2.1.1 Prinsip Kerja Pembuka/Penutup Pintu Dalam membuat suatu alat ada beberapa hal yang perlu di perhatikan yaitu bagaimana cara merancang alat yang akan di buat

Lebih terperinci

BAB IV METODE PENELITIAN. serta menghubungkan pin mosi, sck, gnd, vcc, miso, serta reset. Lalu di

BAB IV METODE PENELITIAN. serta menghubungkan pin mosi, sck, gnd, vcc, miso, serta reset. Lalu di BAB IV METODE PENELITIAN 4.1 Minimum System ATmega8 Minimum system ATmega8 adalah sebuah perangkat keras yang berfurngsi untuk men-download program yang telah dibuat dengan menggunakan DB25 serta menghubungkan

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM 3.1 Pengertian Umum Sistem yang dirancang adalah sistem yang berbasiskan mikrokontroller dengan menggunakan smart card yang diaplikasikan pada Stasiun Kereta Api sebagai tanda

Lebih terperinci

BAB 2 LANDASAN TEORI PEMANCAR GELOMBANG INFRAMERAH. 2.1 Diagram Blok Pemancar Gelombang Inframerah

BAB 2 LANDASAN TEORI PEMANCAR GELOMBANG INFRAMERAH. 2.1 Diagram Blok Pemancar Gelombang Inframerah BAB 2 LANDASAN TEORI PEMANCAR GELOMBANG INFRAMERAH 2.1 Diagram Blok Pemancar Gelombang Inframerah Tombol ON Tombol OFF A T 8 9 S 5 1 Pemancar inframerah Pulsa gelo inframe Gambar 2.1 Diagram Blok Pemancar

Lebih terperinci

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

Percobaan 5 PENGENALAN MIKROKONTROLER 8051 Percobaan 5 PENGENALAN MIKROKONTROLER 8051 I. Tujuan 1. Mempelajari arsitektur mikrokontroller 8051 2. Memahami macam-macam interrupt yang ada pada mikrokontroller 8051 3. Memahami penggunaan I/O port

Lebih terperinci

BAB III PERENCANAAN DAN REALISASI

BAB III PERENCANAAN DAN REALISASI BAB III PERENCANAAN DAN REALISASI 3.1 Perancangan Blok Diaram Metode untuk pelaksanaan Program dimulai dengan mempelajari sistem pendeteksi kebocoran gas pada rumah yang akan digunakan. Dari sini dikembangkan

Lebih terperinci