Download - LAPORAN RESMI MIKROPROSESOR

Transcript

LAPORAN RESMI MIKROPROSESOR PENGENDALI LAMPU LALU LINTAS PADA SIMPANG EMPAT

Nama Anggota Kelompok: 1. 2. 3. M. Taufik Wijaya Paramita Eka Wahyu Lestari Khairun Nizam (7207.030.033) (7207.030.034) (7207.030.046)

POLITEKNIK ELEKTRONIKA NEGERI SURABAYA INSTITUT TEKNOLOGI SEPULUH NOPEMBER JURUSAN TELEKOMUNIKASI SURABAYA

LAPORAN RESMI PROJEK MIKROPROSESOR PENGENDALI LAMPU LALU LINTAS PADA SIMPANG EMPAT

1. Judul:Pengendali Lampu Lalu Lintas Pada Simpang Empat.

2. Tujuan:Menyelesaikan tugas proyek terakhir dari mata kuliah mikroprosesor dan mengaplikasikan teori yang di dapat selama teori dan praktikum mikroprosesor.

3. Dasar Teori:Pengontrolan lampu lalu lintas dapat dilakukan dengan menggunakan sebuah rangkaian yang cukup sederhana daan bahasa assembler. Rangkaian lampu lalu lintas ini menggunakan PIO DT-51. Port A, port B, dan Port C diinisialisasi sebagai output. Output Port A, B, dan C dimasukkan ke buffer, kemudian dihubungkan ke LED. Pemrograman lampu lalu lintas terdiri dari tiga modus, yaitu otomatis, manual, standbay. Yang pertaman adalah Pada modus otomatis maka program visual basic (VB) untuk program otomatis berjalan dengan modifikasi IC 555 diganti dengan delay yang ada pada progran visual basic. Yang kedua adalah Pada modus manual lamanya led tergantung dari delay yang diberikan pada program DT-51 MinSys. Pada modus manual terdapat inputan yang kita berikan. Ynag ketiga adalah pada modus standbay yang menyebabkan lampu LED yang berwarna kuning menyala berkedip terus sampai kita mengeklik yang otomatis atau yang manual. Dalam program terdapat counter yang pertama kali di-set 1. Jika sinyal pertama masuk, sementara counter masih bernilai 1, akan di jalankan kombinasi lampu yang pertama. Setelah itu counter ditambah 1, sehingga jika sinyal kedua masuk, akan dijalankan tahap kedua dari kombinasi nyala lampu yang kedua. Hal ini berulang terus hingga tahap ke delapan sedangkan untuk yang stanbay sampai dengan lebel 9. Karena ada program hanya terdapat delapan tahap, saat counter mencapai nilai 9 akan langsung di-set kembali menjadi 1 untuk

mengulangi proses Flowchart.

dari awal. Untuk jelasnya lihat alur program pada

Pengaksesan Port Paralel Pada Visual Basic Untuk melakukan akses hardware secara langsung dibutuhkan program eksternal. Program eksternal tersebut adalah file DLL (Dynamic Link Library) yaitu file io.dll, untuk menggunakannya, file DLL ini harus diletakkan dalam direktori //windows/system atau diikutkan dalam satu folder dengan program yang kita buat. Sebelum menggunakan fungsi-fungsi yang ada dalam file DLL ini, terlebih dahulu harus mendeklarasikan file DLL tersebut kedalam VB. Jika file DLL tersebut telah dideklarasikan seperti diatas, maka fungsi PortOut dan PortIn siap digunakan pada VB. Untuk mengirimkan data pada port parallel, menggunakan fungsi PortOut.

4. Gambar Rangkaian:

Gambar Minimum System DT-51

Gambar Led Tester Untuk Clock

Gambar Port Yang Digunakan

Gambar Rangkaian Output Lampu Lalu Lintas

5. Listing Program: a) Program Visual Basic:Private Sub Command1_Click() Port1 = 888 Dim x As Integer Dim a As Integer a = 10 For x = 0 To 9 a=a-1 PortOut Port1, a Sleep (250) Next x End Sub '250ms delay '888 = 0x378

Private Sub Command2_Click() Call PortOut(888, 0) Sleep (250) Call PortOut(888, 10)

End Sub

Private Sub Command3_Click() Call PortOut(888, 255) End Sub

Private Sub Form_Load() Call PortOut(888, 10) End Sub

b) Program Pada Dt-51 MinSys:$MOD51 PORTA PORTB PORTC REG_CTRL EQU 2000H EQU 2001H EQU 2002H EQU 2003H

