IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

set reset d'une sortie du port //


Sujet :

C

  1. #1
    Futur Membre du Club
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 4
    Par défaut set reset d'une sortie du port //
    bonjour,

    étant plus que novice en C je m'en remets à vous !

    je voudrais créer un éxecutable qui soit capable quand je clic une foi dessus d'activer une sortie de mon port // et quand je re-clic sur ce même éxecutable que sa me désactive cette sortie.

    j'ai essayé avec un if else, mais sans résultat ou alors j'ai mal programmé !

    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
     
    #include <utility.h>
    #include <ansi_c.h>
     
    // adresse de lpt1
    #define donnees 0x378
     
     
    main()
    {
    	if (donnees==0x00) 
    		{	
    		outp(donnees,0x02);
    		}
    	else {
    		outp(donnees,0x02);
    		  }
    }
    un petit coup de mais serai appréciable merci bien.

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 448
    Par défaut
    Hello,

    Oula, oui, il y a beaucoup de choses à étudier avant que cela puisse fonctionner, malheureusement.

    — Il faut que tu nous dises avec quel système d'exploitation tu travailles, mais il y a de fortes chances pour que tu ne puisses plus accéder directement au port parallèle de cette façon sans obtenir les privilèges adéquats au préalable ;
    — Telle que tu l'as écrite, « donnees » sera toujours égale à 0x378. Donc, ton if sera toujours vrai et, en tout état de cause, ne sera jamais corrélée avec le fait de lancer plusieurs fois ou non ton programme ;
    — Dans les deux cas, tu envoies la même valeur au port parallèle : 0x02. Donc, même si ça fonctionnait, tu ne verrais jamais la différence.

  3. #3
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 026
    Par défaut
    Signifie que ton compilateur va remplacer donnees par 0x378 à chaque fois qu'il le rencontre donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    main()
    {
    	if (donnees==0x00) 
    		{	
    		outp(donnees,0x02);
    		}
    	else {
    		outp(donnees,0x02);
    		  }
    }
    Pour moi la condition est toujours fausse.

    Ensuite ton main doit retourner soit un int :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    int main(void)
    {
     
            return 0;
    }
    soit rien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    void main(void)
    {
     
    }

    EDIT : grillé par Obsidian^^

  4. #4
    Futur Membre du Club
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 4
    Par défaut
    merci des reps

    je suis sur windows xp sp2, mais je joue déjà un peu avec le port //.
    j'ai fabriqué une carte avec des relais pour commander des appareils.

    sinon avez vous une solution autre que le if else ?

    je suis preneur !
    merci

  5. #5
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 026
    Par défaut
    Il n'existe pas une fonction pour vérifier si le port parallèle est activé?

    Sinon, il faut créer un fichier dès que tu actives le port parallèle et le supprimer dès que tu le désactive.
    Ainsi la présence de ce fichier indiquera que le port est activé, et son absence indiquera qu'il ne l'est pas.

  6. #6
    Futur Membre du Club
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 4
    Par défaut
    je ne sais pas du tout !

  7. #7
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 492
    Billets dans le blog
    1
    Par défaut
    Il y a encore des gens qui ont un port parallèle sur un ordinateur ?!

    Il est vrai que depuis bien des années, je n'ai plus de PC fixe (soient ils sont portables, soit j'ai un iMac) et j'ai déjà banni le port série de mes applications (à mon grand dam, je voudrais bien interfacer mon PC avec des µC). Mais alors le port parallèle !

    Au passage, quelqu'un sait s'il est possible d'avoir une émulation de port parallèle avec de l'USB, à la manière des adaptateurs USB / série ?

  8. #8
    Membre éprouvé

    Homme Profil pro
    Developpeur
    Inscrit en
    Mars 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : Mars 2011
    Messages : 115
    Par défaut
    Au passage, quelqu'un sait s'il est possible d'avoir une émulation de port parallèle avec de l'USB, à la manière des adaptateurs USB / série ?
    Émulation pas vraiment, mais il y a le logiciel de Conception Proteus permettant de simuler un adapteur USB--> // en utilisant des circuits intégrés mais tu pourra le simuler en créant ton propre driver par exemple en testant le fonctionnement d'un port //.

    @perrosante : comme a dit Obsidian , y a d'abord quelque détails à résoudre avant de programmer le port parallèle (privilège, configuration de registres...). Vaut mieux utiliser un lib comme WinIo si y'es sur Windows.

  9. #9
    Futur Membre du Club
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 4
    Par défaut
    bon je vais regarder du côté de cette lib.

    merci à vous

  10. #10
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 492
    Billets dans le blog
    1
    Par défaut
    J'ai écrit "émulation" mais en fait je parlais plutôt d'un adaptateur

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment afficher un Set(COLLECTION) DANS UNE jTABLE
    Par taf dans le forum Composants
    Réponses: 3
    Dernier message: 05/04/2006, 11h53
  2. Byte de sortie sur port parallele non maitrisé
    Par BECHE dans le forum Web & réseau
    Réponses: 15
    Dernier message: 10/03/2006, 23h06
  3. reset d'une partie de formulaire
    Par spilliaert dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 28/01/2006, 11h45
  4. [MySQL] reset d'une ressource de requete
    Par Vermin dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 19/01/2006, 22h37
  5. [String] Encodage de caractères pour une sortie HTML
    Par elitost dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 10/11/2004, 08h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo