France Hardware : Forums de discussion - Découvrez notre nouveau comparateur d'offres Internet
Retrouvez les prix près de chez vous :  
Index du forum | Liste des membres | Liste des groupes | Inscription | F-A-Q | Recherche
Pseudo :    Password :     
29 511 membres enregistrés - 2 069 318 posts - 122 026 topics
Index des forums FH  | Index des forums DegroupNews
      Programmation
           Sujets divers
                [Resolu] [Visual Basic] Port série: de bizarres vitesses ?
50 connectés(record : 2799 le 29 May 2016 - 15 h 34)

Vous devez vous connecter pour répondre au topic.
[Resolu] [Visual Basic] Port série: de bizarres vitesses ?

alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 22 February 2005 - 15 h 24 m 52 s
Bonjour à toutes et à tous

Je suis en train de faire un logiciel pour controler un terminal téléphonique par Visual Basic... Mais j'ai un petit problème: le terminal utilise le protocle RS232 à une vitesse de 6972 bps, alors que le controle MSComm n'accepte que les vitesses standards genre 4800, 9600, etc.

Es-ce que vous sauriez comment faire fonctionner le port série à une vitesse non-standard? (que ça soit avec le controle MSComm ou avec un control alternatif)

Merci

EDIT: Update: donc, sur http://www.codeproject.com/Purgatory/serial_port.asp j'ai trouvé un petit programme en C++ qui fait ceci...

Le but est donc de transformer ce petit C++ et Basic (par exemple en librarie à inclure)... Savez-vous comment procéder?

EDIT II: Pour interfacer Visual C++ et Vİsual Basic il faut utiliser les DLL ... un petit tuto ce trouve sur http://www.flipcode.com/articles/article_vbdlls.shtml

Merci :)


Message édité 2 fois, la dernière par alitokmen le 22 July 2005 - 08 h 27.

S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


Petit_PimoOosE
rsqrtps & pshufb

Messages : 4 617
Inscrit le 15/06/03
Ville : Montréal
Non connecté
  Posté le 23 February 2005 - 03 h 58 m 14 s
:o
tu peux pas changer la vitesse du terminal, plutôt ? j'ai jamais vu passer ce nombre...

