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 - Jean-Luc

Pages: 1 2 [3] 4 5 ... 90
31
Bibliothèques / Re : Bibliothèque SlowMotionServo
« le: février 22, 2022, 09:30:27 pm »
Ça devrait pouvoir se faire.

Je vais regarder.  :)

32
Composants / Re : Re : Benchmark MCU
« le: janvier 20, 2022, 10:25:23 pm »
( Peut-être mon programme fait-il en effet de l'attente active ? J'avoue ne pas savoir ce que c'est mais je soupçonnais quelque chose de ce genre.

C'est simple. l'I2C fonctionne à 400kHz. Envoyer un octet à un périphérique nécessite ~16 bits, soit 40µs. Si le processeur doit envoyer plusieurs fois un octet, il doit attendre que le précédent soit parti du registre I2C. Pour cela il teste en boucle un bit d'état de l'I2C qui indique sa disponibilité. Pendant tout ce temps le CPU ne fait rien d'autre que d'attendre l'I2C. C'est ce qu'on appelle une attente active. Ça se passe à l'intérieur de la bibliothèque SSD1306.

Pour résoudre le problème, on peut
  • faire une bibliothèque qui permet au programme de tester si l'I2C est libre et s'il ne l'est pas de faire autre chose. Ça revient à faire du multitâches à la main, c'est à la charge du programmeur et c'est pas drôle.
  • faire une bibliothèque qui gère un tampon d'octets à envoyer à l'I2C et qui effectue le transfert sur interruption « I2C dispo »
  • Le top : dégotter une bibliothèque qui utilise le DMA du Teensy 3.5 pour gérer par matériel un transfert mémoire vers l'I2C de manière autonome et pendant ce temps là le CPU fait autre chose.
 

33
Composants / Re : Benchmark MCU
« le: janvier 18, 2022, 02:26:46 pm »
Il faut aussi déterminer ce qui coince.

De ce que j'ai lu plus haut, c'est l'I2C. On pourra mettre le CPU le plus véloce qu'on veut, si le programme consiste à faire de l'attente active sur l'envoi de trames I2C, il ira à la vitesse de l'I2C, c'est à dire pas bien vite. :)

Le problème ne serait-il pas le fait que les fonctions Arduino font de l'attente active pour attendre que l'I2C soit dispo ?

34
JMRI et Arduino / Re : Protocole de pilotage
« le: janvier 16, 2022, 04:49:02 pm »
Bonjour Erik,

Je n'utilise pas C/MRI. J'avais commencé cette bibliothèque pour essayer de faire quelque chose de correct. L'idéal serait qu'un Locoduinaute utilisateur de CMRI la reprenne.

Pour le carte 24IN/48OUT, je ne sais pas.

Bonne année 2022 également  ;)

35
Trucs & astuces / Re : Allumer et éteindre des LEDs
« le: novembre 02, 2021, 03:57:02 pm »
Bonjour,

Sauf erreur de ma part, elle fonctionne avec tout type d'Arduino

Cordialement

36
Débuter / Re : Lecture d'une carte SD
« le: octobre 24, 2021, 07:58:34 pm »
Bonsoir,

Si il s'agit d'écrire et de lire des données dans un fichier de la SD card, il est moins coûteux et plus simple d'écrire en binaire via write et de lire via read plutôt que de passer via des chaînes de caractères.

read et write ont notamment une version avec 2 arguments. Le premier est un pointeur vers les données en mémoire (un uint8_t ¨*) et le second le nombre d'octet.

Ainsi écrire un entier de 32 bits se ferait comme suit :

uint32_t donnee = 128000;
file.write((uint8_t *)&donnee, sizeof(donnee));

De manière symétrique, on lirait comme ceci :

file.read((uint8_t *)&donnee, sizeof(donnee));

Les deux méthodes retournent le nombre d'octets effectivement écrits ou lus. Ça permet de vérifier que tout se passe bien, que la carte n'est pas pleine, qu'on n'a pas atteint la fin de fichier :

