ArmandoCircuitos
Inicio
Electronica
Programacion
Diagrama
Codigo
unsigned short dato, i; //declaracion de variables void main() { TRISD = 0xFC; //Asigna 2 bits de salida TRISB = 0; //asigna al puerto B como salida PORTD = 0x01; //inicializa el valor del puerto D a 1 dato = 0; //inicializa el valor de dato a 0 while(1) { //bucle infinito PORTD.F0 = 0; //Carga los datos del 74165 PORTD.F0 = 1; //pone en alto el bit de load if (PORTD.F2 == 1) //pregunta si el bit 3 esta en alto dato = 1 | (dato << 1); else dato = 0 | (dato << 1); for(i = 1; i < 8; i++){ //ciclo para leer los 7 bits restantes PORTD.F1 = 1; //pone en alto el bit de clock PORTD.F1 = 0; //pone en bajo el bit de clock if (PORTD.F2 == 1) //pregunta si el bit 3 esta en alto dato = 1 | (dato << 1); else dato = 0 | (dato << 1); } PORTB = dato; //imprime por el puerto B el avalor de dato Delay_ms(1); //pausa de 1 milisegundo dato = 0; //reinicia el vaor de la variable dato } }
Descarga del archivo
Descargar archivo