Translate

Komunikasi Serial UART Antara 2 Mikrokontroller Dengan Port Serial

Komunikasi Serial UART Antara 2 Mikrokontroller Dengan Port Serial

      Komunikasi antara 2 mikrokontroller dengan menggunakan port serial maksudnya yaitu komunikasi antara mikrokontroller satu dengan mikrokontroller lain, baik itu setipe maupun tidak, namun pada pembahasan kali ini menggunakan 2 buah minimum sistem setipe yaitu minimum sistem ATMega16, jadi mikrokontroller A mengirimkan data berupa angka, kemudian dikirimkan menggunakan port serial RX dan TX, setelah itu jika mikrokontroller B berhasil menerima data tersebut, maka akan ditampilkan angka yang diterima ke LCD display 16x2.
      Sebagai contoh gambaran sistem ini yaitu mikrokontroller A mengirimkan data berupa angka misal 36, kemudian dikirimkan melalui port serial, terdapat mikrokontroller B yang siap menerimanya yang telah terhubung secara serial dengan mikrokontroller A, jika mikrokontroller B telah menerima data angka 36, maka data berupa angka 36  tersebut akan ditampilkan ke layar LCD 16x2 pada mikrokontroller B.


Prinsip Kerja Alat
            Prinsip kerja alat ini yaitu terdapat dua buah tombol yang digunakan untuk input data jadi jika tombol 1 ditekan, akan mengirimkan data angka 36, jika tombol yang kedua ditekan akan mengirimkan data angka 50, namun jika tombol 1 dan 2 tidak ditekan maka akan mengirimkan data angka 20, mikrokontroller A mengirimkan data ke mikrokontroller B menggunakan port serial RX dan TX, setelah data diterima oleh mikrokontroller B makan data angka akan ditampilkan ke layar LCD 16x2, untuk lebih jelasnya seperti bagan berikut

 
            Data angka 50, 36 dan 20 hanyalah contoh saja jika ingin angka lain juga bisa hanya perlu mengganti pada programnya saja, sistem ini bisa dikembangkan sebagai kendali robot, kendali ruangan atau lainnya yang menggunakan sistem komunikasi antara 2 mikrokontroller.

   Minimum System ATMega16


 
Program Bascom AVR
‘Program Untuk Mikrokontroller A / Master
$regfile = "m16def.dat"
$crystal = 12000000
$baud = 9600

Dim A As Byte
Dim B As Byte
Dim C As Byte

Ddrb.0 = 0
Ddrb.1 = 0

Set Portb.0
Set Portb.1

A = 36
B = 50
C = 20

Do

If Pinb.0 = 0 Then
Printbin A
Waitms 25

Elseif Pinb.1 = 0 Then
Printbin B
Waitms 25

Else
Printbin C
Waitms 25
End If
Loop

‘Program Untuk Mikrokontroller B / Slave
$regfile = "m16def.dat"
$crystal = 12000000
$baud = 9600

Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2
Config Lcdpin = Pin , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
Config Lcd = 16 * 2

Dim A As Word

Cls
Cursor Off

Do

A = Waitkey()

Upperline
Lcd A

Loop



Cara Penggunaan Alat
                        Untuk penggunaan alat sangatlah mudah, yang pertama yaitu hidupkan kedua buah mikrokontroller terlebih dahulu dengan memberikan tegangan 12 volt atau 9 volt dc kemudian tekan tombol 1 pada mikrokontroller A / master, maka pada mikrokontroller B / slave akan tampil angka 36, coba dengan tombol yang kedua maka akan tampil angka 50, setelah itu dicoba untuk tidak menekan kedua tombol push button, maka pada mikrokontroller slave akan tampil angka 20 pada layar LCD.  


VIDEO HASILNYA



No comments:

Post a Comment