Sorry, you must be logged in to use the shoutbox!

Auteur Sujet: Bloc BMP180 - capteur pression ?  (Lu 111 fois)

benjamin45

  • Newbie
  • *
  • Messages: 4
    • Voir le profil
Bloc BMP180 - capteur pression ?
« le: janvier 08, 2019, 04:16:10 pm »
Bonjour,

Super boulot Blockly@rduino, c'est franchement bien fichu !
Est-ce qu'il existe un endroit où on peut trouver des "bloc" pas encore ajouté au core du soft ? Je cherche notamment un bloc pour le capteur de pression BMP180

Merci à vous  ;D

SebCanet

  • Administrator
  • Sr. Member
  • *****
  • Messages: 487
    • Voir le profil
Re : Bloc BMP180 - capteur pression ?
« Réponse #1 le: janvier 08, 2019, 10:56:05 pm »
Bonjour,
merci du compliment, je fais ce que je peux avec mes maigres moyens...tant mieux si ça plait.

Hélas il n'y a pas de dépôt caché de blocs...si ça n'apparaît pas c'est que ça n'existe pas encore. Donc il ne reste plus qu'à le(s) créer : http://www.libreduc.cc/wiki/doku.php/fr/arduino/blockly_rduino/creerblocsmultiling
Il n'y a plus ensuite qu'à demander de l'aide si besoin, les partager ensuite, finalement les documenter (sur le wiki...).

Bons tests.

benjamin45

  • Newbie
  • *
  • Messages: 4
    • Voir le profil
Re : Bloc BMP180 - capteur pression ?
« Réponse #2 le: janvier 10, 2019, 06:35:36 pm »
Bonjour,

Je rencontre quelques soucis dans la création de bloc..

L'entrée dans le menu fonctionne bien, par contre mon bloc ne génère pas de code...

generators/arduino/xxx.js
/**
 * Block pour les modules utilises par xxx
 * @author xxx
 */
'use strict';

goog.provide('Blockly.Arduino.xxx');
goog.require('Blockly.Arduino');


Blockly.Arduino.il_bmp180_read = function() {
 
  Blockly.Arduino.inludes_['define_wire'] = '#include <Wire.h>\n';
  Blockly.Arduino.inludes_['define_bmplib'] = '#include <Adafruit_BMP085.h>\n';
 
  Blockly.Arduino.definitions_['define_instance'] = 'Adafruit_BMP085 bmp;\n';

  Blockly.Arduino.setups_['setup_bmp'] = 'bmp.begin();\n';
 
 
  var code = 'bmp.readPressure()/100;\n'
  return code;
 
};


Où sont mes erreurs ?


Merci :)
« Dernière modification: janvier 10, 2019, 06:49:55 pm par benjamin45 »

SebCanet

  • Administrator
  • Sr. Member
  • *****
  • Messages: 487
    • Voir le profil
Re : Bloc BMP180 - capteur pression ?
« Réponse #3 le: janvier 10, 2019, 08:59:29 pm »
As tu aussi alimenté le fichier \generators\arduino_resume.js ?
La console du navigateur te dit quoi ?

fontaine.jp

  • Full Member
  • ***
  • Messages: 115
    • Voir le profil
Re : Bloc BMP180 - capteur pression ?
« Réponse #4 le: janvier 10, 2019, 10:29:18 pm »
Salut,
il manque un point virgule à la fin de la ligne var code = 'bmp.readPressure()/100;\n'
sinon regarde dans la console les messages d'erreurs.
A+

benjamin45

  • Newbie
  • *
  • Messages: 4
    • Voir le profil
Re : Bloc BMP180 - capteur pression ?
« Réponse #5 le: janvier 11, 2019, 09:42:15 am »
Bonjour,

J'ai bien alimenté le arduino_resume.js :

J'ai ajouté la ligne
"generators/arduino/xxx.js",


Bien vue pour le point virgule, je ne devais plus avoir les yeux en face des trous hier !

Bon, toujours pas de code, et même les autres blocs ne génèrent plus de code tant qu'il y a mon bloc ... J'ai du merder quelquepart !

Où trouver cette console ? Je ne vois pas

benjamin45

  • Newbie
  • *
  • Messages: 4
    • Voir le profil
Re : Bloc BMP180 - capteur pression ?
« Réponse #6 le: janvier 11, 2019, 10:24:19 am »
Sans fautes de frappe ca fonctionne mieux !

inlude au lieu de inClude .... + un petit soucis avec le \n dans le var code =

Version fonctionnelle :

Citation
Blockly.Arduino.il_bmp180_read = function() {
 
  Blockly.Arduino.includes_['define_wire'] = '#include <Wire.h>';
  Blockly.Arduino.includes_['define_bmplib'] = '#include <Adafruit_BMP085.h>\n';
 
  Blockly.Arduino.definitions_['define_instance'] = 'Adafruit_BMP085 bmp;\n';
   
  Blockly.Arduino.setups_['setup_bmp'] = 'bmp.begin();\n';
 
 
  var code = 'bmp.readPressure()/100';
  return code;
 
};

EDIT :
Le bloc fonctionne tant qu'il est "dan le vide", le bon code est bien ajouté, mais si j'encastre le bloc pour donner une valeur à une variable par exemple, le code devient "mavariable = 1ere lettre de ce que devrait retourner mon bloc" exemple : "pressure = b;"

PS : la vérification avant de pouvoir poster est franchement horrible !  :'(
« Dernière modification: janvier 11, 2019, 10:50:13 am par benjamin45 »

benjamin45

  • Newbie
  • *
  • Messages: 4
    • Voir le profil
Re : Bloc BMP180 - capteur pression ?
« Réponse #7 le: janvier 11, 2019, 11:47:53 am »
Je n'ai pas réussi à trouver à quoi ca servait, mais il fallait modifier :

return [code, Blockly.Arduino.ORDER_ATOMIC];
Et la ça fonctionne !

SebCanet

  • Administrator
  • Sr. Member
  • *****
  • Messages: 487
    • Voir le profil
Re : Bloc BMP180 - capteur pression ?
« Réponse #8 le: janvier 11, 2019, 02:47:58 pm »
Félicitations !!!!  :D
Tu m'envoies ta version et je le rajoute au pot commun !