Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Thierry

Pages: 1 ... 40 41 [42] 43 44 45
616
Vos projets / Re : Va et vient à trois autorails
« le: novembre 26, 2015, 02:43:16 pm »
Une demande aussi importante, toutes proportions gardées, impose l'écriture d'un véritable article sur le sujet ! Ainsi chacun verrait comment faire et reproduirai le schéma pour lui !

617
Présentez vous ! / Re : Bonjour de Bretagne
« le: novembre 24, 2015, 09:42:24 am »
Bienvenue parmi nous.

Voilà des projets bien en phase avec ce que nous faisons ici ! Pour le bus Can, j'ai trouvé http://www.peak-system.com/Produits.57.0.html?&L=2 en cherchant un peu, mais je ne suis pas le spécialiste de la chose... Content de voir que la complexité apparente du sujet Gestion DD n'est pas si rebutante. Il y a a encore au moins un article de plus à publier sur le sujet...

618
Présentez vous ! / Re : Bonjour à tous
« le: novembre 19, 2015, 11:06:28 am »
Bienvenue parmi nous. N'hésites pas à nous faire profiter de tes réalisations !

619
Bibliothèques / Re : Erreur librairie DCC_Decoder
« le: novembre 17, 2015, 10:13:20 am »
Tu peux simplement renommer le fichier hpp en h et modifier l'include du cpp en conséquence... Le renommer en hpp est un moyen pour moi d'éviter les problèmes avec l'IDE Arduino qui triture tous les .h du répertoire d'une bibliothèque...

620
Bibliothèques / Re : Erreur librairie DCC_Decoder
« le: novembre 16, 2015, 09:49:38 am »
Bonjour

Depuis la version 1.6.0 (ou à peu près) ce type de variable prog_* n'existe plus. A la place il faut utiliser le define PROGMEM. Voici un lien http://www.tuxgraphics.org/electronics/201207/prog_char.shtml qui explique bien (mais en anglais) comment faire.
Sinon, va prendre ma version corrigée de ces fichiers sur la forge Locoduino ici : https://git.framasoft.org/locoduino.org/UniversalAccessoryDecoder/tree/V4

621
Présentez vous ! / Re : Présentation de Trutru
« le: novembre 12, 2015, 10:12:03 am »
Bienvenue chez nous.
On est toujours contents d'aider des débutants !

622
Trucs & astuces / Re : Techniques de mise au point
« le: novembre 10, 2015, 12:09:10 pm »
On ne peut pas vraiment dire que c'est plus simple... C'est juste autre chose.

Le but de ce type d'émulation est de parvenir à compiler le fichier .ino, en faisant en sorte que les entrées et sorties soient gérées par d'autres que par l'Arduino. Il y a plusieurs problématiques :

1 Arriver à compiler
  Le source .ino suppose la présence de fichiers include comme Arduino.h, serial.h et d'autres qu'il faut reproduire localement. C'est par exemple mon bout de code comme tu dis. Ensuite, et comme tout ne sera pas parfaitement identique, il faut pouvoir délimiter les zones à compiler dans le cas "émulation", et celles à compiler dans le cas "production". C'est l'utilisation des defines du C VISUALSTUDIO pour moi ou PC pour Marc-Henri.

2 Emulation des boutons
  Quoi de mieux que le clavier et la souris pour évoquer des boutons ou des potars. L'émulation passe par un retour d'événements selon la touche frappée... C'est plus simple dans mon cas puisque j'ai ajouté une classe ButtonCommanderKeyboard à ma librairie, qui n'existe que pendant la compilation VisualStudio !

3 Emulation des sorties
  A vrai dire, ce n'est pas vraiment nécessaire. Du temps de la mise au point de UAD, je n'avais pas pris la peine d'émuler quoi que ce soit. Se mettre dans une situation donnée et regarder le comportement sous debuggeur pour comprendre ce qui se passe est déjà en soi un grand pas en avant... Par contre pour LcdUi qui me permet de créer une interface utilisateur sur un écran Lcd, j'ai vraiment émulé cet écran avec une fenêtre windows (voir image plus haut) et j'en ai profité pour ajouter une console série qui réagit aux ordres de Serial.print !

Tout ça suppose que tu te trouve un environnement de travail comme un Gcc, un Eclipse ou Visual Studio Community gratuit sous Windows, et que tu te codes ce dont je viens de parler. Evidemment on est disposés à t'aider dans cette démarche...

