Jumat, 27 Mei 2011

BELAJAR C LANGUAGE dengan CODEVISION AVR jilid 2

ok berikutnya kita belajar tentang input output pada C language


Output:
PORTX = data;
Yaitu untuk mengirim data secara byte ke PortX (X= A,B,C,D). Perintah ini sama dengan out dalam bahasa ATmega8535.
Input:
data_in = PINX;
yaitu mengambil data byte dari PINX (X= A,B,C,D) yang kemudian disimpan ke variable data_in. Perintah ini sama dengan in dalam bahasa assembly Atmega8535.
Sebelum memulai pemrograman dasar I/O dengan bahasa C perlu diketahui bahwa microcontroller Atmega8535 perlu disetting DDR dan PORT agar bias digunakan sebagaimana mestinya.

DDR bit = 1
DDR bit = 0
PORT bit = 1
Output; High
Input; R pull-up
PORT bit = 0
Output; Low
Input; Floating
Tabel 1. Konfigurasai Pengaturan Port I/O
Contoh:
….
DDRA=0x0F;
PORTA=0xCC;
….
Dari DDR terlihat bahwa port A0-3 sebagai ouput dan port A4-7 sebagai input. Sedangkan dari PORT terlihat bahwa PA0-1 = Low, PA2-3 = High, PA4-5 tanpa Rpull-up (floating) dan PA6-7 dengan Rpull-up.
 Kontrol PORT I/O per bit

Perintah input dan output pada mikro juga bisa dilakukan per bit dengan cara:

Output
PORTX.bitn = data;
Yaitu untuk mengirimkan data bit (0 atau 1) ke PortX (X= A,B,C,D) bit ke-n. Perintah ini setara dengan sbi  dalam bahasa assembly.

Contoh:
….
PORTB.3 = 1;
….
Artinya adalah bit 3 PORTB di beri nilai 1.


Input
Data_in = PINX.bitn;   
Yaitu mengambil data bit dari PINX (X=A,B,C,D) bit ke n yang kemudian disimpan ke variable data_in. Perintah ini setara dengan cbi dalam bahasa assembly.

Contoh:
            ….
            Data_in = PINB.3;
            ….
Artinya adalah mikro mengambil data bit pada PORTB bit ke-3. NIlai dari perintah ini hanya 0 atau 1.

Tidak ada komentar:

Posting Komentar