Anda di halaman 1dari 12

MODUL 4 KOMUNIKASI USART

ISTIQOMAH (121400053)
Asisten: Ayu Lintang Ramadhona
Tanggal Percobaan: 19/05/2023
TT2207-Praktikum Teknik Telekomunikasi 2
Program Studi Teknik Telekomunikasi – Jurusan Teknologi Industri dan Produksi ITERA

Abstrak
2. STUDI PUSTAKA
Pada praktikum kali ini tentang USART, yang mana pada
percobaan nya menampilkan karakter huruf atau pun kata 2.1 KOMUNIKASI USART
dalam hyper terminal Pada percobaan yang pertama
melakukan percobaan menampilkan karakter huruf yang Universal Synchronous-Asynchronous Receiver-
diinginkan, lalu pada percobaan kedua menampilkan suatu Transmitter adalah alat komunikasi yang sangat fleksibel
kata pada hyper terminal dan percobaan yang ketiga yang dapat digunakan untuk mentransfer data antara
menampilkan suatu kata pada lcd dengan menggunakan mikrokontroler dan modul eksternal, termasuk komputer
interrupt. USART (Universal Synchronous Asynchronous
dengan kemampuan UART. USART memungkinkan
Serial Receiver Transmitter) adalah perangkat keras komputer
yang digunakan untuk menerjemahkan dan menggabungkan transfer data baik secara sinkron maupun asinkron, jadi
informasi antara bit data serial dan bit paralel. Dalam modul USART pasti kompatibel dengan UART. Untuk
ini juga banyak pembahasan tentang baudrate yaitu simbol per ATmega8535, pengaturan mode sinkron dan asinkron
detik atau pulsa per detik, yang digunakan untuk mengukur biasanya sama. Satu-satunya perbedaan hanya pada
laju simbol sebagai laju modulasi dalam jumlah perubahan sumber jamnya. Jika dalam mode asinkron setiap
simbol yang berbeda (pembangkitan sinyal) yang dilakukan perangkat memiliki sumber jamnya sendiri, dalam mode
per detik pada media transmisi. sinkron hanya ada satu sumber jam yang digunakan
Kata kunci: usart, baudrate, atmega8535. bersama. Jadi dari segi hardware, mode asinkron hanya
membutuhkan dua pin yaitu TXD dan RXD, sedangkan
1. PENDAHULUAN mode sinkron membutuhkan tiga pin yaitu TXD, RXD
dan XCK. [2]
Komunikasi serial adalah metode transmisi data yang
mengirimkan hanya satu bit data pada satu waktu melalui 2.2 KOMUNIKASI FULL DUPLEX
media transmisi kabel atau nirkabel. Ada dua jenis
komunikasi serial: komunikasi serial asinkron dan Full Dupleks adalah jenis komunikasi dua arah di mana
komunikasi serial sinkron. Komunikasi serial sinkron kedua stasiun dapat mentransmisikan pada saat yang
adalah komunikasi dimana ada pihak (pengirim atau sama. Selama komunikasi, setiap unit dapat mengirim
penerima) yang membuat pengirimaan clock bersama dan menerima data secara bersamaan. Contoh alat yang
dengan data [1]. Port serial mikrokontroler terdiri dari menggunakan teknologi full-duplex adalah komunikasi
dua pin yaitu RxD dan TxD. RxD untuk menerima data melalui telepon atau handphone. [3]
dari komputer atau perangkat lain sedangkan TxD untuk
mengirim data ke komputer atau perangkat lain. USART 2.3 BAUDRATE
adalah jenis perangkat antarmuka serial yang dapat Baud rate adalah ukuran kecepatan transmisi komunikasi
diprogram untuk komunikasi asinkron atau sinkron. asinkron. Tingkat baud mewakili jumlah bit yang benar-
Adapun tujuan praktikum modul ini adalah: benar dikirim melalui koneksi serial. Hitungan laju baud
menghitung jumlah bit mulai, berhenti, dan paritas
1. Praktikan mampu memahami cara melakukan redundan yang dihasilkan oleh UART pengirim dan
inisialisasi pada komunikasi serial USART dibuang oleh UART penerima. [4]
mikrokontroler.
2. Praktikan mampu membuat program untuk 2.4 USART BASED RATE REGISTER(UBRR)
mengirimkan suatukarakter dari mikrokontroler UBRR adalah register 16-bit yang menentukan
AVR ke komputer. kecepatan transfer data yang akan digunakan. UBRR
3. Mampu membuat program untuk menerima dibagi menjadi dua bagian yaitu 29 UBRRH dan
suatu karakter dari komputer. UBRRL. UBRR adalah bit penyimpanan untuk
komunikasi serial laju konstan. UBRRH menyimpan 4
bit tertinggi dan UBRRL menyimpan 8 bit sisanya. Data
dimasukkan dalam UBRRH dan UBRRL [5]

Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 1


