TRAFFIC LIGHT SYSTEM 4 ARAH BERBASIS AT89C51

 

LABORATORIUM MIKROKONTROLER I

TRAFFIC LIGHT SYSTEM 4 ARAH BERBASIS AT89C51

 

  


 

Dosen Pengampu : Dr. Samuel Beta Kuntardjo,Ing. Tech.,M.T

Disusun Oleh:

KELAS EK-2B KELOMPOK 4

1

Azizah Rahma Nurhanisa

3.32.24.1.04

2

Muhammad Ammar Setiawan

3.32.24.1.16

3

Sulaiman Abdurrozzaq

3.32.24.1.23

4

Thaalib Rifqi

3.32.24.1.24

 

PROGRAM STUDI TEKNIK ELEKTRONIKA

JURUSAN TEKNIK ELEKTRO

POLITEKNIK NEGERI SEMARANG

2025

 

BAB I
PENDAHULUAN

 

1.1  LATAR BELAKANG

Persimpangan jalan sering mengalami permasalahan lalu lintas seperti kemacetan, waktu tunggu yang tidak efisien, serta meningkatnya risiko kecelakaan akibat pengaturan lampu lalu lintas yang kurang optimal. Oleh karena itu, diperlukan sebuah sistem pengendalian lampu lalu lintas yang mampu bekerja secara otomatis dan terstruktur. Sistem Smart Traffic Light berbasis mikrokontroler AT89C51 dirancang untuk mengatur arus lalu lintas empat arah dengan dukungan countdown timer agar pengguna jalan mengetahui sisa waktu lampu menyala.

1.2  RUMUSAN MASALAH

1.      Bagaimana merancang dan mensimulasikan sistem Smart Traffic Light 4 arah berbasis AT89C51?

2.      Bagaimana menampilkan countdown timer menggunakan 7-segment pada setiap arah persimpangan?

3.      Bagaimana merancang logika kerja sistem agar tidak terjadi benturan lalu lintas antar arah?

1.3   TUJUAN & MANFAAT

1.      Merancang sistem Smart Traffic Light 4 arah berbasis AT89C51.

2.      Menampilkan countdown digital menggunakan 7-segment.

3.      Mengatur lalu lintas secara lebih efisien dan terstruktur.

4.      Mengurangi tingkat kemacetan dan risiko kecelakaan.

5.      Memberikan informasi waktu tunggu melalui countdown timer.



BAB II
LANDASAN TEORI

 

2.1 
MIKROKONTROLER AT89C51

 






                                                                                        Gambar 2. 1 AT89C51

Mikrokontroller AT89C51 adalah sebuah mikrokomputer 8 bit dengan low power supply dan performansi tinggi yang terdiri dari CMOS dengan Flash Programmable dan Erasable Read Only Memory (PEROM) sebesar 4 Kbyte didalamnya. Alat tersebut dibuat dengan menggunakan teknologi tinggi nonvolatile berdensitas tinggi dari ATMEL yang kompatibel dengan keluarga MCS-51 yang merupakan standar industri. Dengan menggunakan flash memori, program dapat diisi dan dihapus secara elektrikal, yaitu dengan memberikan kondisi-kondisi tertentu (high / low) pada pin-pinnya sesuai dengan konfigurasi untuk memprogram atau menghapus. Cara ini lebih praktis dibandingkan dengan menggunakan EPROM yang penghapusan program atau datanya menggunakan sinar ultraviolet.

Fasilitas yang tersedia pada AT89C51 adalah :

a.       4 Kbytes ROM.

b.      128 x 8 bit internal RAM.

c.       32 jalur I / O.

d.      2 (dua) 16 bit Timer / counter.

e.       6 (enam) sumber Interupsi.

f.        Serial interface.

g.      4 Kbyte In-system Reprogrammable flash Memory dengan kemampuan sampai 1000 kali pemrograman dan penghapusan.

h.      Kompatibel dengan MCS-51.

i.        Range operasi 0-24 MHz.