CEPAT LAMBAT

EQU 04H EQU 0FH

PA1 PA2 PA3 PA4 PA5

EQU 64H EQU 62H EQU 41H EQU 21H EQU 11H

PA6 PA7 PA8 PA9 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PB8 PB9 PB10 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 PC9 PAK PBK PCK PO

EQU 89H EQU 49H EQU 4CH EQU 64H EQU 92H EQU 93H EQU 99H EQU 98H EQU 11001000B EQU 10001000B EQU 42H EQU 22H EQU 12H EQU 92H EQU 24H EQU 29H EQU 32H EQU 31H EQU 90H EQU 88H EQU 84H EQU 44H EQU 24H EQU 92H EQU 24H EQU 49H EQU 00H

org JMP ORG

4000h start 4100H

start:

MOV MOV MOVX

DPTR,#REG_CTRL A,#80H @DPTR,A

MOV CJNE TAHAPK: MOV MOV MOVX

A,P1 A,#255H,label1 DPTR,#PORTA A,#PAK @DPTR,A

MOV MOV MOVX

DPTR,#PORTB A,#PBK @DPTR,A

MOV MOV MOVX CALL

DPTR,#PORTC A,#PCK @DPTR,A TUNDA2

MOV MOV MOVX

DPTR,#PORTA A,#PO @DPTR,A

MOV MOV MOVX

DPTR,#PORTB A,#PO @DPTR,A

MOV MOV MOVX CALL MOV CJNE JMP

DPTR,#PORTC A,#PO @DPTR,A TUNDA2 A,P1 A,#255,start TAHAPK

label1:

CJNE

A,#00H,start

TAHAP1:

MOV MOV

DPTR,#PORTC A,#PC6

MOVX CALL

@DPTR,A TUNDA2

MOV MOV MOVX

DPTR,#PORTC A,#PC7 @DPTR,A

MOV MOV MOVX MOV MOV MOVX

DPTR,#PORTA A,#PA8 @DPTR,A DPTR,#PORTB A,#PB10 @DPTR,A

CALL

TUNDA1

label2:

MOV CJNE

A,P1 A,#00H,label2

TAHAP2:

MOV MOV MOVX CALL

DPTR,#PORTC A,#PC8 @DPTR,A TUNDA2

MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX

DPTR,#PORTA A,#PA1 @DPTR,A DPTR,#PORTB A,#PB1 @DPTR,A DPTR,#PORTC A,#PC1 @DPTR,A

CALL

TUNDA1

label3:

MOV CJNE

A,P1 A,#00H,label3 DPTR,#PORTA A,#PA2 @DPTR,A TUNDA2

TAHAP3:

MOV MOV MOVX CALL

MOV MOVX MOV MOV MOVX

A,#PA3 @DPTR,A DPTR,#PORTB A,#PB2 @DPTR,A

CALL

TUNDA1

label4:

MOV CJNE

A,P1 A,#00H,label4

TAHAP4:

MOV MOV MOVX

DPTR,#PORTA A,#PA4 @DPTR,A

CALL

TUNDA2

MOV MOV MOVX MOV MOV MOVX

DPTR,#PORTA A,#PA5 @DPTR,A DPTR,#PORTB A,#PB3 @DPTR,A

CALL

TUNDA1

label5:

MOV CJNE

A,P1 A,#00H,label5

TAHAP5:

MOV MOV MOVX

DPTR,#PORTA A,#PA6 @DPTR,A

MOV MOV MOVX

DPTR,#PORTB A,#PB4 @DPTR,A

CALL

TUNDA2

MOV MOV MOVX

DPTR,#PORTA A,#PA7 @DPTR,A

MOV MOV MOVX

DPTR,#PORTB A,#PB5 @DPTR,A

CALL

TUNDA1

label6:

MOV CJNE

A,P1 A,#00H,label6

TAHAP6:

MOV MOV MOVX

DPTR,#PORTB A,#PB6 @DPTR,A

CALL

TUNDA2

MOV

DPTR,#PORTB

MOV MOVX MOV MOV MOVX

A,#PB7 @DPTR,A DPTR,#PORTC A,#PC2 @DPTR,A

CALL

TUNDA1

label7:

MOV CJNE

A,P1 A,#00H,label7

TAHAP7:

MOV MOV MOVX

DPTR,#PORTB A,#PB8 @DPTR,A

CALL

TUNDA2

MOV MOV MOVX MOV MOV MOVX

