Anda di halaman 1dari 5

Konsep Input dan Output pada Mikrokontroler dengan Bascom AVR

11:30 PM

a)
b)

Program Mikrokontroler

No comments

1. Kegiatan Belajar 2 : Konsep Input dan Output


Tujuan Pembelajaran 2 :
Setelah mendapatkan materi input dan output diharapkan perseta didik dapat :
Mengenal tentang konsep input dan output pada mikrokontroler
Memprogram input dan output dengan bahasa pemrograman BASIC
c) Menjalankan program secara simulasi dan mendownloadkan program kedalam IC AT Mega
40 pin dengan USBasp untuk konsep input dan output.
2. Uraian Materi 2
a. Rangkaian LED
Rangkaian ini akan membuat kode sederhana yaitu memberikan nilai logika 1 dan 0 pada
port output AT Mega 40 pin. Port I/O akan diset menjadi port output. Port yang sama dapat
dialihkan fungsinya menjadi port input dengan cara mengatur DDR (Data Direction
Register)nya dari tiap-tiap port.
Untuk penyalaan LED membutuhkan cara yaitu aktif High dan Low. Pemasangan LED
mempunyai 2 cara yaitu :
1)

Common Catoda

2)

Common Anoda

Gambar 1. Konfigurasi LED

Pada gambar diatas perlu dipahami jika common merupakan hubungan bersama, pada
common anoda LED akan aktif "menyala" jika diberikan logika "0", sedangkan untuk
common catoda LED akan aktif "menyala" jika diberikan logika "1".
Tujuan pembelajaran siswa dapat mengerti dan memahami konsep tentang input dan
output. Sehingga siswa diharapkan dapat memprogram dengan menggunakan BASCOM dan
mensimulasikan program tersebut di Proteus serta eksekusi ke Hardware Trainer
Mikrokontroler AT Mega 40 pin.
Pada gambar rangkaian input dan output ditunjukkan bahwa delapan LED terpasang
secara common catoda (CC), sehingga untuk mengaktifkan LED tersebut dibutuhkan logika
"1". Jangan terbalik dalam pemberian logika untuk led dikarenakan LED tidak akan dapat
menyala.
Untuk mempelajari tentang rangkaian pada mikrokontroler AT Mega 40 pin tentang
konsep input dan output maka pada rangkaian input dan output di bawah ini telah
diperlihatkan rangkaiannya. Pada rangkaian dibawah ini terlihat untuk konsep input dan
output terdiri dari beberapa komponen yaitu Sistem Minimum dan tambahan LED sebagai
output dan Push Button sebagai input.

Gambar 2. Sistem Minimun dengan input dan output

A. Program 1. Menghidupkan LED


'IO LED 1.BAS
$regfile = "m16def.dat"
$crystal = 12000000
Config Portb = Output
Port_led Alias Portb
Port_led = 255
End

'mendeklarasikan IC yang digunakan


'menentukan frekuensi kerja (Kristal)
'Port B digunakan sebagai output
'Instruksi port B menjadi port led
'data 255 =&B11111111 atau &HFF
'Selesai

B. Program 2 Menyalakan dan mematikan LED


'Menyalakan LED berkedip
$regfile = "m16def.dat"
$crystal = 12000000
Config Portb = Output
Port_led Alias Portb
Do
Port_led = 255

'mendeklarasikan IC yang digunakan


'menentukan frekuensi kerja (Kristal)
'Port B digunanakan sebagai Output
'Instruksi port B menjadi Port led
'atau &B11111111

Wait 1
Port_led = 0
Wait 1
Loop

'tunggu 1 detik
'atau &B00000000
'tunggu 1 detik

C. Program 3. Menghidupkan LED Berjalan dari Tepi


'IO LED 3.bas
$regfile = "m16def.dat"
$crystal = 12000000
Config Portb = Output
Port_led Alias Portb
Do
Port_led = &B00000001
Waitms 300
Port_led = &B00000010
Waitms 300
Port_led = &B00000100
Waitms 300
Port_led = &B00001000
Waitms 300
Port_led = &B00010000
Waitms 300
Port_led = &B00100000
Waitms 300
Port_led = &B01000000
Waitms 300
Port_led = &B10000000
Waitms 300
Loop

D. Program 4. Menghidupkan LED Berjalan dari Tepi (2)

'IO LED 4.BAS


$regfile = "m16def.dat"
$crystal = 12000000
Config Portb = Output
Port_led Alias Portb
Dim Data_led As Byte 'Mendeklarasikan variable Data led
Data_led = 1
Do
Port_led = Data_led
Waitms 5 0
Rotate Data_led , Left , 1
Loop

E. Program 5. Menghidupkan 2 LED Bergeser dari Tepi

'IO LED 5.BAS


$regfile = "m16def.dat"
$crystal = 12000000
Config Portb = Output

Port_led Alias Portb


Dim Data_led As Byte , X As Byte
Data_led = &B00000011
Do
For X = 1 To 6
Port_led = Data_led
Waitms 200
Rotate Data_led , Left , 1
Next X
'Menggeser putaran Data led
For X = 1 To 6
Port_led = Data_led
Waitms 200
Rotate Data_led , Right , 1
Next X
Loop

Program 6. Menyalakan LED dengan Menekan Tombol

'Program PUSH Membaca Tombol.BAS


$regfile = "m16def.dat"
$crystal = 12000000
Dim X As Byte
Config Portb = Output
Config Portd = Input
Tomboll Alias &B11101111
Tombol2 Alias &B11011111
Tombol3 Alias &B10111111
Tombol4 Alias &B01111111
Hasil Alias Portb
Masukan Alias Pind
Portd = 255
' menghidupkan LED berdasar penekanan push button di PORTD
Do
X = Masukan
Select Case X
Case Tomboll : Hasil = &B00001111
' pushbuton di
Case Tombol2 : Hasil = &B11110000
' pushbuton di
Case Tombol3 : Hasil = &B01010101
' pushbuton di
Case Tombol4 : Hasil = &B10101010
' pushbuton di
End Select
Loop

H. Program 7. Mengubah Penyalaan LED dengan PushButton


' program PUSH02.BAS
$regfile = "m16def.dat"
$crystal = 12000000
Dim X As Byte , Animasi As Byte , Status As Bit
Config Portb = Output
Config Portd = Input
Hasil Alias Portb
Masukan Alias Pind
Portd = 255
Animasi = &H01
' animasi LED berdasar penekanan push button di PORTD
Do

portd
portd
portd
portd

4
5
6
7

X = Masukan
Select Case X
Case &B11111011 : Status = 0
portd.2
Case &B11110111 : Status = 1
portd.3
End Select
If Status = 0 Then
Rotate Animasi , Left
Else
Rotate Animasi , Right
End If
Hasil = Animasi
Waitms 200
Loop

' pushbuton di
' pushbuton di

http://embeddedsystem.itstoshare.com/2013/11/konsep-input-dan-output-pada.html di
akses tgl 11 april 2014 22:10

Anda mungkin juga menyukai