USART Codevision [2]: Kirim & terima data usart

USART Codevision 2: Untuk melakukan komunikasi serial dengan komputer, AVR atmega memiliki transmiter dan receiver yang berada pada PortD.0 (Rx) dan PortD.1 (Tx). Proses pengiriman data secara serial sebanyak 8 bit diikuti stop bit.

Komunikasi serial juga dapat digunakan untuk berkomunikasi antar mikrokontroller secara master – slave. Untuk proses kirim dan terima data uart dengan komputer, pada simulator proteus kita dapat menggunakan modul virtual terminal yang terdapat pada virtual instrument modul, atau bisa menggunakan komponen compim jika kita menggunakan terminal third party.

Tutorial Membuat cara Kirim dan Terima Data USART Codevision

Yang penting dalam komunikasi serial adalah setting baudrate, clock dan metode pengiriman datanya. Pada postingan kali ini di codevision menggunakan baudrate 9600 double speed, data 8 bit, stop 1 dan no parity. Setting virtual terminal 9600 sama dengan setting mikro, pemilihan Rx/Tx polarity normal, sementara setting clock mikro pada ISIS proteus yang digunakan adalah 8Mhz internal/ sesuai dengan setting clock pada Codevision AVR.

Pada tahap inisialisasi, mikro mengirimkan tulisan kirim USART codevision ke virtual terminal dan LCD 16×2, selanjutnya mikrokontroler akan menunggu adanya input dari PC untuk ditampilkan kedalam display LCD dan dikirimkan kembali ke virtual terminal.

/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.0 Advanced
Date    : 22/03/2014
Author  :priyo harjiyono
Company :https://anotherorion.com 
Comments: mengambil data dari komputer untuk ditampilkan 
          di LCD dan dikirimkan kembali ke komputer
Chip type               : ATmega16
Program type            : Application
AVR Core Clock frequency: 8,000000 MHz
*****************************************************/
#include <mega16.h>
#include <alcd.h>
#include <stdio.h>
char input, n;
void main(void)
{
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 9600 (Double Speed Mode)
UCSRA=0x02;
UCSRB=0x18;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x67;
lcd_init(16);
 printf("kirim usart \r");
lcd_gotoxy(0,0);
lcd_putsf("kirim usart");
while (1)
      {
        for(n=0;n<16;n++)
        {          
        input= getchar();    
// jika input = 8, berarti tombol backspace ditekan
            if(input==8)    
            {
            n=n-1;  
            }      
         lcd_gotoxy(n,1);
         lcd_putchar(input);    
         putchar(input);
            if(input==8)
            {
            n=n-1;  
            }}}}

Variable n digunakan agar mengadopsi penekanan tombol backspace untuk menghapus karakter terakhir dan menghasilkan tampilan LCD maupun virtual terminal yang sama. Panjang karakter yang disajikan sebanyak 16 karakter pada baris kedua di LCD, sementara untuk virtual terminal tidak dibatasi.

usart codevision rx tx

Untuk rangkaian skematiknya dapat dilihat pada gambar dan file source berikut simulasi ISIS proteus ada di bagian bawah postingan ini, selamat mencoba

kirim-terima usart codevision anotherorion

2 pemikiran pada “USART Codevision [2]: Kirim & terima data usart”

  1. Judul Harga Beli Sekarang
    Dasar Mikrokontroler Atmega8535 dengan CAVR BUKU ORIGINAL Rp64.000  
    Buku Belajar Sendiri Mikrokontroler AVR Seri ATMega8535 Simulasi, Hardware, Dan Aplikasi Rp70.000  
    Buku 20 Aplikasi Mikrokontroler ATMega 8535 & ATMega 16 Menggunakan Bascom-AVR+CD Rp70.500
    BUKU PRAKTIKUM TEKNOLOGI MICROCONTROLLER ATMEGA- 16 UNTUK SMK/ MAK Rp40.000  
    Buku Dasar Mikrokontroler Atmega8535 dengan CAVR Rp64.000
    BUKU MIKROKONTROLER AVR ATMEGA8535 + CD Rp80.750  
    buku pemrograman mikrokontrorler avr atmega 16 + cd Rp50.000  
  2. mas, caranya untu konversi data char sebagai inputan bagaimana mas?

    misalkan sy menggunakan mikrokontrler 1 sebagai transmiter dan mikro 2 sbgai receiver,

    Balas

Tinggalkan komentar

(Note, links and most HTML attributes are not allowed in comments)

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.

Ingin produk/website Anda kami ulas? Silahkan klik tombol dibawah ini