programmation d'un potentiomêtre numérique

programmation d'un potentiomêtre numérique - Programmation

Marsh Posté le 09-05-2001 à 09:33:50    

je suis débutant en programmation et j'ai un projet tutorés dans lequel on me demande de créer un circuit et de le commander par l'intermédiaire du port parallèle
le composant est un potentiometre numerique(le ds1801 de dallas semiconducteur) et il doit commander un ampli (qui est le op275gp de burn brown)
si quelqu'un accepte de m'aider qu'il m'envoie un mail et je pourrait alors lui procurer le pdf du potentiomêtre
dans lequel les caracteristiques techniques et les chronogrammes sont présent
si le programme peut se faire en C  en C++ ou en visual basic je dois bien avouer que cela m'arrange......
 
Merci d'avance
tygwen69@yahoo.fr

Reply

Marsh Posté le 09-05-2001 à 09:33:50   

Reply

Marsh Posté le 09-05-2001 à 09:48:02    

Personnellement, je n'ai jamais fais de programme qui interreagissait avec le monde exterieur... mais je dois admettre que le sujet m'interresse vachement, donc si tu arrives a qqchose, fais le nous savoir

Reply

Marsh Posté le 09-05-2001 à 10:09:51    

ouh la la !!! j'ai fait un truc similaire il y a plus de 20 ans avec le 6800 de Motorola et c'était pas simple (il faut dire qu'il avait fallu commencer par créer le circuit électronique).
 
En assembleur 8080, tu as des commandes qui permettent d'écrire et de lire un octet (ou un mot, je sais plus) sur un port déterminé. je crois que c'est "in" et "out", mais sans garantie, je n'ai pas mon bouquin d'ASM ici.
 
Le pb est qu'un programme écrit ainsi ne marchera pas sous NT qui interdit l'appel direct au matériel. Il faudra donc passer par les API de Windows et là désolé je ne connais pas assez.
voir : http://www.allapi.net/agnet/index.php
 
Il y a eu un topic sur ce forum qui pourrait t'intéresser :  
http://forum.hardware.fr/sqlforum/ [...] inc&cache=
tu pourrais contacter Pat205 pour voir comment il a résolu son pb et comment il a attaqué le port // sous Delphi

Reply

Marsh Posté le 09-05-2001 à 10:12:39    

on résous le probleme de savoir sous quel systême ce programme devras marcher
le prof m'impose windows95

Reply

Marsh Posté le 09-05-2001 à 10:16:52    

http://www.dalsemi.com/datasheets/pdfs/1801.pdf
230 Ko
si vous voulez le telecharger

Reply

Marsh Posté le 09-05-2001 à 10:23:16    

Il est pas vache ton prof, car un projet comme celui là doit fonctionner dans l'industrie, donc avec un OS fiable => NT ou W2k...
 
donc pour attaquer le port // tu passes des instructions assembleur dans ton code C
 
voir des docs sur l'assembleur sur :
 
http://www.decatomb.com/dev/assembler/beg.htm
http://www.francedev.com/browseressources.asp?cat=ASM
 
A+

Reply

Marsh Posté le 09-05-2001 à 12:33:56    

arf ...
nous aussi on a eu ca : mais avec le port série ...
la c'etait pour faire dialoguer 2 ordis via un cable série ...
c'etait un projet ... d'assembleur ...
et c'est vrai que c'est pas simple : doc technique en anglais, y'a des circuits spéciaux pour controler ca et faut les programmer ...
sous win95 tu peux te le faire en C avec un peu d'assembleur inline dedans ... mais c'est vrai que ce serait mieux avec des API ...
mais tu dis que tu es débutant, alors je suppose que le prof attend que vous preniez une certaine voie. Tu penses qu'il veut de l'assembleur ou alors les API ?
et avec win95, c'est du windows pur et dur ou vous pouvez faire une petite appli DOS ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 09-05-2001 à 16:00:29    

on peut utiliser ce que l'on veut du moment que ca tourne sur les pc du bahut tournant sous win95 et accessoirement sous dos (meme si le dos n'est officiellement pas disponible: il le sera...;)

Reply

Marsh Posté le 09-05-2001 à 16:12:45    

Et vous avez aucune piste ? C'est "demerde toi, fais absolument ce que tu veux" ou alors tu sens que le prof attend une certaine solution ?
t'es débutant ? on vous l'enseigne la programmation ? tu parles de VB ... on vous a appris les API ? ou alors l'assembleur ? C'est quoi exactement ton prof ? :??:


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 09-05-2001 à 14:44:54    

