Di bawah ini
adalah tutorial untuk mengirimkan data serial dari mikrokontroler ke komputer
dan menerima data serial dari komputer ke mikrokontroler, menggunakan bahasa C
dengan compiller AVR GCC atau winAVR.
Rangkaian
skematik untuk IC MAX232 sebagai pengkonversi tegangan antara mikrokontroler
dan port serial komputer, sebagai berikut:
Listing
programnya dengan winAVR atau AVRGCC sbb:
a. Mengirimkan data ke komputer
a. Mengirimkan data ke komputer
- #include<util/delay.h>
- #include<stdlib.h>
- #include<avr/io.h>
- #include<avr/pgmspace.h>
- #include<avr/interrupt.h>
- #define F_CPU 8000000UL
- #define USART_BAUDRATE 9600
- #define BAUD_PRESCALE (((F_CPU/(USART_BAUDRATE*16UL)))-1)
- void initserial()
- {
- // Aktifkan transmitter dan receiver
- UCSRB |= (1 << RXEN) | (1 << TXEN);
- // Ukuran karakter sebesar 8 bit
- UCSRC |= (1 << URSEL) | (1 << UCSZ0) | (1 << UCSZ1);
- // Load 8-bit yang lebih rendah dari nilai baud rate ke byte rendah dari UBRR register
- UBRRL = BAUD_PRESCALE;
- // Load 8-bit yang lebih atas dari nilai baud rate ke byte tinggi dari UBRR register:
- UBRRH = (BAUD_PRESCALE >> 8);
- }
- void uart_putc(unsigned char c)
- {
- while(!(UCSRA & (1 << UDRE)));
- UDR = c;
- }
- void uart_puts (char *s)
- {
- while (*s) {
- uart_putc(*s);
- s++;
- }
- }
- int main()
- {
- unsigned char tempserial;
- initserial();
- for(;;)
- {
- if (bit_is_set(UCSRA,RXC))
- {
- uart_puts(“Test Serial\r”);
- _delay_ms(5000);
- uart_puts(“Mengirim data ke komputer”);
- _delay_ms(5000);uart_putc(13);
- uart_putc(10);
- }
- }
- }
b) Menerima
data dari komputer
Program utama int main() diganti sbb:
Program utama int main() diganti sbb:
- int main()
- {
- unsigned char tempserial;
- initserial();
- DDRB=0x00;
- uart_puts("Test Serial Menerima Data\r");
- uart_putc(13);
- uart_putc(10);
- for(;;)
- {
- if (bit_is_set(UCSRA,RXC))
- {
- tempserial=UDR;
- UDR = tempserial;
- //Data yang diterima dikirimkan kembali ke port serial
- }
- }
- }
Untuk menampilkan
data serial secara langsung dari mikrokontroler ke komputer dapat digunakan
Hyperterminal. Caranya dengan pilih Start → All Programs →
Accessories → Communications → Hyperterminal.
Jika Hyperterminal baru pertama kali dibuka, maka akan muncul pengaturan lokasi, diisi bebas.
Setelah itu akan muncul gambar sbb:
Tuliskan
nama Hyperterminal bebas dan pilih gambar telepon merah dan kuning. Kemudian
pilih COM yang terhubung dengan kabel serial, misalnya COM1.
Lakukan pengaturan komunikasi serial dengan baud
rate (bits per second) 9600, data bits 8, parity none,
stop bits 1, flowcontrol none.
Jika
komunikasi serial berhasil maka pada Hyperterminal akan ditampilkan tulisan
yang dikirim dari mikrokontroler ke komputer.
Terkadang terjadi kegagalan
dengan komunikasi serial karena kesalahan pengaturan fuse bit, jika memakai
crystal internal 8MHz maka lakukan pengaturan fuse bit untuk crystal 8MHz, jika
menggunakan crystal external 11,0592MHz maka lakukan pengaturan fuse bit
external 11,0592MHz.
Sumber refrensi : http://aodhio.blogspot.com/2012/05/komunikasi-serial-antara.html
Nice Info,
BalasHapusDi dalam komunikasi serial ada dua macam, asynchronous serial dan synchronous serial. Untuk artikel ini termasuk yang mana?
Terima Kasih
Guntur Adi Putra | gunturhere.blogspot.com
lebih kepada Asynchronous serial, karena komunikasi dimana kedua pihak (pengirim dan penerima) masing-masing menghasilkan clock namun hanya data yang ditransmisikan, tanpa clock. Agar data yang dikirim sama dengan data yang diterima, maka kedua frekuensi clock harus sama dan harus terdapat sinkronisasi. Setelah ada sinkronisasi, pengirim akan mengirimkan datanya sesuai dengan frekuensi clock penerima. Contoh penggunaan asynchronous serial adalah pada Universal Asynchronous Receiver Transmitter (UART) yang digunakan pada serial port (COM) computer. MCS-51 mendukung komunikasi secara asinkron, bahkan 3 dari 4 serial mode yang dimiliki MCS-51 kompatibel dengan UART.
HapusThanks infonya ya mba...
BalasHapusijin share ya..
Sama-sama, Silahkan mas :)
HapusMikrokontroler akan menampilkan karakter ASCII ke dalam 1 (satu) byte port1 mikrokontroler bener ga kaka cantik..
BalasHapusThat's right kaka :D
HapusFungsinya komunikasi serial antar mikrokontroler ini apa ya?
BalasHapusFungsinya lebih menjurus kepada mengirim dan menerima data dari komputer. kurang lebihnya seperti itu..
HapusKaka cantik,,
BalasHapusMicrokontroler ini seperti apa sih ???
Ada jenis-jenis atau type nya ga???
Mikrokontroler adalah sebuah sistem komputer fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti prosesor, memori (sejumlah kecil RAM, memori program, atau keduanya), dan perlengkapan input/output.
HapusDengan kata lain, mikrokontroler adalah suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis data.
Jenis-jenisnya : Keluarga MCS51, AVR, PIC.
Saya coba dulu ya thanks
BalasHapussilhakan dicoba :)
Hapusterimakasih untuk infonya.
BalasHapussaya baru dengar adanya program ini, dan ini menambah ilmu saya.
terimakasih
Semoga semakin bermanfaat ya kaka :)
HapusNice info, pada tutorial diatas telah dijelaskan tentang serial port micro controller, yang masih saya kurang paham kalau pada bahasa C fungsi include itu apakah sama dengan fungsi import pada bahasa java ...?, thanks
BalasHapuswww.blog.alfin.co
apa yang bisa kita lakukan jika mikrocontroller ini sudah terkoneksi ke pc? masih ga mudeng.. :D
BalasHapusyang pertama dilakukan yaitu untuk menampilkan data serial secara langsung dari mikrokontroler ke komputer dapat digunakan Hyperterminal. Caranya dengan pilih Start → All Programs → Accessories → Communications → Hyperterminal. selanjutnya sesuai dengan alur yang sudah dijelaskan diatas.
HapusMba Ririn,..
BalasHapusIni fungsi utamanya sebagai apa ya?
Masih belum jelas saya,.
Apakah sama dengan FTP ?
ada sedikit perbedaan yaa sepertinya :
Hapuskalo Mikrokontroler itu sebuah sistem komputer fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti prosesor, memori (sejumlah kecil RAM, memori program, atau keduanya), dan perlengkapan input/output.
Dan kalo FTP itu suatu protokol yang berfungsi untuk tukar-menukar file dalam suatu network yang menggunakan TCP koneksi bukan UDP.
hai ririn,
BalasHapuscode untuk mengirimkan dan menerima data itu, dijalankan dimana ya?
Data yg dikirim maksimalnya berapa kalau pakai mikrokontroler
BalasHapusApa ada bahasa lain yang di gunakan untuk mengirimkan data serial dari mikrokontroler ke komputet atau sebaliknya selain menggunakan bahasa C?
BalasHapuswahh, bagus infonya mba ririn ahli di jaringan nih kayanya.
BalasHapusinfonya yang berguna nih buat dikantor saya.
riyanhidda.blogspot.com