Page 2 sur 3
Re: Arduino & PureBasic
Publié : sam. 23/févr./2013 9:19
par wood51
Code : Tout sélectionner
a$=Space(input)
ReadSerialPortData(1,@a$,input)
AddGadgetItem(2,0,a$)
Ça marche comme ça ?
Re: Arduino & PureBasic
Publié : sam. 23/févr./2013 16:30
par G-Rom
MetalOS a écrit :Une CNC ??? Pour faire de la gravure de CI à l'anglaise ?
Entre autre , découpage de bois, pvc , metal , etc...
Re: Arduino & PureBasic
Publié : sam. 23/févr./2013 17:34
par graph100
Exactement, j'ai fait un exemple avec un Tag pour le temps :
Code : Tout sélectionner
OpenWindow(0, 0, 0, 400, 500, "", #PB_Window_ScreenCentered | #PB_Window_SystemMenu)
EditorGadget(0, 10, 10, 380, 480)
AddWindowTimer(0, 0, 500)
time = ElapsedMilliseconds()
Repeat
event = WaitWindowEvent()
If event = #PB_Event_Timer
AddGadgetItem(0, 0, "[" + FormatDate("%hh:%ii:%ss", Date()) + "] : " + StrF((ElapsedMilliseconds()-time)/1000, 3) + " s")
EndIf
Until event = #PB_Event_CloseWindow
End
Re: Arduino & PureBasic
Publié : sam. 23/févr./2013 18:02
par MetalOS
wood51 a écrit :Code : Tout sélectionner
a$=Space(input)
ReadSerialPortData(1,@a$,input)
AddGadgetItem(2,0,a$)
Ça marche comme ça ?
Si j'utilise cette commande, le texte que m'envoie la carte arduino dans l'EditorGadget et scindé en deux. Voici un exemple ci-dessous.
Code : Tout sélectionner
SC:0
Osc dev changed to
O
anged to 0
OSC:0
Osc dev ch
v changed to 0
OSC:0
Osc de
v changed to 0
OSC:0
Osc de
Calib
enter...
Veuillez pati
Le "Veuillez patienter..." qui et en bas et coupé en deux avec des espaces alors qu'il devrait être sur une ligne comme le reste des commande affiché. J'ai seulement tesé sous Mac OS X et je vais essayer sur Windows et Linux voir si j'ai le même problème.
Re: Arduino & PureBasic
Publié : dim. 24/févr./2013 17:33
par MetalOS
Voila ce que ça me donne sous Windows le contenu de l'EditorGadget.
Code : Tout sélectionner
VYW‹±e/‚…tZ–‹•rÉr
áCX+‰Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
Oªé0C¡j VÙ ,+¹gY¢½ j
U¹iëo]z™ ®¹gY ¡e¬
ʽu.º¥rZë± ^«É ®–k½r
¹dj…kYšÕrY‚¡y®kÍ +ÝsB…vYr½t¡aë•dHHI+ÑiX+éiëé
áDZ.WÉbY.j…s5
GXËBëÍtš•tzÕtÖëÉ.CáN+Íe2±oKSY¢½ æW¢¡rY®‹‘ ®¹
áS¥kY’•jY,Wë¹ ®¹
¡Ê¥tZ±i¯¹
¡½nVëé
áN+Íe2±oKé0C¡*¹ ªµ *h—+¹g.‚
¡*Ík"¥sWÉbY.‚
¡E:…i
½o.—‚
¡¥kY’•jY,Wë¹:¦HWXסdëTK•s‹‘:LHA•nWDjA
C'est du délire