2.2 
TRAFFIC LIGHT

                                                                Gambar 2. 2 Komponen traffic light pada proteus

Traffic light adalah sistem pengatur lalu lintas yang menggunakan lampu merah, kuning, dan hijau sebagai instruksi bagi pengendara. Urutan dan durasi nyala lampu dikendalikan oleh sistem kontrol.


2.3 SEVEN SEGMENT DISPLAY


                                                                               Gambar 2. 3 Seven Segment Display

Seven Segment Display (7 Segment Display) dalam bahasa Indonesia disebut dengan Layar Tujuh Segmen adalah komponen Elektronika yang dapat menampilkan angka desimal melalui kombinasi-kombinasi segmennya. Seven Segment Display pada umumnya dipakai pada Jam Digital, Kalkulator, Penghitung atau Counter Digital, Multimeter Digital dan juga Panel Display Digital seperti pada Microwave Oven ataupun Pengatur Suhu Digital . Seven Segment Display pertama diperkenalkan dan dipatenkan pada tahun 1908 oleh Frank. W. Wood dan mulai dikenal luas pada tahun 1970-an setelah aplikasinya pada LED (Light Emitting Diode).

Seven Segment Display memiliki 7 Segmen dimana setiap segmen dikendalikan secara ON dan OFF untuk menampilkan angka yang diinginkan. Angka-angka dari 0 (nol) sampai 9 (Sembilan) dapat ditampilkan dengan menggunakan beberapa kombinasi Segmen. Selain 0 – 9, Seven Segment Display juga dapat menampilkan Huruf Hexadecimal dari A sampai F. Segmen atau elemen-elemen pada Seven Segment Display diatur menjadi bentuk angka “8” yang agak miring ke kanan dengan tujuan untuk mempermudah pembacaannya. Pada beberapa jenis Seven Segment Display, terdapat juga penambahan “titik” yang menunjukan angka koma decimal.  Terdapat beberapa jenis Seven Segment Display, diantaranya adalah Incandescent bulbs, Fluorescent lamps (FL), Liquid Crystal Display (LCD) dan Light Emitting Diode (LED).

 

 

BAB III
PERANCANGAN SISTEM

 

3.1  DIAGRAM BLOK


3.2  FLOWCHART







 
3.3  SKEMA RANGKAIAN



3.4   KODE PROGRAM

ORG 00H

        LJMP MAIN

 

; ================================

;  DEFINISI TOMBOL

; ================================

START_BTN EQU P0.4      ; Aktif LOW

STOP_BTN  EQU P0.5      ; Aktif LOW

s

; ================================

;  FLAG RUN

; ================================

RUN_FLAG  EQU 30H       ; 00 = STOP, 01 = RUN

 

        ORG 300H

TBL:    DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

 

        ORG 30H

 

 

; ======================================================

;  START–STOP TOGGLE SYSTEM

; ======================================================

CHECK_START_STOP:

        ; ---- CEK START ----

        JB START_BTN,CHK_STOP       ; START tidak ditekan

        MOV A,RUN_FLAG

        CJNE A,#01H,SET_RUN         ; jika belum RUN → RUN

        SJMP CHK_STOP

 

SET_RUN:

        MOV RUN_FLAG,#01H

        SJMP CHK_STOP

 

CHK_STOP:

        ; ---- CEK STOP ----

        JB STOP_BTN,RET_CS

        MOV A,RUN_FLAG

        CJNE A,#00H,SET_STOP

        SJMP RET_CS

 

SET_STOP:

        MOV RUN_FLAG,#00H

 

RET_CS:

        RET

 

 

; ======================================================

;  MODE STOP — SEMUA OFF

; ======================================================

SYSTEM_STOP:

        MOV P1,#00H

        MOV P2,#00H

        MOV P3,#00H

        MOV P0,#00H

 

STOP_WAIT:

        MOV A,RUN_FLAG

        CJNE A,#01H,STOP_WAIT       ; tetap menunggu START ditekan

        RET

 

 

; ===========================================================

