RS 232 de QBASIC à Vb6 [Résolu]

nicodada 43 Messages postés samedi 10 décembre 2005Date d'inscription 12 juillet 2007 Dernière intervention - 7 juil. 2006 à 15:17 - Dernière réponse : Mhamed Jamil 5 Messages postés mercredi 10 mai 2006Date d'inscription 16 août 2006 Dernière intervention
- 16 août 2006 à 14:40
Bonjour
En fait je cherche l'équivalent de la fonction  OUT de QBASIC pour toucher l'RS 232
J'ai déja trouvé, avec mscomm32.ocx , comment ouvrir le port COM1 mais je mscomm32.ocx ne permet pas de fair la fonction la: (en QBASIC)
OUT 1019,64
Avec mscomm32.ocx on ne peut envoyer que de l'ascii mais pas gerer completement le port
merci
Afficher la suite 

Votre réponse

13 réponses

Meilleure réponse
rylryl 328 Messages postés mardi 9 mars 2004Date d'inscription 15 décembre 2006 Dernière intervention - 8 juil. 2006 à 13:59
3
Merci
Bonjour a tous,

Nicodada > Si tu veux  piloter TXD (Plage E/S COM1 théorique &H3F8-&H3FF  (1019 = adresse base &H3F8 +3) 
directement utilise plutôt par exemple "PORT.DLL"
La syntaxe sera : TXD(0) et TXD(1).

Salut Jack.

Adamo901 > Je ne pense pas que ce soit possible d'atteindre ces vitesse, mais il est possible de reformer un Octet ou un paquet de bits directement via les lignes RTS DTR ect...(pareil en reception)
Donc il faut calculer la durée d'un bit a 100 ou 200 bauds et reformer l'octet ou le paquet de bits.
Et faire la même chose pour la reception...

A+
ryl...

Merci rylryl 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de rylryl
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 7 juil. 2006 à 16:52
0
Merci
Salut
On peut faire beaucoup de chose avec ls MSComm32
Si tu nous dis à quoi correspondent les valeurs 1019 et 64, on pourra peut-être t'aider.
+ Lire les réponses à cette question récemment posée sur le forum : clique ici

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
Commenter la réponse de cs_Jack
adamo901 140 Messages postés mardi 18 janvier 2005Date d'inscription 8 décembre 2008 Dernière intervention - 7 juil. 2006 à 18:18
0
Merci
une question dans le cadre pour jack :
J'ai besoin de communiquer avec le port comm en utilisant commevitesse 200 ou 100

MSCOMM ne l'accèpte pas!!

Aves vous une solution SVP!
Commenter la réponse de adamo901
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 7 juil. 2006 à 19:05
0
Merci
En effet, ce sont des vitesses hors normes = matériel trop vieux ?
Commenter la réponse de cs_Jack
adamo901 140 Messages postés mardi 18 janvier 2005Date d'inscription 8 décembre 2008 Dernière intervention - 7 juil. 2006 à 21:53
0
Merci
oui, ce sont des liaions télégraphiques.

J'ai vraimenet besoin d'aide sur ce sujet
Commenter la réponse de adamo901
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 8 juil. 2006 à 01:16
0
Merci
Re
Si tu veux de l'aide, je le répète, dis nous à quoi servent ces chiffres 1019 et 64
Commenter la réponse de cs_Jack
adamo901 140 Messages postés mardi 18 janvier 2005Date d'inscription 8 décembre 2008 Dernière intervention - 8 juil. 2006 à 12:34
0
Merci
moi je veux de l'aide et ce que je veux c'est pouvoir utiliser mscomm à des vitesses autres que ce celles prédéfinies par microsoft.
Commenter la réponse de adamo901
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 8 juil. 2006 à 16:30
0
Merci
Amado901 : Non, ce n'est pas possible avec ce composant.

Nicolada : J'espère que tu viendras lire les réponses à ta question ...
A priori, si comme le dit Rylryl, cette adresse pointe l'adresse du port Com, il suffit d'utiliser COM1 avec MSComm et ce sera pareil.
Commenter la réponse de cs_Jack
rylryl 328 Messages postés mardi 9 mars 2004Date d'inscription 15 décembre 2006 Dernière intervention - 8 juil. 2006 à 17:53
0
Merci
Re,

Jack > Je ne suis pas tout a fait de ton avis   , pas taper  pas taper!!
Je pense que c'est possible de passer a 100,200 avec MSCOMM mais en faisant une "EMULATION"
Du bloc de bits a transmettre, comme j'ai essayé de l'expliquer plus haut...

Et pour le sujet de Nicodada , je pense qu'il  veut juste contrôler l'etat de la ligne TXD (sans BAUD,STOP,PARITE)
Mais il me semble qu'avec MSCOMM il n'est pas possible de contrôler directement cette ligne... a vérifier ...

PS : Je ne veux surtout pas te froisser Jack tu fait un super boulot...!

A+
ryl...
Commenter la réponse de rylryl
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 9 juil. 2006 à 02:02
0
Merci
lol Rylryl : je suis pas du genre à frapper !
C'est moi qui te remercie de ta participation.
Honnètement, ça m'étonnerait qu'on puisse bidouiller la vitesse puisque le cadensement est géré par le circuit, mais bon, pourquoi pas, mais je n'ai jamais vu ça.

Par contre, pour bien voir ce qui se passe sur le port Com, cette source (pas toute jeune) est super bien faite
clique ici . La source utilise une DLL nommée RSCOM.dll
Commenter la réponse de cs_Jack
rylryl 328 Messages postés mardi 9 mars 2004Date d'inscription 15 décembre 2006 Dernière intervention - 10 juil. 2006 à 15:02
0
Merci
Bonjour Jack,


Super!, Merci pour ta compréhention !


Il n'est plus question d'utiliser le cadencement interne,
Mais bien de capturer a un instant "T" le début d'un envoie (ou recep)
Et de reformer le bloc de bits...


Je connais RSCOM.DLL, en fait RSCOM.DLL et PORT.DLL sont soeur :
Le créateur "Burkhard Kainka"
http://www.b-kainka.de/
Il y a sur son site toutes les infos sur les DLL, il est aussi possible de les utiliser pour:
Piloter L'IRDA, Piloter Carte son, Piloter le port MIDI ect...
(ATTENTION !! Certaines fonctions sont HS sous XP!!)


A bientôt...


ryl...
Commenter la réponse de rylryl
nicodada 43 Messages postés samedi 10 décembre 2005Date d'inscription 12 juillet 2007 Dernière intervention - 11 juil. 2006 à 14:37
0
Merci
J'ai trouvé plus facilement ce que je cherché grace au port.dll
merci a tous
Commenter la réponse de nicodada
Mhamed Jamil 5 Messages postés mercredi 10 mai 2006Date d'inscription 16 août 2006 Dernière intervention - 16 août 2006 à 14:40
0
Merci
Bonjour,


J’ai un code pour gèrer une carte électronique avec le port com1.


J’ai réussi à envoyer des commandes par le MsComm, mais je n’arrive pas à traduire le QBasic au VB6 pour récupérer les données d’entrées (InPut)


Voici le code en QBasic :

Open "COM2:9600,N,8,1,rs,cs0,ds0" For Random As #10


Do
    Print #10, "**" + Chr$(Val(a$)) + "#";
                 
    digital$ = Input$(1, #10)
    ad1$ = Input$(1, #10)
    ad2$ = Input$(1, #10)



    Print "Ingressi ="; Asc(digital$);
    Print "Convertitore A/D 1 ="; Asc(ad1$);
    Print "Convertitore A/D 2 ="; Asc(ad2$)
          
    SLEEP 5
Loop
End

Merci de votre aide.
Commenter la réponse de Mhamed Jamil

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.