Chapter 7: Microcontroller Interrupts and Timers
d Control version#include "PC_Comm.h"
1<<PINB6)|(1<<PINB7))
2)|(1<<PINE3))second= 0; // IR detector count per second
astspeed = 0; // IR detector count per secondd initializer()the oscillator:
OSCCAL_calibration();SART(1 << 7); // flag for PCINT15-8PORTB for input
nable pullup on for inputtput
(1 << PIND0); // set pin 0 to enable pulluplliS gnalPC_Comm.c ready to communicate.\r");
elf specifically
are talking to the Motor Speed Control
r");
sendString("setxxx to set speed\r");
// Demonstrator.c Motor Spee
#include "Demonstrator.h"
#define PINB_MASK ((1<<PINB4)|(
#define PINE_MASK ((1<<PINE
unsigned char milliseconds = 0;
unsigned int second = 0; // count to 1000 and trigger one
event
unsigned int speed
unsigned int l
voi
{
// Calibrate
// Initialize the U
USARTinit();
// Set for pin change on PINB0
PCMSK0 = (1 << PINB0); //
EIFR =
EIMSK = (1 << 7); // mask for PCINT15-8
DDRB = 0X00; // set
PORTB = 0xFF; // e
// set PORTD for output
//DDRD = 0xFF;
DDRD = (1 << PIND0); // set pin 0 to ou
PORTD =
mi ecInit(127); // 50% duty cycle 1kHz si
// say hello
sendString("\r
// identify yours
sendString("You
demo.\
}