Anda di halaman 1dari 7

design minimum sistem traffic light controller

Perancangan desain Minsys untuk lampu lalu lintas controller, pada Rangkaian tersebut
menggunakan chips AVR ATMEGA32 Produksi ATMEL. AVR merupkan seri
mikrokontroller CMOS 8 Bits buatan ATMEL, berbasic Arsitektur RISC (Reduce
Instruction Set Computer). Hampir * Semua Instruksi di eksekusi dalam Satu siklus clock.
AVR mempunyai 32 register umum-tujuan, timer / counter fleksible Artikel modus
membandingkan interupt internal Dan eksternal, serial UART, Watchdog Timer
diprogram Dan mode daya saving. mempunyai ADC Dan PWM internal.AVR juga
mempunyai In-sistem flash programable pada Chip memori mengijinkan memory
Program untuk diprogram ulang dalam SISTEM menggunakan hubungan SPI serial.
ATMEGA32 adalah mikrokontroller CMOS 8-bit Daya rendah REKOMENDASI INDEKS
Arsitektur RISC.ATMEGA32 mempunyai throughput yang mendekati 32 MIPS pada
frekuensi yg 32MHz. beberapa fitur atmega32:
1. muka RISC Arsitektur
- 130 kuat instruksi-Kebanyakan tunggal jam eksekusi siklus
- 32 x 8 operasi tujuan umum sepenuhnya statis
- Sampai dengan 32 MIPS pada 32MHz througput

2. Nonvolotile dan Program Kenangan


- 8K Bytes In-System Programmable Flash diri
- Boot Opsional kode bagian dengan independentlock bit
- 512 byte EEPROM
- 512 byte SRAM internal yang
- Progarmmable kunci untuk keamanan perangkat lunak

3. Fitur Peripheral
- Dua bit timer / counter dengan prescaler terpisah dan membandingkan modus
- Satu 32 - bit timer / counter dengan prescaler terpisah dan membandingkan modus
modus & menangkap
- Counter time Estat wiyh terpisah osilator
- Empat PWM saluran
- 8 channel, 10 bit ADC
- Byte berorientasi dua kawat antarmuka serial
4. I / O dan paket
- 32 Programmable I / O baris
- 40 pin PDIP, 44-memimpin TQFP ,44-lead PLCC, dan 44-pad MLF

5. Operasi Tegangan
- 2,7-5,5 untuk atmega 32L
- 4.5 - 5.5 untuk atmega 32

minsyst sechematic atmega32

pemrograman

didalam traffic light controller ini perancangan program menggunakan bahasa c,bahasa c
untuk avr tidak beda jauh dengan dengan MCS51 .Sebahagi contoh, untuk pengendalian port
I/O, pada MCS51 menulis instruksi PO=OxFF untuk membuat port O menjadi output dan
mengeluarkan logika FF heksa.sementara itu dalam AVR untuk mengeluarkan nilai FF heksa
pada PORTA adalah dengan cara menuliskan dahulu data direction,yaitu DDRA =OxFF
(mengatur port A sebagai keluaran)dan PORT A=OxFF (data yang dikeluarkan ke port A),
jadi dengan kemudahan bahasa c para operator trafficlight tidak akan mengalami kesulitan
dalam mengatur siklus waktu pemrograman traffic light controller sesuai dengan kebutuhan
dilapangan atau sesuai dengan kepadatan lalulintas jalan

include <atmega.32>

#include <delay.h> //definisi tundaan waktu


// fase satu
#define merah PORTA.0 //definisi lampu merah portA.O
#define kuning PORTA.1 //definisi lampu kuning portA.1
#define hijau PORTA.2 //definisi lampu hujau portA.2

//fase dua
#define merah PORTA.3 //definisi lampu merah portA.3
#define kuning PORTA.4 //definisi lampu kuning portA.4
#define hijau PORTA.5 //definisi lampu hijau portA.5

//fase tiga
#define merah PORTA.6 //definisi lampu merah portA.6
#define kuning PORTA.7 //definisi lampu kuning portA.7
#define hijau PORTB.0 //definisi lampu hijau portB.O

#define on 1 //definisi hidup


#define off 0 //definisi mati

while(1)
{
//fase satu
PORTA.0=1; //merah menyala
PORTA.1=0; //kuning mati
PORTA.2=0; //hijau mati
delay_ms(); //tundaan waktu yang dibutuhkan

//fase dua
PORTA.3=0; //merah mati
PORTA.4=1; //kuning menyala
PORTA.5=0; //hijau mati
delay_ms(); //tundaan waktu yang dibutuhkan

//fase tiga
PORTA.6=0; //merah mati
PORTA.7=0; //kuning mati
PORTB.0=1; //hijau menyala
delay_ms(); //tundaan waktu yang dibutuhkan
}
}
7 Segment/count down

7segment atau counter down dalam traffic like berfungsi sebagai penghitung siklus waktu
lamanya program yang terprogram didalam chip atmega 32 sehingga memudahkan
pengendara dimana pengendara akan siap untuk berhenti dan kapan mereka akan bergerak,
didalam keterangan ini akan dijelaskan sedikit contoh program untuk microcontroller:
for (i=20;i>0;i--)
{
PORT=data[i];
delay_ms();
}

sehingga para programmer traffic light dapat dengan mudah menyesuaikan counter down
sesuai kepadatan arus lalulintas
RTC DS1307
ds1307 sekematik
RTC (real time clock) setiap mikrokontroller 12C 5V dapat digunakan dengan mudah
DS1307. kami akan menunjukan bagaimana menggunakan dengan traffic light atau
interfacing with traffic light controller. didalam traffic light controller DS1307 digunakan
untuk menghitung siklus waktu perpindahan program,dari program normal,
merah,hijau,kuning ke flashing (kedip) pastinya anda sering jumpai pada saat malam hari,dia
hanya berkedip hingga waktu yang ditentukan telah dieksekusi
sedikit contoh program sederhana
#include <ds1307.h>

//I2C
#asm
.equ-12c-port=0x1b;PORTA
.equ-sda-bit=6
.equ-scl-bit=7
#endasm
while ()
{
rtc_get_time(&jam,&menit,&detik);
if (jam>=malam || jam<pagi)
{
langkahOn=1;
}
else
{
langkahOn=0;
}
if (langkahOn==1)
{
if ( jam==malam)
ok=0;
}

while(1)
rtc_get_time(&jam,&menit,&detik);
{

PORTA.0=1; //merah
PORTA.1=0; //kuning
PORTA.2=0; //hijau
delay_ms();

PORTA.3=0; //merah
PORTA.4=1; //kuning
PORTA.5=0; //hijau
delay_ms();

PORTA.6=0; //merah
PORTA.7=0; //kuning
PORTB.0=1; //hijau
delay_ms();

}
}

Anda mungkin juga menyukai