DPTR,#PORTB A,#PB9 @DPTR,A DPTR,#PORTC A,#PC3 @DPTR,A

CALL

TUNDA1

label8:

MOV CJNE

A,P1 A,#00H,label8

TAHAP8:

MOV MOV MOVX

DPTR,#PORTC A,#PC4 @DPTR,A

CALL

TUNDA2

MOV MOVX MOV MOV MOVX

A,#PC5 @DPTR,A DPTR,#PORTB A,#PB10 @DPTR,A

CALL label9: MOV CJNE

TUNDA1 A,P1 A,#00H,label9

JMP

TAHAP1

TUNDA1:

MOV SJMP

R7,#LAMBAT DEL1

TUNDA2:

MOV SJMP

R7,#CEPAT DEL1

DEL1: DEL2:

MOV MOV DJNZ DJNZ DJNZ RET END

R6,#0FFH R5,#0FFH R5,$ R6,DEL2 R7,DEL1

6. Flowchart:START

Inisialisasi PIO dan IRQ3 buat residen

Set counter N=1

Manual ?

Visual Basic

Counter secara manual (polisi)

Prosedur lampu tahap N

N=N+1

N=9?

N=N+1

N=1

7. Peralatan:a. b. c. d. e. f. PC. DT-51 MinSys. Led Tester. Lampu Lalu Lintas sederhana. Port A, B, C, 1. Software untuk downloader dan kompailer.

g. Software Visual Basic.

8. Cara Kerja:Kombinasi nyala lampu LED adalah sebagai berikut: 1. Kombinasi pertama adalah dari arah barat ke arah selatan (dengan perincian PC5: merah, PC6: kuning, dan PC7: hijau) dan arah utara ke selatan, kelompok PA0 ... PA2 (dari PA0: merah, PA1: kuning, dan PA2: hijau; untuk selanjutnya susunan warna LED adalah merah, kuning, dan hijau) menyala hijau, sedangkan arah lainnya merah. 2. Dari utara ke selatan (PA0 ... PA2) dan dari utara ke barat (PA3 ... PA5) hijau, sementara arah lainnya merah. 3. Dari utara ke barat dan adari timur ke barat (PA6, PA7, dan PB0) hijau sedangkan arah lainnya merah. 4. Dari timur ke barat dan timur ke utara (PB1 ... PB3) hijau sedangkan arah lainnya merah. 5. Dari arah timur ke utara dan dari selatan ke utara (PB4... PB6) hijau dan arah lainnya merah. 6. Dari arah selatan ke utara dan dari selatan ke tumur (PB7, PC0, dan PC1)hijau dan sedangkan arah lainnya merah. 7. Dari arah selatan ke timur dan dari barat ke timur (PC2 ... PC4) hijau dan sedangkan arah lainnya merah. 8. Dari arah barat ke timur dan dari barat ke selatan (PC5 ... PC7) menyala hijau sedangkan arah lainnya merah.

9. Pengujian Alat:Kondisi Standbay Input FFH 1. 2. 3. 4. 5. 6. 7. 8. Manual 00H 1. 2. 3. Output Barat selatan = Kuning Utara selatan = kuning Utara selatan = Kuning Utara barat = Kuning Utara barat = Kuning Timur barat = Kuning Timur barat = Kuning Timur utara = Kuning Timur utara = Kuning Selatan utara = Kuning Selatan utara = Kuning Selatan timur = Kuning Selatan timur = Kuning Barat timur = Kuning Barat timur = Kuning Barat selatan = Kuning Lampu semua padam Barat selatan = Hijau Utara selatan = Hijau Utara selatan = Merah

Utara barat = Merah 4. Utara barat = Merah Timur barat = Merah 5. Timur barat = Merah Timur utara = Merah 6. Timur utara = Merah Selatan utara = Merah 7. Selatan utara = Merah Selatan timur = Merah 8. Selatan timur = Merah Barat timur = Merah 9. Barat timur = Merah Barat selatan = Merah Otomatis 0AH-00H 1. Barat selatan = Hijau Utara selatan = Hijau 2. Utara selatan = Merah Utara barat = Merah 3. Utara barat = Merah Timur barat = Merah 4. Timur barat = Merah Timur utara = Merah 5. Timur utara = Merah Selatan utara = Merah 6. Selatan utara = Merah Selatan timur = Merah 7. Selatan timur = Merah Barat timur = Merah 8. Barat timur = Merah Barat selatan = Merah Data yang di berikan pada tabel diatas merupakan sampel hasil yang kita peroleh.

ANALISA

