Probé el siguiente código para un problema simple de parpadeo del led en ATMega32.
INCLUDE "M32DEF.INC"
SBI DDRC,5
LDI R16,0xFF
OUT PORTC,R16
AGAIN:LDI R19,255
LOOP1:LDI R18,255
LOOP2:LDI R20,5
LOOP3:NOP
NOP
NOP
NOP
NOP
DEC R20
BRNE LOOP3
DEC R18
BRNE LOOP2
DEC R19
BRNE LOOP1
COM R16
OUT PORTC,R16
RJMP AGAIN
De acuerdo con el código, la salida se establece en PortC-5. La hoja de datos dice que funciona en el pin 27. La simulación en Proteus funciona bien. Sin embargo, después de grabar el código en el chip, la salida real viene en el pin 28.
El chip que estoy usando es un Atmel ATMEGA32A PU 1527. Algunas de las otras personas que lo intentaron también tenían el mismo pin 29. ¿Por qué está sucediendo? Soy nuevo en este campo, así que ayúdame aquí.