21.08.2013 Views

Embedded Systems Design with the Atmel AVR Microcontroller Part II

Embedded Systems Design with the Atmel AVR Microcontroller Part II

Embedded Systems Design with the Atmel AVR Microcontroller Part II

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

}<br />

}<br />

case 0x02: //CCW<br />

while((PINB & 0x03)==0x02)<br />

{<br />

PORTD = 0x10;<br />

delay(15);<br />

PORTD = 0x00;<br />

delay(1);<br />

PORTD = 0x20;<br />

delay(15);<br />

PORTD = 0x00;<br />

delay(1);<br />

PORTD = 0x40;<br />

delay(15);<br />

PORTD = 0x00;<br />

delay(1);<br />

PORTD = 0x80;<br />

delay(15);<br />

PORTD = 0x00;<br />

delay(1);<br />

break;<br />

7.6. DC MOTOR SPEED AND DIRECTION CONTROL 227<br />

default:; //all o<strong>the</strong>r cases<br />

} //end switch(new_PORTB)<br />

} //end if new_PORTB<br />

old_PORTB=new_PORTB; //update PORTB<br />

//*************************************************************************<br />

//int_timer0_ovf_interrupt(): The Timer0 overflow interrupt is being<br />

//employed as a time base for a master timer for this project. The internal<br />

//oscillator of 8 MHz is divided internally by 8 to provide a 1 MHz time base<br />

//and is divided by 256. The 8-bit Timer0<br />

register (TCNT0) overflows every<br />

//256 counts or every 65.5 ms.<br />

//*************************************************************************

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!