como crear este codigo

#1
hola amigos del foro
les ecribo para q me puedan dar un poco de luz con esta tarea
he buscado mucha informacion pero hay algo que tengo duda haber la tarea es la siguiente:

Escribir un programa en Lenguaje C (para el compilador VisualC) que, empleando la interfaz para el puerto paralelo de la figura, implemente dos contadores binarios de 5 y 3 bits (D7:D3 y D2:D0). El contador de 5 bits es ascendente y se debe actualizar a razón de 1 cuenta/segundo, mientras que el contador de 3 bits es descendente y se actualiza a razón de 2 cuentas/segundo.


tengo los parametros y el codigo que debo usar para ingresar a controlar los bit de un puerto paralelo pero lo que no puedo es hacer el programa que pide que haga el contador de 5 y 3 bits eso no lo entiendo , alguien podria darme luz por lo menos con unos de los contadores como hacerlo y como incluirlo en el codigo que ya tengo
el programa q quiere es en visual C++ o borlanC , pero ahora les pongo el codigo para

BORLAN C++ y asi me ayudan que le puedo meter a este codigo para que haga lo que pide:
/**********************************************************************
**********************************************************************/
#include <windows.h>
#include <stdio.h>
#include <conio.h>
#include "winio.h"

#define BASE 0x378

int main( void )
{
unsigned char Cont;
unsigned char Aux;
bool bResult;

// Call InitializeWinIo to initialize the WinIo library.
bResult = InitializeWinIo();
if( ! bResult)
{
printf("Error during initialization of WinIo.\n");
return 1;
}

Aux = _inp( BASE + 2 );
Aux &= 0:LOL:F;
_outp( BASE + 2, Aux );

//***********************************

AQUI CREO ES DONDE TENGO Q METER EL CODIGO QUE ME HAGO EL CONTEO ASCENDENTE DE
5BIT Y DESCENDENTE DE 3 BIT


//****************

// When you're done using WinIo, call ShutdownWinIo
ShutdownWinIo();

return 0;
}

ESTOY TRABAJANDO CON el driver WINIO para poder controlar el puerto paralelo
agradeceria su pronta ayuda
 
#2
Hi faber,
si entendi bien lo que quieres es unir los dos contadores en una variable de 8 bits
para enviar por el puerto paralelo. Prueba esto
:)


void main(void)
{
unsigned char c1,c2,r,sw;
c1 = 0;
c2 = 0x07;
sw = 0;
while(c1<0x1f)
{
r = c2;
r = r << 3;
r |= c1;
printf("%i %i %x\n",c1,c2,r);

if(c2)c2--;else c2 = 0x07;
sw++;
if(sw==2)
{
if(c1<0x1f)c1++;
else c1 = 0;
sw = 0;
}
Sleep(500);
}
}
 

Temas similares

Arriba