Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : mazertoc
Soft de commande CNC en asm
- F6FCO
Expert- Messages : 1413
- Âge : 70
- Enregistré en : décembre 2017
- Localisation : Furtif je suis.
- Contact :
Toi tu as envie à tout prix que je n'aie pas compris un truc
J'ai bien pigé que 'equ' place une variable à un endroit spécifique en mémoire mais aussi qu'il peut servir à 'nommer' une variable et c'est ce qui me gène, c'est un coup à faire des erreurs.
Désolé pour la pièce à conviction mais je ne pourrai plus te la fournir, çà date maintenant et j'ai modifié le programme depuis.
J'ai bien pigé que 'equ' place une variable à un endroit spécifique en mémoire mais aussi qu'il peut servir à 'nommer' une variable et c'est ce qui me gène, c'est un coup à faire des erreurs.
Désolé pour la pièce à conviction mais je ne pourrai plus te la fournir, çà date maintenant et j'ai modifié le programme depuis.
Soft de commande CNC en asm
C'est surtout que j'ai la flemme de reformuler :)
Je pensais que tu avais déclaré une variable, alors que tu avais déclaré une constante, on lit trop vite, et on se comprend difficilement.
D'ailleurs on s'est toujours pas compris :)
equ c'est une assignation, il désigne une valeur numérique, comme tu l'avais dit. Mais l'assembleur, lui ne sait pas si c'est l'adresse d'une variable ou une constante, alors il la met dans file registers, pour infomation.
Après tu utilises cblock ou equ pour les variables, chacun ses habitudes.
Si on utilise equ pour variables et constantes, on peut mettre les constantes en majuscules et les variables en minuscules, pour les différencier.
Pour les constantes, je préfère #define, qui d'ailleur va plus loin car on peut mettre autre chose qu'une valeur numérique. Toujours avec des majuscules, vieille habitude venant du C.
Je pensais que tu avais déclaré une variable, alors que tu avais déclaré une constante, on lit trop vite, et on se comprend difficilement.
D'ailleurs on s'est toujours pas compris :)
equ c'est une assignation, il désigne une valeur numérique, comme tu l'avais dit. Mais l'assembleur, lui ne sait pas si c'est l'adresse d'une variable ou une constante, alors il la met dans file registers, pour infomation.
Après tu utilises cblock ou equ pour les variables, chacun ses habitudes.
Si on utilise equ pour variables et constantes, on peut mettre les constantes en majuscules et les variables en minuscules, pour les différencier.
Pour les constantes, je préfère #define, qui d'ailleur va plus loin car on peut mettre autre chose qu'une valeur numérique. Toujours avec des majuscules, vieille habitude venant du C.
Soft de commande CNC en asm
- F6FCO
Expert- Messages : 1413
- Âge : 70
- Enregistré en : décembre 2017
- Localisation : Furtif je suis.
- Contact :
C'est vrai que ce n'est pas toujours simple de parler de la même chose par forum interposé.
- alors non je n'ai pas voulu déclarer de variable mais bien une constante, d’où mon étonnement au vu du résultat
- pour les variables j'utilise CBLOCK.
- pour les constantes j'utiliserai dorénavant #define, faut rester carré.
- alors non je n'ai pas voulu déclarer de variable mais bien une constante, d’où mon étonnement au vu du résultat
- pour les variables j'utilise CBLOCK.
- pour les constantes j'utiliserai dorénavant #define, faut rester carré.
Soft de commande CNC en asm
Soft de commande CNC en asm
Soft de commande CNC en asm
Soft de commande CNC en asm
Soft de commande CNC en asm
- Gérard
Expert- Messages : 1653
- Âge : 65
- Enregistré en : septembre 2015
- Localisation : Alsace - Haut-Rhin
F6FCO a écrit :Aujourd'hui à 17h58, j'ai déclaré:
"Waoooooo ! Waoooooo! P....n de sa m..e !!!! le c.. de sa race !!!! çà marcheeeeeee !!".
Que des trucs que je dis rarement.
F6, les gros mots sont autorisés dans 2 cas :
- quand ça ne marche pas, pour se défouler
- quand ça marche, pour se défouler
pour ta réussite
Soft de commande CNC en asm
- F6FCO
Expert- Messages : 1413
- Âge : 70
- Enregistré en : décembre 2017
- Localisation : Furtif je suis.
- Contact :
Ouf, je suis dans les clous pour les gros mots
Ah oui Jeremy, on ne s'en lasse pas, qui plus est quand on a beaucoup bossé pour y arriver.
JMarc, çà fonctionne correctement chez moi, peut-être une histoire de config de MPLab, on peut comparer nos réglages si tu veux. Voici un écran de mon espace de travail:
Alors pour la vidéo c'était prévu, je suis parti avec mes béquilles jusqu'au garage ou on a stocké les cartons du déménagement mais pas moyen de mettre la main sur le pied photo, mais promis je compte faire une belle vidéo quand tout sera fonctionnel. Pour l'instant je n'ai travaillé que sur l'axe X qui est fonctionnel, sauf la partie POP qui n'est pas encore intégrée. Je vais travailler dessus dés demain. Pour faire le point actuel l'axe X m'obéit au doigt et à l'oeil, le chariot se déplace bien dans les deux sens suivant les directives du gcode. Je me suis amusé une bonne partie de l'après-midi à faire des gcodes tests et refaire les calculs manuellement pour valider ce que j'observais sur l'analyseur logique.
Seul bémol, j'étais passé en osc interne 32mhz et l'uart avait un comportement anarchique, je suis repassé en xtal 4Mhz et tout est rentré dans l'ordre. J'espère que cette fréquence un peu basse ne me gènera pas.
Ah oui Jeremy, on ne s'en lasse pas, qui plus est quand on a beaucoup bossé pour y arriver.
JMarc, çà fonctionne correctement chez moi, peut-être une histoire de config de MPLab, on peut comparer nos réglages si tu veux. Voici un écran de mon espace de travail:
Alors pour la vidéo c'était prévu, je suis parti avec mes béquilles jusqu'au garage ou on a stocké les cartons du déménagement mais pas moyen de mettre la main sur le pied photo, mais promis je compte faire une belle vidéo quand tout sera fonctionnel. Pour l'instant je n'ai travaillé que sur l'axe X qui est fonctionnel, sauf la partie POP qui n'est pas encore intégrée. Je vais travailler dessus dés demain. Pour faire le point actuel l'axe X m'obéit au doigt et à l'oeil, le chariot se déplace bien dans les deux sens suivant les directives du gcode. Je me suis amusé une bonne partie de l'après-midi à faire des gcodes tests et refaire les calculs manuellement pour valider ce que j'observais sur l'analyseur logique.
Seul bémol, j'étais passé en osc interne 32mhz et l'uart avait un comportement anarchique, je suis repassé en xtal 4Mhz et tout est rentré dans l'ordre. J'espère que cette fréquence un peu basse ne me gènera pas.
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Soft de commande CNC en asm
- F6FCO
Expert- Messages : 1413
- Âge : 70
- Enregistré en : décembre 2017
- Localisation : Furtif je suis.
- Contact :
A ce stade je viens de faire des captures d'écran du fonctionnement d'4L1C3:
Petit gcode simple qui me sert à faire mes tests, je rappelle que je ne traite pour l'instant que l'axe X:
Capture du premier train de données reçues X0001 Y0001 Z0001. On y voit les valeurs ASCII contenues dans le train (le 13 et le 10 finaux sont le retour ligne et l'interligne),
- la ligne CTS passe à l'état bas pour autoriser la réception UART venant du PC.
- on reçoit la première ligne gcode XYZ
A la fin du train:
- la ligne CTS repasse à l'état haut pour stopper la réception
- la série de pulses démarre et est transmise aux moteurs via les drivers
- la ligne de direction (CW/CCW) passe à l'état haut donc translation en sens avant.
Capture un peu plus large de ce qui se passe entre deux trains de données, ici entre la première et la deuxième ligne du gcode:
X0001 donc 1mm à parcourir, en 1/4pas çà fait 800 pulses, ce qui est validé par l'analyseur logique
La ligne CTS reste à l'état haut le temps aux axes de se mouvoir, ceci fini elle repasse à zéro le temps d'autoriser le deuxième train (la deuxième ligne de gcode) et rebelote.
La ligne de direction ne change pas car on reste en sens avant.
L'analyseur indique aussi la fréquence des pulses qui est de 4,59Khz, fréquence idéale de fonctionnement pour ce couple driver/PAP, définie aux essais avec le géné TTL.
A noter que pour le programme recalcule le nombre de pulses à générer, pour le deuxième train X=0003 on aurait du générer 3x800=2400pulses mais on en fera en réalité que 1600 car on a déjà parcouru 800 dans la même direction.
Petit gcode simple qui me sert à faire mes tests, je rappelle que je ne traite pour l'instant que l'axe X:
Capture du premier train de données reçues X0001 Y0001 Z0001. On y voit les valeurs ASCII contenues dans le train (le 13 et le 10 finaux sont le retour ligne et l'interligne),
- la ligne CTS passe à l'état bas pour autoriser la réception UART venant du PC.
- on reçoit la première ligne gcode XYZ
A la fin du train:
- la ligne CTS repasse à l'état haut pour stopper la réception
- la série de pulses démarre et est transmise aux moteurs via les drivers
- la ligne de direction (CW/CCW) passe à l'état haut donc translation en sens avant.
Capture un peu plus large de ce qui se passe entre deux trains de données, ici entre la première et la deuxième ligne du gcode:
X0001 donc 1mm à parcourir, en 1/4pas çà fait 800 pulses, ce qui est validé par l'analyseur logique
La ligne CTS reste à l'état haut le temps aux axes de se mouvoir, ceci fini elle repasse à zéro le temps d'autoriser le deuxième train (la deuxième ligne de gcode) et rebelote.
La ligne de direction ne change pas car on reste en sens avant.
L'analyseur indique aussi la fréquence des pulses qui est de 4,59Khz, fréquence idéale de fonctionnement pour ce couple driver/PAP, définie aux essais avec le géné TTL.
A noter que pour le programme recalcule le nombre de pulses à générer, pour le deuxième train X=0003 on aurait du générer 3x800=2400pulses mais on en fera en réalité que 1600 car on a déjà parcouru 800 dans la même direction.
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Retourner vers « Langage ASM »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 46 invités