; ++++++++++++++ PROGRAM ASLI ANDA (TIDAK DIUBAH) +++++++++++

; ===========================================================

 

MAIN:

        MOV RUN_FLAG,#00H       ; awal = STOP

 

        ; pastikan semua padam

        MOV P1,#00H

        MOV P2,#00H

        MOV P3,#00H

        MOV P0,#00H

 

; ========= LOOP MENUNGGU START =============

WAIT_START:

        LCALL CHECK_START_STOP

        MOV A,RUN_FLAG

        CJNE A,#01H,WAIT_START  ; selama STOP → tetap mati

 

        ; ======= HANYA KETIKA START DI TEKAN ========

        ACALL FRONT             ; <-- DIPINDAHKAN KE SINI

 

        ; inisialisasi asli anda

        MOV DPTR,#TBL

        CLR A

        MOV 40H,#10

        MOV 43H,#10

        MOV 46H,#20

        MOV 49H,#20

        MOV R0,#35

        MOV R6,#30

        MOV R7,#40

      

X1:

        ; cek apakah STOP ditekan saat berjalan

        LCALL CHECK_START_STOP

        MOV A,RUN_FLAG

        CJNE A,#01H,MAIN        ; jika STOP → kembali ke mode mati

 

        MOV A,40H

        MOV B,#10

        DIV AB

        MOV 41H,A

        MOV 42H,B

       

A1:     SETB P3.0

        CLR P3.1

        MOV A,41H

        MOVC A,@A+DPTR

        MOV P2,A

        ACALL DELAY

        MOV P3,#00H

        SETB P3.1

        CLR P3.0

        MOV A,42H

        MOVC A,@A+DPTR

        MOV P2,A

        ACALL DELAY

        MOV P3,#00H

        SJMP X3

 

X2:     SJMP X1

 

X3:     MOV A,43H

        MOV B,#10

        DIV AB

        MOV 44H,A

        MOV 45H,B

        SETB P3.2

        CLR P3.3

        MOV A,44H

        MOVC A,@A+DPTR

        MOV P2,A

        ACALL DELAY

        MOV P3,#00H

        SETB P3.3

        CLR P3.2

        MOV A,45H

        MOVC A,@A+DPTR

        MOV P2,A

        ACALL DELAY

        MOV P3,#00H

 

        MOV A,46H

        MOV B,#10

        DIV AB

        MOV 47H,A

        MOV 48H,B

        SETB P3.4

        CLR P3.5

        MOV A,47H

        MOVC A,@A+DPTR

        MOV P2,A

        ACALL DELAY

        MOV P3,#00H

        SETB P3.5

        CLR P3.4

        MOV A,48H

        MOVC A,@A+DPTR

        MOV P2,A

        ACALL DELAY

        MOV P3,#00H

 

        MOV A,49H

        MOV B,#10

        DIV AB

        MOV 50H,A

        MOV 51H,B

        SETB P3.6

        CLR P3.7

        MOV A,50H

        MOVC A,@A+DPTR

        MOV P2,A

        ACALL DELAY

        MOV P3,#00H

        SETB P3.7

        CLR P3.6

        MOV A,51H

        MOVC A,@A+DPTR

        MOV P2,A

        ACALL DELAY

        MOV P3,#00H

 

        DJNZ R0,X2

        MOV R0,#35

 

        DJNZ 40H,Q1

        MOV 40H,#20

 

Q1:     DJNZ 43H,Q2

        MOV 43H,#10

        ACALL RIGHT         

 

Q2:     DJNZ 46H,Q3

        MOV 43H,#20

        MOV 46H,#10

 

Q3:     DJNZ 49H,Q4

        MOV 49H,#10

        ACALL BACK

 

Q4:     DJNZ R6,X4

        ACALL LEFT

        MOV 40H,#10

        MOV 43H,#10

        MOV 46H,#30

 

X4:     DJNZ R7,L1

        LJMP MAIN

 

L1:     LJMP X1    

 

 

DELAY:  MOV R4,#5

