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

Threads & Processus C++ Discussion :

Accès au PWM d'un ventilo


Sujet :

Threads & Processus C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 39
    Par défaut Accès au PWM d'un ventilo
    Hello tout le monde!

    Dans le cadre d'un projet, j'aimerais contrôler l'intensité du backlight de mon écran (un peu comme avec les touches FN + flèches sur un notebook). J'aimerais donc utiliser une des lignes de ventilo de ma carte mère pour piloter le backlight, malheureusement, je ne sais pas comment y accéder. Le logiciel SpeedFan y arrive, savez-vous comment il procède (accès base de registre, classe windows spéciale ou autre)?

    Je programme en C++ si jamais, mais je cherche surtout un point de départ, car je ne sais pas du tout dans quelle direction m'orienter, toute suggestion est donc la bienvenue...


    Merci d'avance!

    Frédéric.

    EDIT: après quelques recherches, je devrais utiliser l'ACPI et accéder à la carte mère à l'aide du SMBus mais je n'ai pas encore trouvé d'exemples de code l'utilisant.

  2. #2
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    C'est spécifique au système d'exploitation ET au matériel à piloter (marque, constructeur, référence)... Donc, sans les docs (datasheets) de ces éléments à piloter, tu ne peux rien faire.
    Ensuite, la connaissance de l'OS te sera nécessaire pour savoir comment faire passer des ordres au bas niveau (monde kernel) sans te faire jeter par les mécanismes de protection des OS 32 bits.

    Après, tu as aussi d'autres solutions : faut voir comment est géré ton backlight par exemple, mais tu peux éventuellement t'en sortir avec des éléments mieux connus côté pilotage (ex : port parallèle), avec éventuellement une petite adaptation électronique si besoin.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 39
    Par défaut
    Salut MacLak,

    Effectivement, il me semble bien que le hardware à son importance, je devrais être capable de retrouver les différents composants (entre autres le chip qui gère les tensions des ventilos, c'est un Fintek F71882). L'OS, c'est windows XP, j'avais d'ailleurs posté sur ce forum avant d'être redirigé ici...

    Comme je l'ai dit dans mon EDIT (mais on s'est croisé je crois), il me semble que je dois passé par l'ACPI et le SMBus afin de communiquer avec ce composant, mais je ne trouve pas d'exemple de codes, faut que je creuse encore un peu.

    Comme tu le suggères, je suis ouvert à d'autres possibilités, il me faut contrôler une tension DC entre 0 et 5 volts avec un peu de puissance. C'est juste qu'au début, je pensais que le PWM du ventilo était une solution simple, c'est pas le cas... Je suis aussi capable de faire un petit montage électronique si nécessaire.

    EDIT: J'ai réfléchi à ta solution avec le port parallèle et avec quelques résistances bien placées sur les lignes de data, je devrais arriver à quelque chose...

  4. #4
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Citation Envoyé par FredLo Voir le message
    EDIT: J'ai réfléchi à ta solution avec le port parallèle et avec quelques résistances bien placées sur les lignes de data, je devrais arriver à quelque chose...
    Le port parallèle ne délivre pas vraiment de puissance, il te faudra donc apporter ladite puissance d'une source externe (bon, c'est pas comme si un PC n'avait pas plein de connecteurs 5V et 12V... ). Par contre, ça fait d'excellents déclencheurs de transistors pour faire passer le courant, à condition bien sûr de ne pas avoir besoin de timings trop précis. La tension délivrée est de 5V, pour info c'est 12V avec le port série. Attention à la précision de cette tension, qui est ... parfois aléatoire.

    Côté pilotage : jusqu'à une précision de l'ordre de la milliseconde, ça va. En dessous, laisse tomber. Au dessus de 20 ms de précision, c'est carrément parfait même sur des machines "chargées". Ton programme de pilotage peut tourner sous forme d'un driver, d'un service, ou d'une application autonome : le port parallèle est pilotable - proprement, cela va sans dire - par ces trois interfaces, et c'est plutôt bien documenté de façon générale. Rien que sur DVP, tu as pas mal de questions déjà posées au sujet des ports série et parallèles, et avec les réponses bien entendu.

    Après, le plus difficile consistera à définir quel type de signal tu cherches à générer. La datasheet de ton backlight est ton amie...
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

Discussions similaires

  1. [Windows]accès base de registre windows
    Par Greg01 dans le forum API standards et tierces
    Réponses: 27
    Dernier message: 05/06/2007, 15h14
  2. Accès au ports
    Par YéTeeh dans le forum C++Builder
    Réponses: 6
    Dernier message: 29/07/2002, 14h54
  3. Exécution indivisible (accès conccurent)
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 3
    Dernier message: 23/07/2002, 08h09
  4. Multi-acces a la BD Paradox
    Par _Rico_ dans le forum Paradox
    Réponses: 3
    Dernier message: 22/07/2002, 15h33
  5. Accès à une application ouverte (OLE Automation ?)
    Par PascalB dans le forum C++Builder
    Réponses: 6
    Dernier message: 17/06/2002, 14h39

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