Le langage SMS est exclu sur les forums ProgBoards, tout message ne respectant pas la charte sera déplacé, modifié, ou supprimé par nos modérateurs.

Forum Langages » BASIC » Tranfert fichier sur CNC via port COM

Francesco
Modérateur
RemonterCiter Linux Firefox 2 - Posté le 02/03/2008 à 10:17
J'ai peut-etre trouvé.
http://robot.campus.ec-nantes.fr/documentation/portserie/ProgrammationWorld.htm

Ce qui je pense est une piste est le Xon/Xoff.

[quote de la page dont l'URL est juste au dessus]
Vous voyez que dans l'illustration ci-dessus, la mémoire de l'imprimante est limitée. Si l'ordinateur envoie trop d'informations et remplit la mémoire de l'imprimante jusqu'à la saturer, les données seront corrompues. Avec le protocole Xon/Xoff il existe deux seuils haut (Xoff) et bas (Xon) qui indiquent à l'envoyeur l'état de la mémoire. Lorsque le seuil haut est franchi, l'imprimante envoie le code correspondant à Xoff (0x13). Le même phénomène se produit avec Xon (0x11). Ainsi, avant d'envoyer une donnée, il faut vérifier qu'il reste de la place dans la mémoire. Voici comment agir :

* lecture de 0x13 (Xoff) : on stoppe l'envoie des données et on attend le code Xon.
* lecture de 0x11 (Xon) : la mémoire est bientôt vide, on recommence l'envoie des données tout en testant si le code Xoff n'arrive pas.
[/quote]
Comme tu disais plûs haut que le Xon/Xoff était sur ON, lorsque tu envois des commandes, elles n'arrivent donc pas. Enfin, c'est ce que je pense. A toi de faire des tests

[edit]
Désolé, j'ai du mal le matin, lorsque je viens de me réveiller ! Tu es bien sur Xon, donc a priori tu peux envoyer tes données. Mais il faut vérifier pendant l'envoie des données, que tu ne passes pas en Xoff
[/edit]

[edit 2]
En même temps, je pense que QBasic gère ca tout seul de son coté. Quoi que, je ne sais pas, faut vérifier.
[/edit]

Edité par Francesco ( 02/03/2008 10:20:48 )
Gates gave you the windows.
GNU gave us the whole house.(Alexandrin)
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 02/03/2008 à 10:21
Bonjour Francesco,
Ton idée me parait intéressante et je testerai lundi, mais si le soft utilise une commande genre "SHELL" pour paramétrer le port com et idem pour fermer le port,
les paramètres windows ne devraient pas changer ? voir le Re(11)
de plus les données paramétrables dans le gestionnaire de périph sont assez limitées !
Je vais faire l'essai pour voir (j'aimerai que tu ai raison)
Amicalement,
(sourire)
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 02/03/2008 à 10:26
Merci Francesco, je vais voir !
Tu es plus rapide que moi pour répondre :
Le Re(21) est en réponse au Re(19)
Donc celui-ci en réponse au Re(20)
Salutations,
(sourire)
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 02/03/2008 à 11:31
Bonjour,
La "remarque" en fin de page est intéressante mais ne va pas plus loin, dommage,
mais bonnes infos, merci !
Le tout est de gérer cela avec QB4.5, je ne vois pas ?
DMF
(sourire)
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 03/03/2008 à 16:25
Bonjour,
pour faire réponse au Re(19) de Francesco,
dans "gestionnaire de périphérique" le port com n'est pas configuré en XON/XOFF
c'est le soft qui gère les paramètres du port.
il passe en xon/off, fait son transfert et ferme le port sans changer les valeurs du port dans gestionnaire de périphérique.
ça valait le coup d'essayer !
Comment je pourrais vérifier sous QB4.5 :

lecture de 0x13 (Xoff) : on stoppe l'envoie des données et on attend le code Xon.
lecture de 0x11 (Xon) : la mémoire est bientôt vide, on recommence l'envoie des données tout en testant si le code Xoff n'arrive pas.


Cordialement,
DMF
(confus)

Edité par diemaker form ( 03/03/2008 16:27:18 )
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 14/03/2008 à 18:41
Bonjour à tous !
Je viens de trouver des infos sur ce lien :
http://support.microsoft.com/kb/48400/fr
Je ne comprend pas tout (gêné)
Si une âme charitable ......
D'avance merci
Salutations,
DMF
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
Francesco
Modérateur
RemonterCiter Linux Firefox 2 - Posté le 15/03/2008 à 10:37
J'ai jeté rapidement un coup d'oeil, mais je ne pense pas que ce soit la solution à ton problème. Ce document traite plutot de l'utilisation du port COM sous OS/2, en fournissant des routines d'ouverture, fermeture, lecture et écriture.

Hors, dans ton cas, tu disposes déjà de ces routines (merci QBasic (clein d'oeil)). Ton problème est plus un problème de configuration entre le PC et le périphérique...
Gates gave you the windows.
GNU gave us the whole house.(Alexandrin)
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 18/03/2008 à 19:36
Bonjour,
J'ai trouvé ça sur un forum espagnol :

OPEN "COM2:9600,N,8,1,rs,cs0,ds0" FOR RANDOM AS #10

DO
a$ = ""
DO WHILE a$ = "" OR VAL(a$) < 0 OR VAL(a$) > 255
CLS
PRINT "Digita valore di OUTPUT da 0 a 255 (A=abbandona)";
INPUT a$
LOOP
IF a$ = "a" OR a$ = "A" THEN
CLOSE #10
EXIT DO
END IF

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


si j'ai bien compris, ce prog interroge la machine en digital$ ad1$ et ad2$
et attend une réponse pour envoyer ?
Si une personne est assez sympa pour me traduire ce prog, merci
Salutations,
DMF
(sourire)
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 28/04/2008 à 18:47
Bonjour,
N'ayant trouvé aucune solution avec la fonction
open "com2:9600,etc..."
je suis passé par un SHELL

SHELL "mode com2 baud=9600 data=8 stop=1 parity=e xon=off"
SHELL "copy FICHIER.TXT COM2"

Pour moi, le post est résolu en l'état,
Merci à tous,
DMF.
(confus)
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr

Poster une réponse

STOP aux fautes volontaires !
Message
Formatage
Note: pour partager du code source, merci d'utiliser le wall !
Smileys (sourire) (yekyek) (clein d'oeil) (désapprouve) (triste) (cool) (langue) (confus) (gêné) (neutre) (eek) (surpris) (diable) (flèche) (exclamation) (question) (diable) (idée) (méchant)
Pseudonyme
Recopiez le code
v6 © Computaid SPRL 2005-2008 - Tous droits réservés - Hébergé par eTigris - Page générée en 0,044 s - Crédits - Stats
1 connecté