joshuajnoble:
You're definitely right about the number of cycles per instruction, many thanks for reminding me about that! I've got the following code showing me 4 spikes per uS, hence 8Mhz if my math is right?void loop()
{
while(true) {
PORTB |= 0x1; // set pin 1 so that it is at vcc
PORTB &= 0xFE; // clear pin 1 so that it is grounded
}
}
I'd say no...
"PORTB |= 0x1;" is a read of port B followed by an or and a write. That's going to be at least two clock cycles.
This is why my code used PINB - to avoid the read.