Aller au contenu

GO Print

Marlin 1.1.4 comment sa fonctionne ?


Messages recommandés

Bonjour tout le monde,

voici le premier sujet que je poste sur ce forum,  j’espère que ce sera compréhensible bref voici mon problème...

J'ai exploré plusieurs fois marlin 1.1.4 mais je n'arrive toujours pas a comprendre le fonctionnement de ce firmware car je n'arrive pas a trouvé les parties du "traitements" du G-code...

J'aimerai donc savoir comment ce firmware fonctionne qu'elle est sa "hiérarchie" de fonctionnement (en gros comment il gère l'ecran + l'encodeur rotatif tout en gerant le g-code et les impulsions sur les driver de moteur pas a pas) car j'ai une idée de projet en tête mais il me faut d'abord comprendre et connaitre le fonctionnement de ce firmware (et leur extensions ".h" associés si possible)

Je sais que je demande beaucoup mais n’étant pas anglophone j'ai assez de mal a comprendre les docs en anglais ...

Merci d'avance pour vos réponses et pour votre temps passés a m'aider..

P.S : désolé si je l'ai posté dans la mauvaise section ...

Lien vers le commentaire
Partager sur d’autres sites

Salut je suis loin d'être expert en Marlin mais je l'étudie car je veux intégrer des fonctions (j'en suis loin très loin lol)

mais pour avoir un peu étudié je sais que la gestion de l'écran en tout cas pour ma DE200 c'est dans utralcd.cpp et ultralcd.h dans certaines menu il y a des envois de GCODE

Exemple (ultralcd.cpp)

    //
    // Auto Home
    //
    MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28"));

 

1] Ici un menu qui en premier paramètre qui envoi un gcode (y'a aussi function pour fonction et submenu pour sous menu)

2] Ici un message texte simple contenue dans le fichier langage_fr.h

3] et enfin envoie d'un GCODE G28 pour l'auto home

Voila un semblant de réponse malgré je pense si tu ne maîtrise pas un peu l'anglais tu vas vraiment peiné je suis pas doué mais j'ai de l'anglais technique qui m'aide bcp

Voila j'espere que je t'ai donné un début de piste pour te lancé dans ton projet

 

Jey

Lien vers le commentaire
Partager sur d’autres sites

Merci beaucoup pour votre réponse, moi aussi je voudrais essayer d’implémenter une fonction qui me semble super utile mais bon c'est pas gagné vue la complexité du firmware ...

Enfaîte il me faudrait trouver la gestion de "ligne" de lecture sur la carte SD lors d'impression sur carte SD ...

J'ai trouver ce passage qui décode le g-code (extrait de gcode.cpp)

void GCodeParser::parse(char *p) {

  reset(); // No codes to report

  // Skip spaces
  while (*p == ' ') ++p;

  // Skip N[-0-9] if included in the command line
  if (*p == 'N' && NUMERIC_SIGNED(p[1])) {
    #if ENABLED(FASTER_GCODE_PARSER)
      //set('N', p + 1);     // (optional) Set the 'N' parameter value
    #endif
    p += 2;                  // skip N[-0-9]
    while (NUMERIC(*p)) ++p; // skip [0-9]*
    while (*p == ' ')   ++p; // skip [ ]*
  }

  // *p now points to the current command, which should be G, M, or T
  command_ptr = p;

  // Get the command letter, which must be G, M, or T
  const char letter = *p++;

  // Nullify asterisk and trailing whitespace
  char *starpos = strchr(p, '*');
  if (starpos) {
    --starpos;                          // *
    while (*starpos == ' ') --starpos;  // spaces...
    starpos[1] = '\0';
  }

  // Bail if the letter is not G, M, or T
  switch (letter) { case 'G': case 'M': case 'T': break; default: return; }

  // Skip spaces to get the numeric part
  while (*p == ' ') p++;

  // Bail if there's no command code number
  if (!NUMERIC(*p)) return;

  // Save the command letter at this point
  // A '?' signifies an unknown command
  command_letter = letter;

Mais je n'arrive pas a repérer la gestion de ligne ... Si quelqu'un sait comment Marlin utilise la carte SD je suis preneur :)

Merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...