Hola, ya se que suena muy raro el asunto, pero paso a detallar lo que sucede.
Antes que nada, estuve un buen rato buscando a ver si a alguien le pasó lo mismo, pero no encontré nada...
La idea es hacer una especie de "sequencer" activando las salidas de un puerto alternadamente (en realidad todas están en 1 y se van poniendo en cero secuencialmente)
El problema es que el bit 5 del puerto B no hace nada... probé el puerto C, y fue peor, porque no funcionaban los bits 2, 3, 4 y 5. El código es:
#include<p18f452.h>
#include<delays.h>
#pragma config WDT = OFF
#pragma config OSCS = ON
#pragma config OSC = XT
void main(void)
{
unsigned char j=1;
TRISB=0;
for(;
{
PORTB=j;
Delay10KTCYx(40);
j=j<<1;
if(j==0)j=1;
}
}
Muchas gracias por su ayuda.