3. METODOLOGI #include <mega8535.h>
#include <stdio.h>
Penjelasan paktikum void main(void)
{
UCSRA=0x00;
UCSRB=0x18;
Buat rangkaian pada
proteus UCSRC=0x86;
UBRRH=0x00; //USART baud rate 9600bps
UBRRL=0X19; //Kristal 4MHz
putchar('A'); //Kirim karakter ‘A’
Buat project CV AVR
UDR='B'; //Kirim karakter ‘B’
}
Bila program ini dijalankan dengan benar, pada layar
HyperTerminal akan ditampilkan karakter setiap tombol
RESET ditekan.
Mengamati hasil
TUGAS II.A.2 Modifikasi contoh program Tugas II.A.1.
sehingga kondisinya sebagai berikut:
• Baudrate = 2400bps
• Mengaktifkan fasilitas double USART transmission
Mengerjakan laporan speed

3.2 MENGIRIM BEBERAPA KATA KE PC


Alat dan bahan: Persiapan Sama seperti II.A
• Software CodeAVR TUGAS II.B.1 Jalankan contoh program di bawah ini,
amati hasilnya dan buatlah flowchart-nya.
• Software proteus
#include <mega8535.h>
• Laptop/PC
#include <string.h>
3.1 MENGIRIM DATA KARAKTER KE PC #include <stdio.h>
Persiapan flash unsigned char string1[] = { " PRAKTIKUM " };
• Siapkan alat dan bahan yang digunakan (starter-kit flash unsigned char string2[] = { " SISTEM " };
AVR DT-Combo,USBasp, PC/Laptop).
flash unsigned char string3[] = { " MIKROPROSESOR
• Buka software yang digunakan (Code Vision AVR) " };
• Pastikan semua sambungan telah terkoneksi sesuai void main(void){
panduan
unsigned char i; //Inisialisasi USART
• Lakukan panduan praktikum dengan hati-hati dan teliti.
UCSRA=0x00;
TUGAS II.A.1 Aturlah properti pada HyperTerminal
dengan spesifikasi sebagai berikut: UCSRB=0x18;
Bits per second 9600 UCSRC=0x86;
Data bits 8 UBRRH=0x00; //USART Baud rate: 9600 bps

Parity : None UBRRL=0x19;

Stop bits 1 for(i=0; i<strlenf(string1)-1; i++){

Flow control : Hardware UDR=string1[i];


Jalankan contoh program di bawah ini. Amati hasilnya while(UCSRA.5!=1); //Tunggu UDR siap menerima
dan buatlah flowchart-nya. data
Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 2
} E=0;
for(i=0; i<strlenf(string2)-1; i++){ }
putchar(string2[i]); void tulis_data_ram_lcd (void){
} DDR_DATA=0xFF;
putsf(string3); RS=1;
} RW=0;
Bila program ini dijalankan dengan benar, pada layar E=1;
HyperTerminal akan ditampilkan teks setiap tombol
PORT_DATA=dataLCD;
RESET ditekan.
E=0;
TUGAS II.B.2 Modifikasi program sehingga dapat
mengirim teks dari mikrokontroler ke komputer. Ketika }
SW0 ditekan maka nama anda dikirim, selanjutnya
void lcd_ready (void){
ketika SW1 ditekan maka NIM anda dikirm, dan yang
terakhir ketika SW2 ditekan maka nama program studi dataLCD=0x80;
anda dikirim. Gunakan PORTB sebagai input.
while(dataLCD & 0x80){
3.3 MENERIMA DATA MENGGUNAKAN DDR_DATA=0x00; //Sebagai input
SISTEM INTERRUPT
PORT_DATA=0x00; //Matikan internal pull-up
Persiapan Sama Seperti II.A
RS=0;
TUGAS II.C.1 Berikut merupakan sambungan header
PORT LCD dengan pin mikrokontroler AVR RW=1;
E=1;
#asm("nop"); //Sinkronisasi pin
dataLCD=PIN_DATA;
E=0;
}
}
Jalankan contoh program di bawah ini, amati hasilnya void init_lcd (void){ //Inisialisasi LCD
dan buatlah flowchart-nya.
delay_ms(20);
#include <mega8535.h>
dataLCD=0x30; //Func set interface 8 bit
#include <delay.h>
kirim_perintah_lcd();
#define RS PORTD.5
delay_ms(5);
#define RW PORTD.6
dataLCD=0x30;
#define E PORTD.7
kirim_perintah_lcd();
#define PORT_DATA PORTA //Sebagai port
biderectional delay_us(150);
#define DDR_DATA DDRA dataLCD=0x30;
#define PIN_DATA PINA kirim_perintah_lcd();
unsigned char dataLCD; delay_us(50);
void kirim_perintah_lcd (void){ dataLCD=0x38;
DDR_DATA=0xFF; //Sebagai output kirim_perintah_lcd();
RS=0; lcd_ready();
RW=0; dataLCD=0x04;
E=1; //Sinyal chip enable kirim_perintah_lcd(); //Display off
PORT_DATA=dataLCD; lcd_ready();
Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 3
dataLCD=0x01; ditampilkan pada LCD dan jendela HyperTerminal.
Gunakan fungsi putchar dan library stdio.h.
kirim_perintah_lcd(); //Display clear
lcd_ready(); 4. HASIL DAN ANALISIS
dataLCD=0x06;
4.1 MENGIRIM DATA KARAKTER KE PC
kirim_perintah_lcd();
a. Tugas 1.A.1
lcd_ready();
dataLCD=0x0C;
kirim_perintah_lcd();
lcd_ready();
}
unsigned char i;
//Interrupt Service Routine
Ketika program di run, maka LCD akan
interrupt [USART_RXC]void usart_rx_complete(void){ Menampilkan huruf A hal ini dikarenakan input
dataLCD=UDR; putchar yang ada didalam program yang telah
dibuat yaitu putchar('A') dan ketika tombol reset
tulis_data_ram_lcd(); ditekan maka karakter A akan bertambah di layar
lcd_ready(); virtual terminal.

i++; • FLOWCHART
if(i==8){ //Jika sudah 8 karakter dataLCD=0x80;
//Pindah kursor ke baris 1 START

kirim_perintah_lcd();
lcd_ready();
UCSRA=0x00;
i=0; UCSRB=0x18;
UCSRC=0x86;
} UBRRH=0x00
UBRRL=0X19
}
void main (void){
//unsigned char i; USCRA=0X00
DDRD=0xFF;
PORTD=0x1C;
UDR='B'
init_lcd(); putchar('A')
//Inisialisasi USART
UCSRA=0x00;
END
UCSRB=0x98; //RX complete interrupt enable
UCSRC=0x86; b. Tugas 1.A.2
UBRRH=0x00; //USART baud rate: 9600 (4MHz)
UBRRL=0x19;
i=0;
#asm("sei");
}
TUGAS II.C.2 Modifikasi program diatas agar setiap Pada tugas 2 ini jika rangkaian di run maka LCD akan
karakter yang diterima oleh mikrokontroler dapat menampilkan huruf b. Didalam percobaan ini hampir
mirip dengan percobaan 1 tetapi baud rate diganti
Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 4
menjadi 2400 bit per sekon dari yang sebelumnya akan muncul kata Teknik Telekomunikasi. Semua
9600 dan mengaktifkan fasilitas double USART itu terjadi akibat adanya pengunaan fungsi
transmission speed maka LCD akan menampilkan while/pengulangan apabila button yang ditekan
huruf b sesuai dengan program yang dibuat. Sama bukan tombol resetnya.
seperti percobaan sebelumnya muncul huruf b karena
putchar yang diinginkan. Dan ketika tombol reset 4.3 MENERIMA DATA MENGGUNAKAN SISTEM
ditekan akan ada penambahan huruf b pada layar INTERRUPT
hyperterminal.
a. Tugas 1.C.1
4.2 MENGIRIM BEBEAPA KATA KE PC Tugas ini mengharuskan LCD menampilkan karakter
sesuai dengan inputan yang diinginkan tersebut.
a. Tugas 1.B.1
Setiap kali mikroprosesor menerima data, maka
Hasil yang didapatkan dari percobaan ini sesuai mikroprosesor akan memasuki interrupt dan
dengan perintah yang ada di modul dimana ketika meresmikan karakter dengan UDR. Kemudian UDR
dirun dan tombol reset ditekan akan muncul kaliamat akan diset menjadi karakter sehingga tertampil pada
PRAKTIKUM SISTEM MIKROPROSESOR. layar LCD seperti yang diinginkan. Pada layar LCD
Disini terjadi kondisi pengulangan, jika tombol reset maksimal hanya akan memunculkan 8 karakter saja
ditekan berulang maka kalimat PRAKTIKUM baik itu huruf dan angka apabila user menginput lebih
SISTEM MIKROPROSESOR yang muncul juga dari 8 karakter maka karakter selanjutnya akan
berulang. Hal ini bisa terjadi dikarenakan pada body kembali ke awal karakter karena ada if(i==8) dan
main, tidak terdapat infinite loop while(1) sehingga dataLCD=0x80 pada codingannya.
program berjalan hanya satu kali untuk setiap run.
Oleh karena itu, diperlukan penekanan tombol reset
pada rangkaian agar program bisa berjalan berulang • FLOWCHART
kali.
• FLOWCHART
START

START

“PRAKTIKUM ISTALASI
SISTEM USART
MIKROPROSESOR”

WHILE
YES/NO YES END

UDR='B' UCSRA=0x00;
putchar('A') UCSRB=0x98;
UCSRC=0x86;
USCRA=0X00 UBRRH=0x00;
UBRRL=0x19;

putchar('A')
UDR='B'

b. Tugas 1.B.2
Dilakukan modifikasi pada codingan yang ada
dimana nantinya akan muncul kalimat yang sesuai END NAMA,NIM,
dengan yang diinginkan. Pada percobaan ini akan PRODI
dilakukan hal yang sama dengan percobaan b.1,
namun data yang dikirim adalah data nama b. Tugas 1.C.2
praktikan, nim dan program studi. Semua perintah
ada di Pin B sebagai masukan dan printf sebagai Setelah dilakukan modifikasi program dengan
keluarannya. Disini telah berhasil melakukan menggunakan putchar dan libery studio.h maka
percobaan jadi ketika dirun dan butoon 1 ditekan setiap masukan yang ada akan keluar pada LCD
maka akan muncul kata Tri widyatoro selanjutnya dan hyperterminal. Sama seperti percobaan
butoon 2 ditekan maka akan muncul angka sebelumnya hanya ada 8 karakter saja yang muncul
121400047 terakhir ketika butoon 3 ditekan maka di LCD dan ketikan masukan lebih dari 8 karakter
maka maka karakter selanjutnya akan kembali ke
Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 5
awal karakter. Beda halnya apabila di LAMPIRAN
hyperterminal karakter yang lebih dari 8 itu akan
A. Rangkaian 1.A.1
terus muncul tanpa merubah karakter awalnya.

5. KESIMPULAN
USART (Universal Synchronous and Asynchronous
Serial Receiver and Transmitter) adalah mode
komunikasi mikrokontroler ATMega8535. USART
mendukung komunikasi sinkron dan asinkron. USART
memiliki 2 pin (RxD dan TxD) untuk asinkron dan 3-bit
TxD, RxD, xCK untuk sinkron. Fungsi putchar dan
libary studio.h digunakan untuk menampilkan karakter #include <mega8535.h>
pada layar LCD dan di terminal virtual 2. Mengaktifkan
baudrate ganda USART dan mengubah baudrate akan #include <stdio.h>
mengubah karakter input yang berbeda void main(void)
DAFTAR PUSTAKA {
UCSRA=0x00;
UCSRB=0x18;
[1] J. S. S. a. S. N. A. Prayudha, "Sistem Kendali
Fasilitas Lab Stmik Triguna Dharma Menggunakan UCSRC=0x86;
Komunikasi Serial Berbasis Mikrokontroler,"
UBRRH=0x00; //USART baud rate 9600bps
Jurnal SAINTIKOM (Jurnal Sains Manajemen
Informatika dan Komputer) , vol. 17.2, pp. 184-191, UBRRL=0X19; //Kristal 4MHz
2018.
putchar('A'); //Kirim karakter ‘A’
[2] F. S. S. a. T. A. Mahadmadi, "Embedded C Pada
Mikrokontroler Avr At90s8515," Diss. Jurusan UDR='B'; //Kirim karakter ‘B’
Teknik Elektro Fakultas Teknik, 2011. }
[3] A. R. a. A. R. Maulana, "Websocket untuk Optimasi
B. Rangkaian 1.A.2
Kecepatan Data Transfer pada Real Time Chatting,"
Innovation in Research of Informatics
(INNOVATICS) , vol. 1.1, 2019.
[4] W. a. H. M. Wiyardani, "Aplikasi Penampil Data
Hasil Monitoring Suhu Dan Kelembaban Ruangan
Pada Wireless Sensor Network," Infotronik: Jurnal
Teknologi Informasi dan Elektronika , vol. 5.1 , pp.
24-26, 2020.
[5] H. S. Affandi, "SISTEM PENGENDALIAN
PERALATAN LISTRIK DAN PENGAMAN #include <mega8535.h>
RUMAH MELALUI SMS MENGGUNAKAN
MIKROKONTROLER AVR ATMEGA 16," #include <stdio.h>
undergraduate thesis, Universitas void main(void)
Muhammadiyah Gresik., 2016.
{
UCSRA=0x00;
UCSRB=0x18;
BIODATA PENULIS
UCSRC=0x86;
Penulis bernama Istiqomah walaupun hanya satu
kata tapi memiliki arti yang luar biasa. Saya UBRRH=0x00; //USART baud rate 2400bps
merupakan mahasiswa aktif Institut Teknologi UBRRL=0X19; //Kristal 4MHz
Sumatera yang masuk pada tahun 2021 di
Program Studi Teknik Telekomunikasi, dan putchar('A'); //Kirim karakter ‘A’
merupakan angkatan ke 3 di prodi tersebut. Saat UDR='B'; //Kirim karakter ‘B
ini saya memasuki tahun kedua kuliah atau
semester 4. C. Rangkaian 1.B.1

Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 6


#include <mega8535.h>
#include <string.h>
#include <stdio.h>
flash unsigned char string1[] = { " PRAKTIKUM " };
flash unsigned char string2[] = { " SISTEM " };
flash unsigned char string3[] = { " MIKROPROSESOR
" };
void main(void){
unsigned char i;
//Inisialisasi USART #include <mega8535.h>
UCSRA=0x00; #include <string.h>
UCSRB=0x18; #include <stdio.h>
UCSRC=0x86;
UBRRH=0x00; //USART Baud rate: 9600 bps void main(void){
UBRRL=0x19; unsigned char i;
for(i=0; i<strlenf(string1)-1; i++){ //Inisialisasi USART
UDR=string1[i]; UCSRA=0x00;
while(UCSRA.5!=1); //Tunggu UDR siap menerima UCSRB=0x18;
data UCSRC=0x86;
} UBRRH=0x00; //USART Baud rate: 9600 bps
for(i=0; i<strlenf(string2)-1; i++){ UBRRL=0x19;
putchar(string2[i]); DDRB=0x00;
}
putsf(string3); while (1)
} if (PINB.0==0){
while (PINB.0==0){}

D. Rangkaian 1.B.2 printf("TRI WIDIANTORO");


}
else if (PINB.1==0){
while (PINB.1==0){}

printf("121400047");
}
else if (PINB.2==0){
while (PINB.2==0){}

printf("Teknik Telekomunikasi");
}
}

Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 7


E. Rangkaian 1.C.1 }

void init_lcd (void){ //Inisialisasi LCD


delay_ms(20);
dataLCD=0x30; //Func set interface 8 bit
kirim_perintah_lcd();
delay_ms(5);
dataLCD=0x30;
kirim_perintah_lcd();
delay_us(150);
dataLCD=0x30;
kirim_perintah_lcd();
delay_us(50);

dataLCD=0x38;
#include <mega8535.h> kirim_perintah_lcd();
#include <delay.h> lcd_ready();

#define RS PORTD.5 dataLCD=0x04;


#define RW PORTD.6 kirim_perintah_lcd(); //Display off
#define E PORTD.7 lcd_ready();
#define PORT_DATA PORTA //Sebagai port
biderectional dataLCD=0x01;
#define DDR_DATA DDRA kirim_perintah_lcd(); //Display clear
#define PIN_DATA PINA lcd_ready();

unsigned char dataLCD; dataLCD=0x06;


kirim_perintah_lcd();
void kirim_perintah_lcd (void){ lcd_ready();
DDR_DATA=0xFF; //Sebagai output
RS=0; dataLCD=0x0C;
RW=0; kirim_perintah_lcd();
E=1; //Sinyal chip enable lcd_ready();
}
PORT_DATA=dataLCD; unsigned char i;
E=0; //Interrupt Service Routine
} interrupt [USART_RXC]void usart_rx_complete(void){
dataLCD=UDR;
void tulis_data_ram_lcd (void){ tulis_data_ram_lcd();
DDR_DATA=0xFF; lcd_ready();
RS=1; i++;
RW=0; if(i==8){ //Jika sudah 8 karakter
E=1; dataLCD=0x80; //Pindah kursor ke baris 1
PORT_DATA=dataLCD; kirim_perintah_lcd();
E=0; lcd_ready();
} i=0;
}
void lcd_ready (void){ }
dataLCD=0x80;
void main (void){
while(dataLCD & 0x80){ //unsigned char i;
DDR_DATA=0x00; //Sebagai input DDRD=0xFF;
PORT_DATA=0x00; //Matikan internal pull-up PORTD=0x1C;
RS=0; init_lcd();
RW=1; //Inisialisasi USART
E=1; UCSRA=0x00;
#asm("nop"); //Sinkronisasi pin UCSRB=0x98; //RX complete interrupt enable
dataLCD=PIN_DATA; UCSRC=0x86;
E=0; UBRRH=0x00; //USART baud rate: 9600 (4MHz)
} UBRRL=0x19;
Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 8
i=0; E=0;
#asm("sei"); }
} }
F. Rangkaian 1.C.2
void init_lcd (void){ //Inisialisasi LCD
delay_ms(20);
dataLCD=0x30; //Func set interface 8 bit
kirim_perintah_lcd();
delay_ms(5);
dataLCD=0x30;
kirim_perintah_lcd();
delay_us(150);
dataLCD=0x30;
kirim_perintah_lcd();
delay_us(50);

dataLCD=0x38;
#include <mega8535.h>
kirim_perintah_lcd();
#include <delay.h>
#include <stdio.h> lcd_ready();

dataLCD=0x04;
#define RS PORTD.5
kirim_perintah_lcd(); //Display off
#define RW PORTD.6
#define E PORTD.7 lcd_ready();
#define PORT_DATA PORTA //Sebagai port
biderectional dataLCD=0x01;
kirim_perintah_lcd(); //Display clear
#define DDR_DATA DDRA
#define PIN_DATA PINA lcd_ready();

dataLCD=0x06;
unsigned char dataLCD;
kirim_perintah_lcd();
lcd_ready();
void kirim_perintah_lcd (void){
DDR_DATA=0xFF; //Sebagai output
dataLCD=0x0C;
RS=0;
kirim_perintah_lcd();
RW=0;
lcd_ready();
E=1; //Sinyal chip enable
}
unsigned char i;
PORT_DATA=dataLCD;
//Interrupt Service Routine
E=0;
} interrupt [USART_RXC] oid usart_rx_complete(void){
dataLCD=UDR;
printf("%c",dataLCD);
void tulis_data_ram_lcd (void){
tulis_data_ram_lcd();
DDR_DATA=0xFF;
RS=1; lcd_ready();
RW=0; i++;
E=1; if(i==8){ //Jika sudah 8 karakter
dataLCD=0x80; //Pindah kursor ke baris 1
PORT_DATA=dataLCD;
kirim_perintah_lcd();
E=0;
} lcd_ready();
i=0;
void lcd_ready (void){ }
dataLCD=0x80; }

void main (void){


while(dataLCD & 0x80){
//unsigned char i;
DDR_DATA=0x00; //Sebagai input
PORT_DATA=0x00; //Matikan internal pull-up DDRD=0xFF;
PORTD=0x1C;
RS=0;
init_lcd();
RW=1;
E=1; //Inisialisasi USART
#asm("nop"); //Sinkronisasi pin UCSRA=0x00;
UCSRB=0x98; //RX complete interrupt enable
dataLCD=PIN_DATA;
Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 9
UCSRC=0x86;
UBRRH=0x00; //USART baud rate: 9600 (4MHz)
UBRRL=0x19;
i=0;
#asm("sei");
}
G. BUKU CATATAN PRAKTIKUM

Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 10


Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 11
H. TUGAS PENDAHULUAN

I. PTRETES

Laporan Praktikum Teknik Telekomunikasi 2 – ITERA 12

Anda mungkin juga menyukai