je viens de lire (rapido) le pdf de ton circuit.
t'es sur de vouloir le commander par le port //  ???
moi je vois pas comment vu qu'il ne peut être commandé que par une liaison série...
A+

Reply

Marsh Posté le 09-05-2001 à 14:44:54   

Reply

Marsh Posté le 09-05-2001 à 22:20:29    

et bien le prof va aller se faire ...
si c possible par le port série (circuit rs232)
je suis preneur

Reply

Marsh Posté le 09-05-2001 à 22:24:11    

je répond à HelloWorld
et bien oui c démerde toi sachant que l'on n'apprend pas à programmer:  de plus on nous demande quand mème expressement d'utiliser les logiciels présents à l'IUT

Reply

Marsh Posté le 10-05-2001 à 01:26:31    

en C-Unix tu peut rediriger les entrre sortit, donc tu peut les rediriger sur le port parralle pour faire des read ou write. A voir: man fdopen.


---------------
A Plus Donc...  [:jls]
Reply

Marsh Posté le 10-05-2001 à 08:20:54    

c est assez faciel d interagir davec les ports paralleles en C et C++ ou visual , malheureusement , WIndows cache une bonne partie du coté harware de ceux-ci donc des fois ca pose probleme , le mieux est sous DOS

Reply

Marsh Posté le 10-05-2001 à 08:46:54    

en C, pour lire un octet sur un port, c'est inportb
et pour ecrire un octet, c'est outportb.
char Car ;
 
Car = inportb(2f8) ;    //lire à l'adresse 2f8, c'est le port com
outportb(2f8, Car) ;    // ecrire un octet sur le port com
 
les ports com (série), en général, c'est les adresse 2f8 et 3f8.
le port //, je sais plus : faut regarder dans le bios ou dans le panneau de config/systeme

Reply

Marsh Posté le 10-05-2001 à 08:50:22    

de plus, faut un convertisseur CNA/CAN (num->Analogique et vice-versa). Le 8051 de motorola doit faire ça (ou le 8053)...
 
tu verras, dès que tu vas réussir à sortir un signal du pc sur un oscillo ou entrer une tension électrique et la lire sur le pc, tu vas être heureux :) La suite, c juste de la comprehension de doc technique...Mais ça, tu dois savoir faire vu que t'es en iut. Mois, j'ai fait un IUT GEII.

Reply

Marsh Posté le 10-05-2001 à 08:51:44    

les 2 fonctions sont dans la bibliothèque dos.h

Reply

Marsh Posté le 10-05-2001 à 12:49:25    

merci  
j'ai regarde et ca marche le pb sur port série c qu'il faut envoyer un paquet de bit
il faut donc le convertisseur...(je n'ai pas trouver de 8053
seulement le pdf du 8051)
g regardé et la encore je bloque

Reply

Marsh Posté le 11-05-2001 à 08:07:59    

ben écoute, à la limite tu me passe ton adresse e-mail et je vais voir pour te scanner quelques unes de mes notes dessus. Mais tu bloque où?

Reply

Marsh Posté le 16-05-2001 à 21:11:26    

bon je progresse mais j'ai pas pris ce composant pour la conversion parce qu'il refusait de faire ce que je lui demandait (simulation max plus 2)
Pour le prog windows en fait il ya pas mal de PB a cause des appli (windows justement) qui créées des conflits mais je vais y arriver.... je sais pas quand mais je vais le faire

Reply

Marsh Posté le 17-05-2001 à 22:27:56    

g fait trois prog a qui je peut les envoyer pour verif ils sont en c forlat (*.c promis c pas des virus ) et ils pesent 1 ko chacun donc c pas la mer a boire

Reply

Marsh Posté le 25-05-2001 à 15:51:31    

voila mon programme, con mais efficace!!! à par le fait que je peut pas envoyer plus d'un chiffre.
En effet si je veux mettre 52 ou tout autre chose et bien g l'impression que ce n'est pas ce qu'il envoi.
donc encore une fois si qq'un peut m'aider je ne dirais pas non
 
 
/* transfert par port serie */
 
#include <stdio.h>
#include <dos.h>
#include <bios.h>
main()
{
char c[2];
int i=0;
int adr =0x3F8;
 
 
while(c[0]!='+')
 {
 printf("\nEntrer le chiffre\n" );
 scanf("%s",c);
 outportb(adr,c[0]);
 printf("\ntransfert ok\n" );
 }

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed