Kali ini, saya akan bahas dasar bahasa pemrograman C dengan topik cara memindahkan isi port ke port lain. Cara ini sangat mudah yaitu sama seperti memberikan nilai untuk sebuah variabel, namun kita menggunakan PORT sebagai variabelnya, dan PORT lainnya sebagai nilai yang akan berubah - ubah dan dikirim ke PORT pertama.

Langsung saja kita lihat scriptnya

/*
 * Memindahkan_isi_port.cpp
 *
 * Created: 13/01/2016 10:37:30
 *  Author: Diaz
 */


#include <avr/io.h>

int main(void)
{
    DDRA=0xff;            // Menjadikan PORTA sebagai output
   
    DDRB=0x00;            // Menjadikan PORTB sebagai input
    PORTB=0xff;            // Menjadikan PORTB sebagai input dengan internal pull up aktif

    while(1)
    {
        PORTA=PINB;
    }
}

Pada script diatas dapat kita lihat PORTA sebagai variabelnya bernilai isi dari PINB. Sebagai pembuktiannya pada file yang saya buat, saya berikan 8 switch untuk tiap register dari PORTB. dan setiap PIN yang kita tekan tombolnya akan mengubah nyala matinya LED pada PORTA

Sama seperti contoh sebelumnya, setiap pembuktian perintah menggunakan 1 PORT (8bit) sebagai pembuktiannya, dan script tersebut saya buat menggunakan Atmel Studio 6 + AVRGCC dan Proteus
Saya sarankan untuk menulis ulang semua script tersebut secara manual, agar kalian lebih cepat menghafal dan memahami script tersebut. Namun jika mendapat kesulitan, saya sediakan file script beserta file proteusnya yang dapat didownload di sini

Sayapun disini masih belajar sehingga belum tentu benar mengenai semua yang  saya jabarkan diatas, jika ada yang merasa janggal atau merasa ada kesalahan dalam penjabaran saya, bisa kita diskusikan dikomentar.
Good Luck!

Related Post :