Re: Arduino & PureBasic
Publié : dim. 24/févr./2013 18:00
par wood51
Euh ??? Je donne ma langue au chat
Essaye de faire un prog en console qui passe son temps a lire sur le port com et afficher ce qu'il reçoit . Juste le stricte minimum ...
Re: Arduino & PureBasic
Publié : dim. 24/févr./2013 18:24
par graph100
il y a pas un soucis d'encodage des caractères ? unicode ou autre ?
Re: Arduino & PureBasic
Publié : lun. 25/févr./2013 4:32
par MetalOS
Ce qui est bizarre c'est que sous Mac et Linux je n'est pas ce problème de caractères. Peut être une option au niveau du compilateur ?
Re: Arduino & PureBasic
Publié : lun. 25/févr./2013 9:30
par MetalOS
Je ne comprend franchement pas pourquoi AddGadgetItem() me coupe mes lignes de textes et ajoute des saut de lignes dans l'EditorGadget() alors qu'avec la commande SetGadgetText() les lignes s'affichent bien.
Re: Arduino & PureBasic
Publié : lun. 25/févr./2013 15:18
par nico
C'est un comportement normal, c'est codé ainsi.
Faudrait demander une fonction qui permet de rajouter du texte au fil de l'eau.
Re: Arduino & PureBasic
Publié : lun. 25/févr./2013 15:46
par djes
Avec certaines interfaces, un buffer intermédiaire existe, et le contenu n'est envoyé que si le buffer est rempli. On peut souvent changer la taille de ce buffer. Avec une taille d'un octet, on a une lecture "temps-réel". Je ne sais pas si ça peut aider...
Re: Arduino & PureBasic
Publié : mar. 26/févr./2013 4:48
par MetalOS
nico a écrit :C'est un comportement normal, c'est codé ainsi.
Faudrait demander une fonction qui permet de rajouter du texte au fil de l'eau.
Oui ça serais vraiment bien d'avoir ça pour l'EditorGadget(). Fred si tu passe par là
djes a écrit :Avec certaines interfaces, un buffer intermédiaire existe, et le contenu n'est envoyé que si le buffer est rempli. On peut souvent changer la taille de ce buffer. Avec une taille d'un octet, on a une lecture "temps-réel". Je ne sais pas si ça peut aider...
Franchement je ne sais pas. Quand je programme mon Arduino j'insert du texte à afficher dans le moniteur série de l'IDE Arduino pour le déboggage.
Exemple: (j'utilise une carte Arduino + un shield Ethernet)
Dans mon code Arduino si la carte Ethernet arrive à se connecter en DHCP alors j'envoie un message texte au moniteur série de l'IDE " DHCP Ok ". Ça me permet d'être sur que la carte et connecter.
Je peut faire ça pour indiquer si une LED et allumée ou éteinte ou pour plein d'autre choses. C'est un peut utiliser comme la fonction Debug() de PB.
Se que je cherche à faire c'est afficher ses indications dans un EditorGadget() mais, que l'EditorGadget() scroll en même temps que l'affichage de ses informations ce qu'il ne fait pas et qui est gênant car la carte Arduino envoie plein d'infos en permanence.
Il faut que je puisse trouver une solution, qui soit en même temps multiplateforme car c'est pour un futur projet qui je l'espère sera largement distribuer.
Autrement merci pour votre aide et désoler G-ROM de pourrir ton tuto

Re: Arduino & PureBasic
Publié : mar. 26/févr./2013 9:25
par djes
MetalOs> WaitWindowEvent(20) est peut-être un peu trop bloquant par rapport aux évènements envoyés simultanément sur le port série. Soit tu ré-écris ton code en utilisant les threads, soit tu gères plus finement les évènements Window/Série dans ta boucle principale. N'oublie pas aussi que ReadSerialPortData() est une fonction bloquante...
Re: Arduino & PureBasic
Publié : mar. 26/févr./2013 16:59
par MetalOS
djes a écrit :MetalOs> WaitWindowEvent(20) est peut-être un peu trop bloquant par rapport aux évènements envoyés simultanément sur le port série. Soit tu ré-écris ton code en utilisant les threads, soit tu gères plus finement les évènements Window/Série dans ta boucle principale. N'oublie pas aussi que ReadSerialPortData() est une fonction bloquante...
Je vais tenter avec un Thread. Pour la lecture du port série il n'y à rien d'autre à part ReadSerialPortData() ?
Re: Arduino & PureBasic
Publié : sam. 09/mars/2013 10:01
par microdevweb
Bonjour,
Whaaww à savoir ça, je viens juste de terminer un soft qui contrôle 88 leds à l'aide d'un fichier midi... Bon à savoir pour l'avenir