En cours Leonardo bootloader help...

  • Auteur de la discussion gaston83
  • Date de début
G

gaston83

Compagnon
Okkkkk... j'ai compris...

Dés que je branche la leonardo, il est détecté ok mais j'ai le message "BP presse" qui défile sans arrêt sans appuyer sur le bouton ...?
 
J

jpbbricole

Compagnon
Salut Gaston
j'ai le message "BP presse"
Bizarre! d'après le schéma
1552474972554.png

C'est actif à 0?
Quel potentiel as-tu sur la broche 5, bouton pressé et bouton relâché?

Essaies de modifier cette ligne
#define codRotBPinvert true // Si inversion du BP du fait de PULL_UP
en
#define codRotBPinvert false // Si inversion du BP du fait de PULL_UP


A +
Cordialement
jpbbricole
 
G

gaston83

Compagnon
bizarre sur la pin5, j'ai 0.6 v (je devrais avoir 5V) et 0 quand j'appuis. J'ai bien zéro quand j'appui ..
 
Dernière édition:
G

gaston83

Compagnon
J'ai essayé d'autre pin c'est pareil. J'ai testé le bouton sur la carte proto, c'est bon aussi .... oui, j'ai fait aussi la modif "false" c'est pareil

sinon, le moins et plus ça va ... ça fonctionne
 
Dernière édition:
G

gaston83

Compagnon
J'ai essayé avec ce sketch, c'est bon ça marche. J'ai bien 5V sur la 5 et quand j'appui 0 et la led s'allume.

Donc la carte est bonne, le bouton aussi...



// constants won't change. They're used here to set pin numbers:
const int buttonPin = 5; // the number of the pushbutton pin
const int ledPin = 13; // the number of the LED pin

// variables will change:
int buttonState = 0; // variable for reading the pushbutton status

void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT_PULLUP);
}

void loop() {
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);

// check if the pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonState == LOW) {
// turn LED on:
digitalWrite(ledPin, HIGH);
} else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}
 
Dernière édition:
J

jpbbricole

Compagnon
Salut Gaston

J'ai trouvé une c.....ie dans mon programme provoquée par le changement de librairie, des paramètres sont croisés

Changes
Button codRocPB(codRotBPpin, codRotBPpullup, codRotBPinvert, codRotBPdebounce);
par
Button codRocPB(codRotBPpin, LOW, codRotBPdebounce, codRotBPpullup);


A+
Cordialement
jpbbricole
 
G

gaston83

Compagnon
Re,

Bon, je t'ai assez solliciter là... j'ai fait la modif mais ça marche pas.... c'est pas grave j'y reviendrais plus tard...

J'ai viré tout ce qui en rapport avec ce bouton pour ne garder que l'essentiel soit le rotatif pour aller à droite et à gauche. Donc, maintenant au lieu de transmettre du texte je dois pouvoir envoyer le code de la touche "direction droite" et "direction gauche".

Au fait, merci pour ta patience... et tes conseils. :smt023
 
G

gaston83

Compagnon
RE, re...

Bon, hé bien c'est parfait... ça fonctionne du feu de dieu... au fait, une devinette... sais-tu pourquoi c'est faire ? :hhhha:
 
J

jpbbricole

Compagnon
Pour "télécommander" un programme, le déplacement d'un axe?

Cordialement
jpbbricole
 
G

gaston83

Compagnon
hé uiiiiii... voilà.

Maintenant ce qui va être plus difficile pour moi, c'est de trouver comment "changer le saut" mais ... en y réfléchissant ... si le pointeur de la souris se trouve sur la case, il me suffit de simuler le clic gauche...
 
G

gaston83

Compagnon
C'est bon, c'est fait.... c'est Mach3.

/*---------------------------------------------------------------------------------------
'* jpbbricole 2019 03 13
'* modifié gaston 83 (supression du bouton poussoir et ajout clic gauche de la souris)
'* Codeur rotatif basé sur le schéma
'* http://www.mon-club-elec.fr/pmwiki_...ki.php?n=Main.LibrairieS65ShieldRotaryEncoder
'*
'* Avec simulation de touches de clavier PC
'* https://www.arduino.cc/reference/en/language/functions/usb/keyboard/keyboardmodifiers/
'* https://www.arduino.cc/reference/en/language/functions/usb/keyboard/keyboardpress/
'*---------------------------------------------------------------------------------------
*/
#include <Encoder.h> // Gestion bouton rotatif https://github.com/PaulStoffregen/Encoder
#include <Keyboard.h> // Pour simuler les fonctions du clavier
#include <Mouse.h>

const int ClicGauche = 5;

//------------------------------------- Codeur rotatif & boutons
#define codRotApin 6 // Pin du port A
#define codRotBpin 7 // Pin du port B


int rotencIncrement = 0; // Direction de l'encodeur +1 ou -1
Encoder codRot(codRotApin, codRotBpin);

int codRotIncrement = 0; // Direction de l'encodeur +1 ou -1

void setup()

{
pinMode (ClicGauche,INPUT_PULLUP);
Mouse.begin();
Keyboard.begin();
}

void loop()
{
//------------------------------------ Lecture du codeur rotatif

if(digitalRead(5) == LOW){
Mouse.click();
}

codRotIncrement = codRot.read()/4; // Divisé par 4 parcequ chaque impulsion ressentie en tournant le bouton
// Génère 4 impulsions (https://www.logre.eu/wiki/Codeur_rotatif_incrémental)

if (codRotIncrement != 0) // Changement de MS affiché
{
if (codRotIncrement < 0)
{
Keyboard.write(KEY_LEFT_ARROW);
}

if (codRotIncrement > 0)
{
Keyboard.write(KEY_RIGHT_ARROW);
}

codRotIncrement = 0;
codRot.write(0); // Pour remettre le compteur du bouton rotatif à 0 (dans bibliothèque)
}

}