if (file.read((uint8_t *)&donnee, sizeof(donnee)) != sizeof(donnee)) {
    // erreur
}

Je n'ai pas de SD card et je ne peux donc pas fournir un exemple testé.

37
Vie du forum / Problème d'accès au site rédactionnel
« le: octobre 01, 2021, 10:16:51 am »
Bonjour à tous.

Vous avez sans doute constaté que le site rédactionnel est inaccessible et, si vous lisez ceci, vous vous êtes connecté au forum en http et non en https.

Je pense que vous avez sans doute entendu parlé du problème de l'expiration d'un certificat ROOT. La presse en a parlé récemment, soulignant que les vieux terminaux ne pourraient plus accéder à nombre de site et qu'il fallait installer Firefox pour contourner ce problème. Quell blague. Comme d'habitude, la presse n'avait rien compris au problème. Je pense avoir compris mais je n'en suis pas sûr.

Le problème se situe en fait du côté des certificats SSL des serveurs. Beaucoup de sites sont inaccessibles en https mais restes accessibles en http (pas de certificat nécessaire).

J'avais ajouté l'accès en https sur le forum et le site rédactionnel il y a quelques temps et il faut que je revienne en arrière mais je ne pourrai le faire que ce week-end. Peut-être qu'entre temps OVH aura réglé le problème de son côté, en renouvelant ses certificats. Mais rien n'est sûr.

38
Débuter / DÉPLACÉ: Techniques de mise au point
« le: août 24, 2021, 04:22:05 pm »

39
Vos projets / Re : projet centrale "LaBox" wifi DCC++ Can
« le: mai 12, 2021, 03:37:03 pm »
Ok, donc l'écran n'est pas connecté comme indiqué dans l'article. Pourquoi y aurait-il le même problème ?

Ou alors c'est un snafu avec la numérotation d'IO vu le bazar intégral de l'ESP32 à ce niveau :)

40
Vos projets / Re : projet centrale "LaBox" wifi DCC++ Can
« le: mai 12, 2021, 03:13:44 pm »
Ça viendrait pas de l'IO12 ça ? (boot fails if pulled high). l'I2C est pas dispo ailleurs ?

41
Vos projets / Re : Re : projet centrale "LaBox" wifi DCC++ Can
« le: mai 12, 2021, 03:01:43 pm »
N’oublions pas que le fait de devoir débrancher le Vcc pendant le téléversement et le rebrancher dans les 2 secondes qui suivent va être une difficulté ou cause d’échec pour pas mal de gens.

 ???

C'est à dire ?

42
Vos projets / Re : Un Arduino par canton
« le: mai 11, 2021, 07:05:46 pm »
Quelques conseils  :) :

1 - Indentez proprement votre programme, tout doit être bien aligné et bien mis en page. C'est sans effort : vous avez une commande « Formattage automatique » dans le menu outils de l'IDE.

2 - faites des fonctions par thème :

initialiseFeux
initialiseDetection

etc

et appelez les dans setup

Une fonction doit tenir sur l'écran sans avoir à scroller, ça permet de la comprendre en un coup d'œil  ;)

43
Vos projets / Re : Un Arduino par canton
« le: mai 11, 2021, 06:51:47 pm »
Ok

Donc votre PWM il faut la régler avec

pwmsynchro.analogWrite(vitesse);

Partout

Si vous utilisez le analogWrite qui vient avec le logiciel Arduino, vous cassez la synchro (Je suppose, j'ai pas regardé ce que ça fait)

44
Vos projets / Re : Un Arduino par canton
« le: mai 11, 2021, 06:23:59 pm »
Ok.

Le premier problème que je vois est que il devrait y avoir un objet SyncPWM du côté du sketch des Arduino de canton également. Vous pouvez me mettre le sketch complet ?

45
Vos projets / Re : Un Arduino par canton
« le: mai 11, 2021, 01:44:55 pm »
Sur l'Arduino qui envoie la clock ?

Pages: 1 2 [3] 4 5 ... 90