LAPORAN MIKROKONTROLER JOB 6 UART
PRAKTIKUM
MIKROKONTROLER
KOMUNIKSI SERIAL (UART)
Disusun
Oleh
Khairinnisa Siregar (16507134042)
TEKNIK ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS
NEGERI YOGYAKARTA
A. Tujuan
Setelah melakukan praktik mahasiswa
diharapkan dapat:
1. Memahami
prinsip kerja komunikasi UART
2. Mampu
mengirim data menggunakan UART USB termonitor di hyperterminal
B. Dasar
Teori
UART merupakan sebuah subsistem
hardware yang memungkinkan untuk melakukan transmit dan receipt data secara
serial. Fitur ini biasnya telah terinclude dalam sebuah mikrokontroller.
Berbeda dari metode komunikasi lain, komunikasi secara serial mengandalkan clock
pada sisi transmit dan receive dimana kedua sisi clock ini harus sama. Sehingga
pada komunikasi ini hanya dibutuhkan tiga pin, yakni Tx (Transmit), Rx
(Receive), dan GND. Pada PC level tegangan RS232 antara +3 hingga +25 volt
untuk data 0, dan -3 hingga -25 untuk logika 1. Perlu diketahui, bahwa pada
Atmega16 terdapat pin Txd dan Rxd yang bekerja pada level UART. Sementara untuk
strandar RS232, kita memerlukan sebuah IC converter untuk menyesuaikan dengan
tegangan RS232. Karena level logika pada AVR hanya sekitar 3 – 5 volt.
Gambar 1. Pulsa format
komunikasi UART
Ciri
khas daari komunikasi UART adalah sebagai berikut: 1) Pada transmisi asinkron,
mengirimkan 1 stop bit (1) di awal dan 1 atau lebih start bit (0) di akhir
setiap byte. 2) Data ditransmisikan per karakter dalam satu saat (5 sampai 8
bit). 3) Asinkron berarti “asinkron pada level byte”, tetapi bit-bit tetap
disinkronkan; durasinya sama. Teknik paritas memerlukan tambahan satu bit (bit
paritas) pada data word. Bit paritas dapat bernilai 1 atau 0 tergantung pada:
1.
Jumlah angka 1 di dalam data word
2.
Pola paritas yang digunakan
3.
Bit Paritas digabungkan pada byte data,
sehingga menjadi 9 bit
Pola paritas genap (even
parity) memerlukan total jumlah angka 1 (termasuk bit
paritas sendiri) genap. Pola paritas ganjil (odd parity) memerlukan total jumlah
angka 1 ganjil.
C. Alat
dan Bahan
1. Modul
AVR Atmega8535/8/16/32
2. PC
(Personal computer)/laptop
3. Jumper
4. Power
supply 5-12V
5. CRO
D. Skema
Rangkaian
E. Langkah
Kerja
1. Buatlah alat dan bahan seperti rangkaian di atas;
2. Sebelum
anda menulis program aturlah seperti gambar berikut;
3. Tuliskan
list program berikut;
#include <mega16.h>
#include <stdio.h>
#include <delay.h>
unsigned char m,n;
void main(void)
{
// Declare your local variables here
PORTA=0x00; DDRA=0x00;
PORTB=0xFF;
DDRB=0xFF; //sebagai input
PORTC=0x00; DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
// USART initialization
// Communication Parameters: 8 Data, 1
Stop, No Parity
// USART Receiver: Off
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 9600 (Double Speed
Mode)
UCSRA=0x02;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x8F;
ACSR=0x80;
SFIOR=0x00; n=0; m=0; while (1) { if(PINB.4==0)
{n=n+1; if (n==1) { putsf("Kalau
tidak belajar mirko sekarang, kapan lagi?\r"); delay_ms(200);
{n=0;}
} } if(PINB.0==0) {m=m+1; if (m==1) {
putsf("Kalau bukan kelas B, siapa
lagi?\r"); delay_ms(200);
}
{m=0;}
{n=0;}
}
};
}
4. Setelah
anda compile, uji cobakan/simulasikanlah di Proteus lalu coba pada hardware
nyata;
5. Rakitlah
modul/hardware mikrokontroller dengan menghubungkan kabel USB ke dalam UBS
PC/laptop.
6. Cek
USB driver prolific, jika anda menggunakan win7, win8, maupun xp silahkan
gunakan prolific 3.2.00 yang tersedia di besmart.uny.ac.id (elearning).
7. Lihat
hasilnya pada device manager, jika teristal sempurna akan tampak seperti
berikut;
8. Selanjutnya,
settinglah parameter komunikasi seperti langkah 2, atau seperti contoh berikut;
9. Aturlah
AVR (pada simulasi Proteus) dan hasilnya seperti berikut;
10. Pada
hardware, hubungkan pin PD0 dan PD1 ke CRO, tekanlah tombol PB4 dan PB0, amati
apa yang terjadi pada hyperteminal PC/laptop Anda.
11. Tugas,
buatlah program UART, apabila PB0 ditekan akan mengirim (tx) data “kirim”, dan
apabila PB4 ditekan akan menerima data “diterima”.
12. Tuliskan
hasil praktikum anda sesuai format dan simpulkan hasilnya.
F. Hasil
dan Analisa
Tampilan rangkaian komunikasi
serial UART setelah disimulation
Analisa
: dari praktikum yang dilakukan dapat dianalisa bahwa untuk menampilkan
karakter pada rangkaian sintaks pada program diawali dengan header program #include
<mega16.h> yang digunakan untuk mengaktifkan fungsi IC Atmega16 kemudian header
#include <delay.h> digunakan untuk mengaktifkan fungsi jeda pada
tampilan, usingned char m,n pada program digunakan untuk mendeklarasikan
variable data yang akan dimasukkan yaitu data yang bertipe char/character.
//USART
Mode:Asynchronous berarti komunikasi yang digunakan yaitu menggunakan mode
asynchronous kemudian //USART Baud Rate:9600 berarti kecepatan transmisi yang
digunakan yaitu 9600, semakin besar baud rate maka semakin besar pula
kemungkinan data error pada saat transmisi.
G. Kesimpulan
Dari praktikum yang dilakukan dapat
disimpulkan :
1. UART atau Universal Asynchornous Receiver Transmitter adalah
protokol komunikasi yang umum digunakan dalam pengiriman data serial
antara device satu dengan yang lainnya.
2. Adapun
cara kerja dari UART adalah Saat sebuah data
diberikan kepada UART untuk transmisi "Bit Start" ditambahkan pada setiap
awal data yang akan ditransmisikan. Bit Start digunakan untuk memperingatkan
penerima yang kata data akan segera dikirim, dan memaksa bit-bit sinyal di
receiver agar sinkron dengan bit-bit sinyal di pemancar.
Komentar
Posting Komentar