Kontrol Traffic Light Menggunakan 8051/AT89C2051

Mikrokontroler memiliki fungsi yang sangat luas sekali, kali ini saya akan menggunakan mikrokontroler sebagai pengontrol dari lampu lalu lintas atau traffic light,

Dengan memanfaatkan 2 port dari AT89C2051 kita sudah bisa mengontrol traffic light dengan 4 simpangan/perempatan.

Dibawah ini adalah skema dari rangkaian tersebut:

Untuk melihat ukurannya silahkan klik pada gambar

Rangkaian membutuhkan tegangan 5V yang telah diregulasi, pada proyek ini lampu yang digunakan adalah lampu led. jika anda ingin menggunakan lampu 220V atau yang lebih tinggi tegangannya anda memerlukan Relay Board sebagai penghubung mikrokontroler dengan lampu.
 Untuk Relay Board saya akan terbitkan di lain posting.

Source Kode Rangkaian :

NR    EQU    P3.5
NY    EQU    P3.4
NG    EQU    P3.3

SR    EQU    P1.2
SY    EQU    P1.3
SG    EQU    P1.4

ER    EQU    P1.5
EY    EQU    P1.6
EG    EQU    P1.7

WR    EQU    P3.7
WY    EQU    P1.0
WG    EQU    P1.1

CSEG     AT      0        ; RESET VECTOR
;---------==========----------==========---------=========---------
;              PROCESSOR INTERRUPT AND RESET VECTORS
;---------==========----------==========---------=========---------

        ORG     00H            ; Reset
        JMP     MAIN
;---------==========----------==========---------=========---------
MAIN:
       MOV SP,#40H
       MOV P1,#0FFH
       MOV P3,#0FFH
      
TOP:     CLR NR
       CLR SR
       CLR ER
       CLR WY
       SETB WG
       CALL Y_DELAY
       SETB NR
       CLR NY
       CLR WR
       SETB WY
       CALL Y_DELAY
       SETB NY
       CLR NG
       CALL DELAY
      
       CLR NY
       SETB NG
       CALL Y_DELAY
       CLR NR
       SETB NY
       SETB SR
       CLR SY
       CALL Y_DELAY
       SETB SY
       CLR SG
       CALL DELAY
      
       CLR SY
       SETB SG
       CALL Y_DELAY
       CLR SR
       SETB SY
       SETB ER
       CLR EY
       CALL Y_DELAY
       SETB EY
       CLR EG
       CALL DELAY
      
       CLR EY
       SETB EG
       CALL Y_DELAY
       CLR ER
       SETB EY
       SETB WR
       CLR WY
       CALL Y_DELAY
       SETB WY
       CLR WG
       CALL DELAY
       AJMP TOP
      
      
      
;**********************************************************
DELAY:
            MOV R3,#3FH
REPA3:    MOV R1,#0FFH
REPA2:    MOV R2,#0FFH
REPA1:    NOP
            DJNZ R2,REPA1
            DJNZ R1,REPA2
            DJNZ R3,REPA3
            RET
;  ---------==========----------==========---------=========---------
Y_DELAY:
            MOV R3,#1AH
RQPA3:    MOV R1,#0FFH
RQPA2:    MOV R2,#0FFH
RQPA1:    NOP
            DJNZ R2,RQPA1
            DJNZ R1,RQPA2
            DJNZ R3,RQPA3
            RET
;**********************************************************
     END




Kode Lengkap Rangkaian beserta Skema rangkaian dapat anda download disini

4 komentar:

idenya menarik, tapi sayang terlalu sederhana dan tidak dapat diterapkan di kondisi sebenarnya...

ane yg msh 'ijo' mo nanya nich...
at89c2051 itu apa perlu diprogram or gak usah alias lgsg pake?
and rangkaian diatas bs gak sekalian dikasih countdownt timer. mhn petunjuk suhu2...
emeil ke zeroloe@yahoo.com
trims

ini pke sofware ap mas
pke sofware bascom avr ea