H2:     MOV R5,#0FFH

H1:     DJNZ R5,H1

        DJNZ R4,H2

        RET

 

FRONT:  MOV P1,#54H

        MOV P0,#02H

        RET

 

RIGHT:  MOV P1,#0A1H

        MOV P0,#02H

        RET

 

BACK:   MOV P1,#09H

        MOV P0,#05H

        RET

 

LEFT:   MOV P1,#4AH

        MOV P0,#08H

        RET

 

3.5  CARA KERJA RANGAKAIAN

Smart Traffic Light 4 arah berbasis AT89C51 bekerja dengan prinsip pengendalian waktu menggunakan mikrokontroler untuk mengatur nyala lampu merah, kuning, dan hijau di setiap arah persimpangan secara bergantian. Sistem dilengkapi dengan 7-segment yang menampilkan sisa waktu (countdown). Ketika waktu satu arah habis, mikrokontroler secara otomatis memindahkan lampu hijau ke arah berikutnya dan mengatur kembali waktu countdown.

3.6   LAMPIRAN

Link PPT : https://www.canva.com/design/DAG7ULduFgk/8qJMg0dJCmDbP34J0YMF9w/edit?utm_content=DAG7ULduFgk&utm_campaign=designshare&utm_medium=link2&utm_source=sharebutton

Link Video :

https://drive.google.com/drive/folders/1IO27JcrOmYx1RVyQ4N9qNJZRwXz4yeMu?usp=drive_link

 


BAB IV
PENUTUP

 

4.1  KESIMPULAN

Sistem Smart Traffic Light 4 arah berbasis mikrokontroler AT89C51 berhasil mengatur pergantian lampu lalu lintas secara otomatis dan terstruktur dengan memanfaatkan logika waktu yang terprogram. Integrasi 7-segment sebagai penampil countdown memberikan informasi waktu tunggu yang jelas bagi pengguna jalan, sedangkan penggunaan resistor pull-up dan toggle switch memastikan setiap input dan mode operasi dapat bekerja secara stabil serta mudah dikendalikan. Dengan dukungan simulasi melalui EdSim51 dan Proteus, sistem dapat diuji secara menyeluruh tanpa perangkat fisik, sehingga keseluruhan rancangan terbukti efektif, fungsional, dan sesuai tujuan pengelolaan lalu lintas yang lebih aman dan efisien.

 

DAFTAR PUSTAKA

 

Atmel Corporation. (2013). AT89C51 8-bit Microcontroller with 4K Bytes Flash. Atmel Datasheet.

Ayala, K. J. (1996). The 8051 Microcontroller: Architecture, Programming, and Applications. West Publishing Company.

Malvino, A. P., & Brown, J. A. (2011). Digital Computer Electronics (3rd ed.). McGraw-Hill.

Sedra, A. S., & Smith, K. C. (2015). Microelectronic Circuits (7th ed.). Oxford University Press.

Syahrial, H. (2014). Dasar-dasar Mikrokontroler MCS-51. Andi Offset.

Sulaiman, A. (2018). Pemrograman Mikrokontroler 8051 Menggunakan Bahasa Assembly. Informatika.

Electronics Tutorials. (n.d.). Seven Segment Display. Diakses dari https://www.electronics-tutorials.ws

Labcenter Electronics. (n.d.). Proteus Design Suite Documentation. Diakses dari https://www.labcenter.com

EdSim51. (n.d.). 8051 Simulator User Guide. Diakses dari https://edsim51.com

 

Komentar

Postingan populer dari blog ini

AIR TEMPERATURE SWITCHING AND MONITORING SYSTEM DENGAN MENGGUNAKAN SENSOR LM35 BERBASIS ATMEGA 16

RANCANG BANGUN KALKULATOR DIGITAL OPERASI KALI DAN BAGI BERBASIS MIKROKONTROLER AT89C51

SISTEM LAMPU LALU LINTAS PERTIGAAN BERBASIS AT89s51 DENGAN SENSOR INFRAMERAH