Input Output programming in AVR microcontroller

Post on 16-Jul-2015

200 views 3 download

Tags:

Transcript of Input Output programming in AVR microcontroller

• Atmega16 have total of 40 pins

32 I/O pins..

PORT “A” = 8 Pins

PORT “B” = 8 Pins

PORT “C” = 8 Pins

PORT “D” = 8 Pins

Port “X”

DDRX PORTX PINX

NOTE:- X is the name of port and it can be A, B, C or D .

• DDRX – For setting the direction i.e. Input or output.

• PORTX – For setting output value of port.

• PINX – For reading data available in port.

NOTE:- X is the name of port and it can be A,

B, C or D .

Click here to visit -ROBO INDIA

DDRX= 0xFF; (O/P-Port)

DDRX= 0x00; (I/P-Port)

or

DDRX = 0b 1 1 1 1 1 1 1 1 ; (O/P-Port)

DDRX = 0b 0 0 0 0 0 0 0 0 ; (I/P-Port)

NOTE:- X is the name of port and it can be A, B, C or D .

Click here to visit -ROBO INDIA

1. PORTX= 0xF0 ;

PORTX = 0b 1 1 1 1 0 0 0 0 ;

2. PORTX= 0xFF ;

PORTX = 0b 1 1 1 1 1 1 1 1;

3. PORTX= 0x00 ;

PORTX = 0b 0 0 0 0 0 0 0 0;

Click here to visit -ROBO INDIA

1.Ifif ( conditions ){ code to be executed }

2.For loopfor(start ; condition ; step){code to be executed}

3.While loopwhile( Condition){ code to be executed }

Click here to visit -ROBO INDIA

bit_is_clear(PINX,0)) //No input

bit_is_set(PINX,0)) //Detecting input

Click here to visit -ROBO INDIA

if (bit_is_set(PINX,0)))

{ code to be executed }

if (bit_is_clear(PINX,0)))

{ code to be executed }

Click here to visit -ROBO INDIA

while(bit_is_set(PINX,0)))

{ code to be executed }

while(bit_is_clear(PINX,0)))

{ code to be executed }

Click here to visit -ROBO INDIA

• #include <avr/io.h>

• #include <util/delay.h>

Click here to visit -ROBO INDIA

In case of queries please write us-

info@roboindia.com

www.roboindia.comClick here to visit -ROBO INDIA