Anda di halaman 1dari 5

PRAKTIKUM

ANTARMUKA
MIKROKONTROLER
DAN IOT

PERCOBAAN 8

KOMUNIKASI

SERIAL ASINKRON

Oleh : Sabar Pramono

Program Studi Teknik Elektronika


Jurusan Teknik Elektro
Politeknik Negeri Bandung
2023
MODUL 8 USART

KOMUNIKASI SERIAL ASINKRON

 Tujuan

Sesudah praktikum diharapkan mahasiswa mampu:


 Membuat program dalam Bahasa C untuk komunikasi serial asinkron.
 Memahami dan dapat menggunakan Peripheral USART
 Memahami dan merangkai komunikasi serial asinkron
 Membuat program komunikasi serial asinkron
5. Membuat file header komunikasi serial asinkron
 Petunjuk keselamatan kerja

 Periksa seluruh koneksi sebelum power dinyalakan atau dihubungkan dengan


komputer

III. Landasan Teori

IV. Alat dan Komponen Yang digunakan

1. Komputer PC/ Laptop


2. Compiler Codevision
3. Simulator Simulide atau Proteus

ANTARMUKA MIKROKONTROLER DAN IOT

2
MODUL 8 USART

V. Langkah – langkah percobaan

1) Buat Project baru dibawah group project bernama lcd dengan sub directory bernama lcd dibawah group
project directorydan berinama, misal : usart.
2) Jalankan Programmers Notepad. Pilih folder yang tadi dibuat : usart..beri namafile
misal : usart.,
3) Edit main program dibawah ini

a. #include <avr/io.h>
b. #include <util/delay.h>
c. #include "asinkron.h"
d. int main(void)
e. {
i. char x='0';
ii. uart_init(9600,12000000);
iii. while (x<='z')
iv. {
v. put_char(x++);
vi. _delay_ms(1000);
vii. if((x=='Z'+1) || (x=='_'+2)||(x=='9'+1) || (x=='@'+1))
viii. {
1. put_char('\r');
2. put_char('\n');
ix. }
x. }
xi. return 0;
xii. }

4) Jalankan simulide, tambahkan chip atmega 328p seperti gambar dibawah

ANTARMUKA MIKROKONTROLER DAN

3
MODUL 8 USART

5) Klik kanan pada chip atmega lalu tambahkan Serial monitor


6) Click kanan IC ATmega328, load firmware, pilih file .hex dari project uart yang telah di-compile. Jika
ada perubahan di program setelah dicompile ulang, kemudian di load firmware atau reload.
7) Amati outputnya, modifikasi program untuk menampilkan tanggal lahir anda.

8) Buat project ke dua dengan program berikut

a.#include <avr/io.h>
b.#include <stdio.h>
c. #include <util/delay.h>
d.#include <avr/interrupt.h>

e.#include "asinkron.h"
f. char buff[200];
g. struct date{
i. int day;
ii. int month;
iii. int year;};
h.int main(void)
i. {
j. struct date today={27,2,2023};
i. uart_init(9600,11059200);
ii. sprintf(buff,"Date to day is: %d-%d-%d\r\n",today.day,today.month,today.year);
iii. transmit(buff);
iv. //printf("Date to day is: %d-%d-%d\r\n",today.day,today.month,today.year);

v. while (1);
vi. return 0;
vii. }

9) Tambahkan file header berikut pada project

1. #ifndef asinkron_H_
2. #define asinkron_H_
3. void uart_init(long int baud,long int fclock);
4. void put_char(char t);
5. void transmit(char *st);
6. void put_char(char t)
7. {
8. while(!(UCSR0A&0x20));
9. UDR0=t;
10. }
11. void uart_init(long int baud,long int fclock)

ANTARMUKA MIKROKONTROLER DAN

4
MODUL 8 USART

13. UBRR0L=(fclock/(16*baud)-1);
14. UBRR0H=((fclock/(16*baud)-1)>>8);
15. UCSR0B=0x98;
16. UCSR0C=0x86;
17. }
18. void transmit(char *st)
19. {
20. while(*st){
a. while(!(UCSR0A&0x20));
b. UDR0=*st;
c. *st++;
21. }}
22. #endif
23.

10) Ulangi Langkah 6) dan 7)


11) Modifikasi program dengan kreasi anda sendiri

VI. Hasil Pengamatan

1) Tuliskan hasil pengamatan dari percobaan 1 s/d 11


2) Program dan hasil pengamatan
a) Program
b) Output
3) Tuliskan hasil pengamatan
4) Program dan hasil pengamatan
a. Program
b. Output
5) Tuliskan hasil pengamatan
6) Program dan hasil pengamatan
a. Program
b. Output
7) Program dan hasil pengamatan
a. Program
b. Output

VII. Kesimpulan
Tulis kesimpulan untuk percobaan 8.

ANTARMUKA MIKROKONTROLER DAN

Anda mungkin juga menyukai