code vision untuk USART0 &USART1 ATMEGA 128 “printf”


tulisan ini iseng saja. hhehehehe, diperuntukan bagi penggemar codevision seluruh indonesia. nah jika punya masalah dengan source code untuk mengeluarkan data serial ke USART1 tapi ingin memakai fungsi printf, ini saya punya contohnya.

anda maju saya juga maju, anda kaya saya mah tidak kebagian. sukseslah.

nanti source codenya diketik manual lagi. hehehehehhee, gempor gempor, ini source nya

#include <mega128.h>
#include <delay.h>

#define RXB8 1
#define TXB8 0
#define UPE 2
#define DOR 3
#define FE 4
#define UDRE 5
#define RXC 7

#define FRAMING_ERROR (1<<FE)
#define PARITY_ERROR (1<<UPE)
#define DATA_OVERRUN (1<<DOR)
#define DATA_REGISTER_EMPTY (1<<UDRE)
#define RX_COMPLETE (1<<RXC)

#define _ALTERNATE_PUTCHAR_

#include <stdio.h>

#define USART0 0
#define USART1 1
unsigned char poutput;

void putchar(char c)
{
switch (poutput)
{
case USART0: // the output will be directed to USART0
while ((UCSR0A & DATA_REGISTER_EMPTY)==0);
UDR0=c;
break;

case USART1: // the output will be directed to USART1
while ((UCSR1A & DATA_REGISTER_EMPTY)==0);
UDR1=c;
break;
};
}

// Declare your global variables here

void main(void)
{
// USART0 initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART0 Receiver: On
// USART0 Transmitter: On
// USART0 Mode: Asynchronous
// USART0 Baud Rate: 9600
UCSR0A=0x00;
UCSR0B=0x18;
UCSR0C=0x06;
UBRR0H=0x00;
UBRR0L=0x47;

// USART1 initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART1 Receiver: On
// USART1 Transmitter: On
// USART1 Mode: Asynchronous
// USART1 Baud Rate: 9600
UCSR1A=0x00;
UCSR1B=0x18;
UCSR1C=0x06;
UBRR1H=0x00;
UBRR1L=0x47;

ACSR=0x80;
SFIOR=0x00;

while (1)
{
poutput=USART0;
printf(“kirim usart 0, dhani heheh tea\r\n”);
delay_ms(1000);
poutput=USART1;
printf(“kirim usart 1, dhani kasep tea\r\n”);
delay_ms(1000);
poutput=USART0;
printf(“key electronic- open source sejati\r\n”);
delay_ms(1000);
poutput=USART1;
printf(“support source code mah bayar atuh\r\n”);
delay_ms(1000);
printf(“linux juga kalo support bayar\r\n”);
delay_ms(1000);
};
}

simulasi proteusnya

 

key electronic, solution microcontroler. ayo teman teman NEKATZ INSTRUMENT, SAIZOKU COMUNITY, TASIK INSTRUMENT, kita buat PT. kerjasama kita sudah terbukti waktu pengerjaan robot. kalian ke JAKARTA lah. aku tunggu.

7 thoughts on “code vision untuk USART0 &USART1 ATMEGA 128 “printf””

  1. mas, saya sangat butuuh ini barang. saya dari probolinggo jawa-timur.
    prosedur pemesanannya bagaimana?
    harga + ongkos kirimnya berapa?
    saya sudah sms, tapi belum dibales.

  2. bang….
    need help….

    mega8 kirim data adc dan dbaca usart0(data adc) d outputkan lwt usart1 (serial) d tampilkan d komputer kok datanya rusak yah..?

    klo mega8 langsung serial k komp datanya yahut…. tapi butuhnya ya dikirim k mega128 bang…

  3. mas mau nanya nih, pengujian yg mas lakukan baudratenya sama yah USART0 dan USART1 9600 bps, bagaimana klo USART1 dirubah jadi 38400 bps, apa banyaknya data yg tampil sama atau tidak dalam waktu bersamaan? dari pengujian yg saya lakukan dengan baudrate USART0 9600 dan USART1 38400 jumlah data USART0 dan USART1 sama, seharusnya yg baudrate 38400 bps jumlah datanya lebih banyak dalam waktu sampel yg sama karena kecepatannya beda.. mohon pencerahannya.. trima kasih.. ^^

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s