Dari Projek yang berjudul Pengendali Lampu Lalu lintas Pada Simpang Empat memiliki analisa bahwa: a. Percobaan pertama: Standbay. Pada metode standbay ini merupakan gambaran dimana lampu lalu lintas pada saat malam hari yang tidak berfungsi atau bisa dikatakan pada simpang empat dari arah manapun boleh jalan. Pada metode standbay inputan yang diberikan adalah FFH karena untuk memunculkan lampu warna kuning terus menerus dan juga berkedip sebagaimana seperti lampu lalu lintas yang sebenarnya. Dalam metode ini juga menggunakan clock yang diberikan pada VB yang di outputkan pada LED tester, karena clocknya tidak menggunakan IC 555 sehingga lebih mudah untuk mengaplikasikannya dan juga lebih simpel untuk aplikasinya. Lampu ini juga bisa mati bila kita mengklik metode lain yaitu tombol manual atau tombol otomatis pada Software Visual Basic (VB). Inputan berada di port 1 yang disambung pada Led tester. b. Percobaan kedua: Manual. Pada percobaan yang kedua menggunakan metode manual atau bisa dikatakan kita mengklik terus tombol yang kita buat dari Visual Basic (VB). Pada metode ini memiliki inputan 00H sehingga waktu pertama kali kita mengklik tombol manual pada Visual Basic (VB) maka yang muncul adalah lampu padam semua dan secara otomatis langsung menuju keadaan pertama yaitu yang kearah yang selatan berwarna hijau dan yang lainnya merah semua. Untuk kondisi yang selanjutnya yaitu yang arah utara yang selatan tetap hijau dan utara ke barat juga hijau sedangkan yang dari arah barat keselatan berwarna kuning dan yang lainnya berwarna merah begitu juga selanjutnya dengan mengklik-klik terus tombol manual pada Visual Basic (VB), karena bila tida di klik lampu tidak berjalan. Cloknya berjalan berdasarkan tombol manual yang kita klik pada software Visual Basic (VB). Inputan berada di port 1 yang disambung pada Led tester. c. Percobaan ketiga: Otomatis Pada percobaan yang ketiga ini menggunakan metode otomatis atau bisa dikatakan berjalan sendiri sesuai denga kondisi yang di berikan pada program Visual Basic. Pada metode ini inputan yang diberikan adalah 0AH-00H seperti counter mundur. Pada metode ini berbeda dengan metode manual karena pada metode ini langsung muncul semua yang arah selatan berwarna hijau yang lainnya berwarna merah, semua berjalan secara otomatis sesuai deengan clocknya sampai clocknya selesai semua inputan berada pada port 1yang disambungkan pada Led tester. Pada metode otomatis seperti halnya seperti lampu lalu lintas yang ada di peremapatan jalan yang sesungguhnya dengan

metode counter mundur atau biasanya disebut down counter. Clock yang di berikan adalah dari 255-0.

KESIMPULAN

Dari projek yang telah dilakukan dapat ditarik kesimpulan bahwa Pengontrolan lampu lalu lintas dapat dilakukan dengan menggunakan sebuah rangkaian yang cukup sederhana daan bahasa assembler. Rangkaian lampu lalu lintas ini menggunakan PIO DT-51. Port A, port B, dan Port C diinisialisasi sebagai output. Output Port A, B, dan C dimasukkan ke buffer, kemudian dihubungkan ke LED. Pada percobaan ini tidak menggunakan IC 555 sebgai click karena aplikasinya terlalu rumit sehingga metodenya di rubah menggunakan Visual Basic (VB) sebagai pengontrolannya dan juga sebagai tombol-tombol un tu merubah metode yaitu manual, otomatis, standbay yang sudah memiliki settingan masing-masing seperti yang kita ingginkan untuk menampilkannya seperti lampu lalu lintas yang sesungguhnya. Ada dua macam konektor Port Parallel , yaitu 36 pin dan 25 pin. Konektor 36 pin dikenal dengan mana Centronics dan konektor 25 pin dikenal dengan mana DB-25. Centronic lebih dulu ada dan digunakan daripada DB-25, namun karena DB-25 lebih praktis maka untuk koneksitor Port paralllel pada komputer sekarang hanya digunakan DB-25, sedang Centronic masih digunakan sebagai konektor pada printer. Layaknya komponen elektronika, port parallel disimbolkan dengan konektor betina dan jantan. Di komputer, konektor port parallel yang terpasang adalah DB-25 betina, sehingga kabel penghubung keluar adalah DB-25 jantan.