Algoritmo 74HC164 Expansor I/O con MikroC

#1
Hola a todos

Tengo la siguiente duda:

Con el compilador C de CCS estoy utilizando una librería para un expansor de salidas utilizando un 74HC164:

Código:
// Librería de control para el expansor de 8 salidas con 74HC164.
// Programador: Moyano Jonathan
// Versión: 1.0
// Fecha: 21/03/09

// Funciones:
// escribe_registro(); Muestra un valor de 0 a 255 en el puerto.

// Definiciones de los puertos utilizados en el PIC.

// Pines intercambiables según necesidades del usuario.

// Configuración de pines para PICUSB28.
#define relog PIN_B4
#define datos PIN_B5
#define reset PIN_B3

void output_74HC164(int valor); // Definimos la función.

void output_74HC164(int valor) {

int contador; // Contador para escribir los datos al registro de desplazamiento.

  output_low(relog);
  output_high(reset);
  output_low(datos);

  for(contador=0;contador!=8;contador++) {  
  output_bit(datos,bit_test(valor,contador));
   output_high(relog);
   delay_cycles(1);
   output_low(relog);
  }
output_low(relog);
delay_ms(1);
}
Pero dicho código no se como adaptarlo a MikroC debido a que no conozco muy bien las funciones de control de bits y registros en este compilador.

Espero que puedan darme una mano :eek:

Un saludo !
 
#3
No solo que estoy migrando algunas librerías que he estado usando con mi entrenadora al compilador de MikroC debido a que este último se adapta un poco más a las necesidades mías.
Igual voy a seguir usando C de CCS pero con mikroC tenés muchas librerías interesantes como ser FAT16,ETHERNET,MP3,GSM,I/O,SPI,GLD_TOUCH y otras más que hacen que me esté migrando a ese soft.

Además de que casi todas las funciones son transparentes al usuario hay mucha información en la páguina del fabricante.
 
#5
El usb lo estoy haciendo de a poco ya va bastante encaminado, el único drama es que tardo por el tema de la traducción de las partes más importantes de las librerías utilizadas.
Cuando ya tenga las traducciones de las librerías que me faltan el proceso va a ir más rápido pero como dije antes el inglés no es lo mio.

Otra cosa me acabo de dar cuenta que el único protocolo USB que usa Mikrobasic es HID pero por ahora no voy a usar USB con ese compilador así que no hay drama.
 
#6
Ya resolví mi problema con la librería del 74HC164 aunque no se aún como pasar el código para mikroC de la siguiente librería:

Código:
///////////////////////////////////////////////////////////////////////////
////                                                                   ////
////    Librería de control del expansor de entradas 74HC165.          ////
////                                                                   ////
////    leer_entradas(ei); Lee entradas del integrado.                 ////
////                                                                   ////
///////////////////////////////////////////////////////////////////////////

// Definimos los pines utilizados en la placa PICUSB28.
#define ENA_SER   PIN_A3
#define CKL_SER   PIN_A4
#define DAT_SER   PIN_A5

// Función que lee las entradas.

void lee_entradas(BYTE *ei) {
  BYTE i;

  output_high(CKL_SER);
  output_low(ENA_SER);      // Guarda el estado de las entradas.
  output_high(ENA_SER);

  for(i=1;i<=8;++i) {  // Genera clock para hacer el corrimiento de bits de la estructura.
    shift_left(ei,1,input(DAT_SER));
    output_low(CKL_SER);
    output_high(CKL_SER);
  }
  output_low(ENA_SER);
}
 

Temas similares

Arriba