sinon, jette un oeil là-dessus (il faudra utiliser l'API par contre)
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcecoreos5/html/wce50conconfiguringaserialport.asp



Huile de fraise.

alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 23 February 2005 - 11 h 06 m 49 s
Ta doc c'est pour Windows CE :)

Ba en fait non je ne peux pas... Enfin, je ne préfès vraiment pas



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


Petit_PimoOosE
rsqrtps & pshufb

Messages : 4 617
Inscrit le 15/06/03
Ville : Montréal
Non connecté
  Posté le 24 February 2005 - 03 h 48 m 19 s
je me fais avoir à chaque fois :rougir:

bon, un équivalent ici : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/devio/base/communications_reference.asp

et si tu te crées ton propre OCX ? j'avais cherché ce genre de contrôle aussi à un moment, mais sans trop de succès...



Huile de fraise.

beavis
I hate the teletubbies...

Messages : 1 002
Inscrit le 18/09/03
Ville : Lyon 6e part-dieu
Non connecté
  Posté le 24 February 2005 - 12 h 08 m 02 s
A priori je crois pas qu'on puisse programmer un UART Serie pour aller à une telle vitesse :
=> un lien vers les uart serie les plus communement trouvés dans les PC
http://www.lammertbies.nl/comm/info/RS-232_uart.html#regs (voir le tableau à la fin)

115200 / ta vitesse ça fait pas un nombre entier...
donc pas de diviseur pour programmer l'UART...

Si l'électronique peut pas, la programation pourra rien pour toi...

[ EDIT ]
Essaye au cas ou avec diviseur de 16 ou 17
je saurais le faire en C sous linux mais en vb sous win 2000/xp, comme t'as pas trop le droit d'attaquer le matos direct...


Message édité 4 fois, la dernière par beavis le 24 February 2005 - 12 h 21.

www.bearstech.com

Micka
J'ai pas de vie sociale, alors je pompes sur Lone Cut et Kiki. J'vous l'avait dit hier, rien de tel qu'une bonne nuit de sommeil.

Messages : 2 926
Inscrit le 23/04/02
Ville : [38] Deriere toi
Non connecté
  Posté le 24 February 2005 - 14 h 51 m 00 s


Le 24 février 2005 - 12 h 08, beavis a écrit :
A priori je crois pas qu'on puisse programmer un UART Serie pour aller à une telle vitesse :
=> un lien vers les uart serie les plus communement trouvés dans les PC
http://www.lammertbies.nl/comm/info/RS-232_uart.html#regs (voir le tableau à la fin)

115200 / ta vitesse ça fait pas un nombre entier...
donc pas de diviseur pour programmer l'UART...

Si l'électronique peut pas, la programation pourra rien pour toi...

[ EDIT ]
Essaye au cas ou avec diviseur de 16 ou 17
je saurais le faire en C sous linux mais en vb sous win 2000/xp, comme t'as pas trop le droit d'attaquer le matos direct...


Euh, on peut tout à fait configurer (d'un poit de vu hard et pour les UART que j'ai vu passer) une UART sur la vitesse que l'on souhaite, vu qu'il s'agit généralement de configurer un diviseur (16 ou 32 bits) de l'horloge fournie à l'UART. Apres en effet les vitesses de transfert utilisées sont relativement standardisées, mais c'est pas un choix hard.

[ EDIT ]
Cependant, il doit etre assez difficile sous Windows "d'attaquer" l'UART en direct.
Une autre solution : Tu ajoute un petit module hard sur ta ligne série, pour bufferiser les échanges, mais je ne sais pas si ca existe (si non, tu peux toujours le faire toi meme... :gne: )


Message édité 1 fois, la dernière par Micka le 24 February 2005 - 15 h 01.

J'ai plus de sous, mais une voiture

www.multiprises.com
:Lutin:


alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 25 February 2005 - 20 h 29 m 31 s
C'est pour ça que je suis en train de bosser avec le fichier port.dll, mais la doc est en allemand :(



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 25 February 2005 - 20 h 30 m 46 s


Le 24 février 2005 - 03 h 48, Petit_PimoOosE a écrit :
et si tu te crées ton propre OCX ?


:tut: ça va être dur pour moi je crois mais on verra



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


tempo
Zen

Messages : 2 178
Inscrit le 14/09/02
Ville : Grenoble (Echi)
Non connecté
  Posté le 27 February 2005 - 11 h 21 m 05 s
as-tu essayé avec le debit "standard" le plus proche du debit bizare de ton terminal ?
en general les FIFOs des UARTs sont assez "tolérantes"...
si tu peux (je ne sais pas quels diviseurs tu peux appliquer...):
- 115200/16 (7200 bauds)
- 115200/17 (6776 bauds)
- 115200/18 (6400 bauds)

[EDIT]
cf suggestion de beavis...

[EDIT2]
vu dans kernel linux:
base_baud=1843200 (...6972*264) sur SGI IP32 et dans un driver modem ISDN
base_baud=1382400 (...6972*192) dans les defs du driver serial 8250
base_baud=1115200 (...6972*165) sur vr41xx (tjrs machine mips...)
et quelques autres du meme gout
=> le debit de 6972 baud n'est donc pas tres standard, mais pas si bizarre que ca...
(faut pas oublier que pour une ligne serie a 115200 bauds il faut quand meme une horloge d'UART bien plus elevée, et que ce 115200 est lui meme le resultat d'un diviseur de frequence...


Message édité 2 fois, la dernière par tempo le 27 February 2005 - 14 h 42.


alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 27 February 2005 - 17 h 39 m 52 s
une idée aussi serait peut-être de prendre 115200 et de regarder sur ça ... en effet j'ai juste besoin de recevoir donc ça pourrait aller ...

Comme je l'ai dit 6972 baud est le baud d'un crystal physique donc il se peut que d'autres gens l'aient utilisés auparavant :)

Merci pour les infos dans tous les cas :yes:

EDIT: je ne suis pas sur de l'orthographe du mot crystal


Message édité 1 fois, la dernière par alitokmen le 27 February 2005 - 17 h 40.

S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 27 February 2005 - 17 h 52 m 27 s


Le 27 février 2005 - 11 h 21, tempo a écrit :
(faut pas oublier que pour une ligne serie a 115200 bauds il faut quand meme une horloge d'UART bien plus elevée, et que ce 115200 est lui meme le resultat d'un diviseur de frequence...


Exactement... Reste juste à savoir comment y accéeder à partir de Visual Basic (même pas C++!!)



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


beavis
I hate the teletubbies...

Messages : 1 002
Inscrit le 18/09/03
Ville : Lyon 6e part-dieu
Non connecté
  Posté le 28 February 2005 - 13 h 31 m 41 s


EDIT: je ne suis pas sur de l'orthographe du mot crystal


Quartz :D



www.bearstech.com

alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 28 February 2005 - 23 h 34 m 21 s


Le 28 février 2005 - 13 h 31, beavis a écrit :


EDIT: je ne suis pas sur de l'orthographe du mot crystal


Quartz :D


Bonne idée ... sinon aller demander à une copine (pas à une copine copine sinon elle va en vouloir un - pas bien !!)



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 25 June 2005 - 19 h 54 m 35 s
Update: donc, sur http://www.codeproject.com/Purgatory/serial_port.asp j'ai trouvé un petit programme en C++ qui fait ceci...

Le but est donc de transformer ce petit C++ et Basic (par exemple en librarie à inclure)... Savez-vous comment procéder?

Merci :)



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


alitokmen
Think ®

Messages : 3 686
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 22 July 2005 - 08 h 30 m 04 s
( sujet résolu ... voir le premier post :) )



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


Page genérée en 0.2475 secondes par RahForum 2.0 | Gzip off |  Stats |  Metaforums |  RSS
© 2004 Cerbere Systems.
Prix Matériel Informatique | Informatique Lyon | Informatique Grenoble | Informatique Annecy | Informatique Marseille | Informatique Bordeaux | Forum Informatique
ADSL | Actualité ADSL | Deligo | Appareil photo | Commande Au Volant
Creative Commons
Message Boards and Forums Directory