623
Trucs & astuces / Re : Techniques de mise au point
« le: novembre 04, 2015, 10:24:25 am »
A vrai dire, j'ai aussi un truc similaire. Je suis un utilisateur historique de Visual Studio, c'est pourquoi dans mes zip de bibliothèque il y a toujours un répertoire VStudio avec un fichier 'solution' qui permet de déboguer un programme ino. Pour arriver au bout de cette possibilité, j'ai dû créer un arduino.h dédié.

//-------------------------------------------------------------------
#ifndef __arduino_H__
#define __arduino_H__
//-------------------------------------------------------------------

#define int8_t signed char
#define uint8_t unsigned char
#define uint16_t unsigned int
#define boolean bool
#define byte unsigned char
#define strcpy_P(d, s) strcpy_s(d, this->sizex + 1, s)

#define HIGH 1
#define LOW 0
#define INPUT 1
#define INPUT_PULLUP 3
#define OUTPUT 2
#define DEC 1
#define BIN 2
#define HEX 3
#define NULL 0
#define PROGMEM
#define PGM_P   const char *

#define NUM_DIGITAL_PINS            70
#define NUM_ANALOG_INPUTS           16

#define CHANGE 1
#define FALLING 2
#define RISING 3

#define F(string) string
#define __FlashStringHelper char
#define prog_char char
byte pgm_read_byte(const char *);
int pgm_read_word(const char *);

void pinMode(int, int);
void digitalWrite(int, int);
int digitalRead(int);
void analogWrite(int, int);
int analogRead(int);
unsigned long millis();
unsigned long micros();
void delay(int);

int map(int, int, int, int, int);

void noInterrupts();
void interrupts();
void attachInterrupt(uint8_t, void(*)(void), int mode);
void detachInterrupt(uint8_t);

int freeMemory();

double power(double val, int exp);

//-------------------------------------------------------------------
#endif
//-------------------------------------------------------------------

Il me permet dans le pire des cas de ne rien faire, ou au mieux de faire semblant... Il y a aussi d'autres include comme serial.h ou LiquidCrystalFast.h ...

Pour LcdUi, et DcDcc qui l'utilise, j'ai créé un 'émulateur' d'Arduino, qui va afficher un écran Lcd texte jusqu'à quatre lignes et une console série (les Serial.print() vont dedans...):


C'est tellement plus pratique de tester l'interface utilisateur sur un vrai écran, avec des touches clavier pour faire semblant de manipuler l'encodeur ou les boutons...

Il  y a aussi un define VISUALSTUDIO pour conditionner certaines lignes de code...

624
Trucs & astuces / Re : Techniques de mise au point
« le: octobre 27, 2015, 05:55:39 pm »
C'est pas bête du tout.

Pour ma part j'utilise un #define DEBUG_MODE dans mes bibliothèques. S'il est actif (c'est livré commenté, donc inactif, dans le .h principal de la librairie) des tests sont effectués sur les arguments de fonctions (index hors limites, valeurs impossibles, choses non allouées...) et les messages d'erreur correspondants sont affichés sur la console série. Il y a aussi des messages d'information signalant l'utilisateur de ce qui se passe : utilisation d'un bouton, réception d'un code DCC, demande de mouvement d'un moteur, etc... Et j'en profite pour ajouter un copyright et le numéro de version au tout début du Setup... L'utilisation du #define permet de ne pas prendre de mémoire et de temps supplémentaire d'exécution en version 'production'.

625
C'est une bonne idée, et une extension possible pour UAD. Lorsque ça marchera et si tu le permet, je verrai pour l'inclure dans la librairie !

626
Présentez vous ! / Re : Salut à Tous
« le: septembre 25, 2015, 09:52:45 pm »
Bienvenue chez nous, et heureux que UAD ai pu te rendre service !

627
Vos projets / Re : Projet servo-aiguille
« le: septembre 21, 2015, 04:51:06 pm »
C'est aussi ce qu'il m'a semblé.

628
Vos projets / Re : Projet servo-aiguille
« le: septembre 21, 2015, 03:24:44 pm »
Je ne sais pas pour Mac, mais pour Windows j'ai décompressé le Zip, et lancé le processing.exe qui est dedans. C'est un clone de l'IDE Arduino, et c'est là que j'ai jeté le source de Guillaume.

629
Vos projets / Re : Projet servo-aiguille
« le: septembre 21, 2015, 11:48:06 am »
Ben, pour tester je l'ai juste décompressé sur le fond d'écran  ::) ... Sinon, j'ai un répertoire dédié sur le deuxième disque dur pour installer les applis en tout genre.

630
Vos projets / Re : Projet servo-aiguille
« le: septembre 20, 2015, 07:00:55 pm »
Sur Window 8.1 64 j'ai bien

0 : COM4

qui est connecté à un Mega.

Pages: 1 ... 40 41 [42] 43 44 45