Salut,
Infos..:
Mon projet consiste à envoyé sur le port parallèle les secondes systèmes sur un circuit électronique constitué de 2 décodeur BCD et de deux 7 segments.
Sur les 8bits qu'envoie le port //, les 4 premiers sont utilisé pour les unités de seconde et les 4 restantes pour les dizaines de seconde.

Plateforme (WinXP et DEV C++)
Pour le problème de droits sur le port parallèle (WinXP) j'utilise les "DriverLINX PortI/O"...je sais pas si sa servira.....

Problème...:
Mon problème est que je suis un gros novice dans la programmation C++ et dans d'importe quel autre langage d'ailleurs; c'est pour cela que je vous sollicité afin de me permettre de finalisé ce programme qui ne veux pas ce compilé avec "dev C++", à cause de la commande outp qui ne reconnait pas (j'ai testé sans succès "inpout32.dll" et autre..même en lisant le readme)
Alor si quelqu'un pouvait me corrigé le programme et me donner un Tuto, howto,FaitSaFaitSa,... pour que je puisse compiler moi même et comprendre, sa serait cOoL
Si les commentaires son faux faite le moi savoir..

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
______________________________________________________________________________
 
 
//#include <cstdlib>        //permet d'utilisé des commandes système
#include <stdlib.h>
#include <iostream>
#include <string.h>
//#include <time.h>
#include <sys/time.h>             /* Pour la recup du temps*/
#include <stdio.h>                /* printf et autres */
#include <conio.h>                /* fonction outp */
#include <windows.h>
//#include <pt_ioctl.c>
 
#define DATA 0x378                /* Adresse du bus de donnees */
#define CONTROL 0x37A             /* L'adresse du registre de contrôle */
//#define _DEBUG_
 
int RecupererSecondes();        // DEBUT : prototypes des fonctions utilisable pour la recherche de l'heure //
 
int main()
{
    while(1)                                 //Debut de la boucle//
    {
    int i_secondes,i_us,i_ds;                                        // variable de récup des secondes en nombre entier via la fonction spécifique//
    char c_out;                                                     // spécifie que la variable c_out est une chaine de carractere//
    i_secondes = RecupererSecondes();            // récupération de la valeur entiere des secondes grace à la fonction spécifique//
    i_ds = i_secondes/10;                                //division par dix pour recupéré uniquement les dixaine de seconde//
    i_us = i_secondes%10;                                //%10 récupère les unité de seconde que la division a mis de coté//
    c_out = (char)i_us + (char)i_ds*16;          //crée la variable c_out avec une multiplication par 16 pour le decalage de 4bits//
#ifdef _DEBUG_
    printf("voici les secondes : %d soit %d %d\n ou : %d\n", i_secondes,i_ds,i_us,c_out);        // affichage //
#endif                 //_DEBUG_
 
      //_outp(CONTROL,0x00);                         /* On configure le bus de donnees en sortie */
      //_outp(DATA,c_out);                          /* Ecriture de la valeur dans le registre de donnees */
 
    Sleep(1000);                              //crée une pause de 1000ms soit 1s//
    }                                                     //fin de la boucle//
    system("PAUSE");                          //crée une pause//
    return EXIT_SUCCESS;                      //Fin du programme//
}
 
int RecupererSecondes()
  {
  time_t timer1;
  time(&timer1);
  int secondes;
  struct tm *newTime1;
  newTime1 = localtime(&timer1);
  secondes = newTime1->tm_sec;        // Les secondes sont dans "secondes"
  return secondes;
  }