// fin du prog
 
G

gaston83

Compagnon
Re,re, re..

Bon, y a des fois que je comprends plus rien.... tout marchait, avance, le changement de saut et puis ... le bouton ne fonctionne plus. Pourtant quand j'appui dessus le led TX s'allume...pfffffff....
 
G

gaston83

Compagnon
Bonjour jpbbricole,

J'ai un problème.... pour faire des tests de clavier et de souris, j'ai retapé un petit sketch. le bouton souris fonctionne. Le fait d'inclure "keyboard.h" le bouton ne fonctionne plus......

#include <Mouse.h>

#include <Keyboard.h>

void setup() {
pinMode(5, INPUT_PULLUP);
//initiate the Mouse library
Mouse.begin();
}

void loop() {
//if the button is pressed, send a left mouse click
if (digitalRead(5) == LOW) {
Mouse.click();
delay(100);
}

}
 
G

gaston83

Compagnon
RE,
Je viens de trouver ça...
https://www.zem.fr/utiliser-mouse-keyboard-azerty-arduino-pro-micro-teensy/

et il parle de ça ...

En effet, il faut obligatoirement un processeur ATMega32U4 qui gère 2 communications USB simultanément pour pouvoir utiliser la librairie KeyboardMouse. Cette librairie est donc réservée au Arduino Micro, Arduino Due ou bien encore au Arduino Leonardo.

et j'ai fouillé sur le net mais je n'ai pas trouvé cette librairie...
 
G

gaston83

Compagnon
Oui, j'ai vu....

mais c'est quand même bizarre que les deux librairies soient incompatibles...
 
G

gaston83

Compagnon
Dés qu'on inclue la keyboard.h, ça bloque le bouton qui émule le left....
 
S

speedjf37

Compagnon
mais c'est quand même bizarre que les deux librairies soient incompatibles...

Bonjour,

Pas toujours !

Arduino IDE 1.8.5
fichier:
exemples
09.USB
KeyboardAndMouseControl

1552566482146.png
 
G

gaston83

Compagnon
Pas toujours !

Bonjour,

Ok, mais cet exemple n'est pas ce que je recherche..... est-ce que tu peux tester ça... chez moi dés que j'inclue le KeyBoard.h le bouton ne fonctionne plus .


#include <Mouse.h>

// #include <Keyboard.h>

void setup() {
pinMode(5, INPUT_PULLUP);
//initiate the Mouse library
Mouse.begin();
}

void loop() {
//if the button is pressed, send a left mouse click
if (digitalRead(5) == LOW) {
Mouse.click();
delay(100);
}

}
 
G

gaston83

Compagnon
si tu nous expliquais ce que tu veux faire !

C'est simple.... quoique ... :wink: .

Le projet: faire une manivelle pour piloter Mach3 (enfin certaines fonctions) a savoir... le déplacement en X ou Y avec un bouton rotatif (codeur) et pouvoir "changer le saut" 1.00, 0.10, 0.01.
Donc je désirerais utiliser un codeur rotatif (left/right) et un bouton (tout bête) pour émuler le bouton gauche de la souris.

Et pour l'instant, je n'arrive pas à faire fonctionner Keyboard.h et Mouse .h ensemble... ça paraît simple comme ça mais ça fait trois jours que je me prends la tête. Je précise que j'ai essayé un bon nombre d'IDE, de la version 1.6 à 1.8.8.... là, je rends les armes...
 
G

gaston83

Compagnon
Y aurait peut-être une solution extrême. Ce serait d' inclure keyboard.h et de l'exclure avant d'utiliser mouse.... :7grat:
 
G

gaston83

Compagnon
Bonsoir,
C'est ce mode de fonctionnement que tu veux simuler ?

Au meilleur des cas.... oui ce serait le top ! mais bon si j'arrive à envoyer le left et right et la touche gauche de la souris pour le saut ce sera déjà pas mal.

Mais avant de faire tout ça, j'aimerais bien que le petit morceau de code du post #81 fonctionne bien...
 
G

gaston83

Compagnon
Bonjour à tous,

Alors....ou on en est de mon bout de prog en #81.... ? c'est quand même terrible de ne pas pouvoir le faire fonctionner ....

Maintenant, la solution ultime... c'est deux Leonardo, dont une pour le keyboard et l'autre l'autre pour le bouton qui émule la souris.

Donc, deux ports USB sur le PC, deux câbles, pffffffffffff... c'est n'importe quoi !!! mais bon... au pire il faut deux cartes ou alors un HUB pourquoi pas !

Mais c'est quand même idiot d'en arriver là... allez zou la communauté Arduino là, au tafff....

Je pense que c'est un (petit) projet pour l'instant mais je suis sûr que qu'on peut faire beaucoup mieux et cela en intéressera plus d'un .... qu'en pensez-vous....?
 
Dernière édition:
J

jpbbricole

Compagnon
Salut Gaston
allez zou la communauté Arduino là, au tafff....
Je voudrais bien mais, actuellement, j'ai pas le temps. Il faut bien t'imaginer que pour pouvoir t'aider efficacement, il faut faire le montage chez soi et pour toi, j'avais tout démonté :sad:.
Si j'ai le temps ce week-end...

Cordialement
jpbbricole
 
G

gaston83

Compagnon
De mon côté, je continue a fouiller, on sait jamais... :smt082
 

Sujets similaires

osiver
Réponses
14
Affichages
32 936
osiver
osiver
Haut