Timer0 på en Mega16 gör ingenting

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
MicaelKarlsson
Inlägg: 4669
Blev medlem: 18 juni 2004, 09:16:07
Ort: Aneby
Kontakt:

Inlägg av MicaelKarlsson »

Utan while-loop ser det ut så här:

Kod: Markera allt

int main ( void )
	{
  de:	89 b7       	in	r24, 0x39	; 57
  e0:	81 64       	ori	r24, 0x41	; 65
  e2:	89 bf       	out	0x39, r24	; 57
	// Setup timer0
	TIMSK |= (1 << TOIE0)|(1 << TOIE2);  // Enable timer0 overflow interupt.
	TCCR0 |= (1 << CS00); // CK/1 |(1 << CS02)
  e4:	83 b7       	in	r24, 0x33	; 51
  e6:	81 60       	ori	r24, 0x01	; 1
  e8:	83 bf       	out	0x33, r24	; 51
	TCCR2 |= (1 << CS22)|(1 << COM20); // CK/64 (1 << CS21)|
  ea:	85 b5       	in	r24, 0x25	; 37
  ec:	84 61       	ori	r24, 0x14	; 20
  ee:	85 bd       	out	0x25, r24	; 37

	TCNT0= 0;  // set timer counter to 0;
  f0:	12 be       	out	0x32, r1	; 50
	TCNT2= 0;  // set timer counter to 0;
  f2:	14 bc       	out	0x24, r1	; 36
  sei();  //Enable interupts.
  f4:	78 94       	sei

  DDRB = 0xFF;    // Configure PortB as output
  f6:	8f ef       	ldi	r24, 0xFF	; 255
  f8:	87 bb       	out	0x17, r24	; 23

  PORTB = 0xFF;
  fa:	88 bb       	out	0x18, r24	; 24

}
  fc:	80 e0       	ldi	r24, 0x00	; 0
  fe:	90 e0       	ldi	r25, 0x00	; 0
 100:	08 95       	ret
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Inlägg av Micke_s »

While loopen finns alltså med och tas ej bort vid optimering.
Skriv svar