Hola a todos,
Estoy intentando leer unos interruptores conectados a un CD4021, utilizando un dsPIC30f. Utilizo el compilador Mplab C30.
Como puedo leer 8 interruptores conectados a un CD4021 desde un PIC? Tengo conectado el PIC de la siguiente manera:
Data al pin RB1
Latch al pin RB2
Clock al pin RB3
Estoy usando este codigo pero no me funciona. Podria alguien ayudarme por favor?
int main(void)
{
TRISB = 0b00000010;
port_present = read_cd4021();
}
unsigned char read_cd4021()
{
unsigned char a,i,inport,dat;
clockPin = 0;
latchPin = 1;
delay_us(1);
latchPin = 0;
dat=0;
for (i=0; i<8; i++)
{
clockPin = 1; delay_us(1);
inport = dataPin;
dat <<= 1;
dat |= inport;
clockPin = 0; delay_us(1);
}
latchPin = 1;
return(dat);
}
Gracias.