L'essentiel d'Assembleur

Définir le premier programme pour le PIC24

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Vous allez effectuer votre premier programme sous le compilateur ASM30. Il s'agit d'activer une sortie du PORTA.
07:13

Transcription

Dans cette vidéo, nous allons compiler notre premier fichier pour notre PIC24. Pour cela, il nous faut un compilateur assembleur... qui puisse travailler sur 16 bits. Pour cela, vous allez donc télécharger XC16... en mettant ce mot clé dans votre moteur de recherche préféré. Vous allez tomber directement sur la page de Microchip... dès le premier clic, ici vers le premier lien. Alors, ici nous travaillons sur Windows. Nous allons télécharger le document. Une fois téléchargé, vous n'avez qu'à l'installer en acceptant les conditions... et en cliquant toutes les cases qui sont à cliquer. Donc, une fois que ceci est fait... vous allez devoir redémarrer MPLAB X pour qu'il soit pris en compte. Alors, XC16 est un compilateur conçu... pour programmer les microcontrôleurs avancés. mais, en fait, il a en son sein ASM30. Donc, il comprend très bien un assembleur. Quelques petits paramètres de réglage tout d'abord ici. Ici, il va donc falloir faire loading et cliquer sur cet onglet... pour obtenir en fait, le code désassemblé de votre code assembleur. Vous allez me dire: je fais déjà de l’assembleur ! Oui, mais il y a l'assembleur de la machine... où tout, en fait, n'est que valeur hexadécimale. Après ici, il va falloir cliquer sur COFF et non pas sur ELF... sinon, vous n'allez pas pouvoir simuler votre montage dans Proteus. Donc, on applique tout ceci et puis voilà ! Maintenant, pour créer un nouveau fichier... cette fois-ci ce n'est plus des fichiers .asm, mais des fichiers.s. Surtout, c'est très important. Donc, là c'est pas instantané, car si vous faites ceci vous tombez sur.asm. Donc, vous faites simplement Empty File... et puis, vous lui dites directement.s, puis vous faites Finish. Vous voyez qu'il est bien reconnu là comme un fichier assembleur. Donc, là nous n'en avons plus besoin. Nous allons l'enlever de notre projet. Voilà donc comment on génère le fichier.s. Alors, on enlève et nous sommes partis, en fait, pour quelques explications. Ici, tout change. Vous devez absolument consulter le document qui est celui-ci... Asm30_Link_Utility... que vous pouvez facilement télécharger sur Internet... où vous avez toutes les explications des mots clés utilisés dans ce programme. Tout change et il n'y a plus de #, cette fois-ci, c'est.include... puis.inc qui ne change pas. Après, vous pouvez déclarer différents types de variables. Là, on a un compilateur quand même moins restrictif que précédemment. Pour cela, on peut simplement mettre des constantes... comme nous l'avions précédemment. On peut déclarer en fait des types byte... donc, des octets sous des formes que l'on veut... aussi bien ASCII, que hexadécimal, binaire, etc. Carrément avec le point ASCII, déclarer une chaîne de caractères. Ce qui est carrément génial ! Et si vous voulez aussi entrer des float, il suffit par exemple... là, j'ai fait 3.14E2. Il suffit d'utiliser cette syntaxe. Là, on arrive vraiment sur du compilateur... qui devient vraiment très accessible. Ensuite, vous allez avoir votre première étiquette. Je vous conseille de toujours le faire, c'est-à-dire .global. Attention ! Ici, le tiret tiret reset, est un mot dédié. C'est pour dire, attention, votre programme va commencer à partir d'ici. Derrière cette directive qui s'appelle .text. Si vous ne la mettez pas, ça ne fonctionne pas. C'est quoi le global en fait? Il permet de vérifier que si vous avez des différentes routines... elles soient visibles dans tous vos fichiers.asm, si vous en avez plusieurs. Alors, pour nous il y a rien de très spécifique. Donc, cette fois-ci, on a clr et non pas xrf. Donc, clr LATA, clr PORTA, TRISA, puis cette fois-ci, c'est bset... PORTA si on veut mettre RA0 à 1... et là,il faut mettre #0 pour dire que je mets RA0 à 1. Puis là, on va boucler à l'infini. A la fin, cette fois-ci ce n'est plus le end que on connaissait, mais.end. Attention ! Absolument tout change. Ce sont des recommandations que je vous donne déjà ici... dans le fichier Objectif qui vous permettra de vous y retrouvez un peu... et puis surtout, qui met en exergue toutes les explications que je vous ai données. Alors, nous allons voir aussi au niveau des bits de configuration. Là aussi c'est pareil, il faut aller voir dans le datasheet... et voir aussi, toujours au niveau de notre document ASM30... comment on va effectuer la configuration de nos bits. Alors, attention si vous utilisez l'outil de configuration. Vu que c'est un compilateur C, il va vous faire générer du code C. Donc, si vous faites copier-coller et vous mettez dans le bit de configuration ça ne va pas du tout marcher. Ça ne va pas mélanger le C avec l'assembleur. Alors, voilà ce qui était très important à dire. Nous allons maintenant compiler un peu tout ça. Puis grâce à nos petites options, on va pouvoir faire quelque chose... c'est Debugging, Output, et vérifier que nous avons... le code Désassembler de notre code Assembleur. Voici le code assembleur que j'ai écrit. Vous voyez que tout ça sont des directives et non le code assembleur. Le code assembleur, lui, arrive à partir d'ici. Vous avez ici l'adresse par exemple de LATA, de PORTA... et ici, vous avez l'autre code de CLR. CLR, c'est donc EF2, EF2, EF2. Tandis que l'adresse de LATA est 2C4... et ça, on peut directement le vérifier en allant voir dans le datasheet. 2 c'est 2, c'est bien PORTA, et 2 c'est 0 pour TRISA. Aucun problème là dessus. En fait, vous vous retrouvez bien ici avec l'autre code. Puis le linker nous a directement plugger notre programme... à partir de l'adresse 28A. Voilà concernant le fichier Désassembler de votre fichier Assembleur. Cela peut paraître encore un peu incroyable. Vérifions rapidement quand même que notre LED fonctionne très bien. J'ai donc implanté le point ECS à l'intérieur. J'ai appuyé et là forcément, nous avons notre LED qui s'allume.

L'essentiel d'Assembleur

Plongez-vous dans le langage bas niveau, nommé Assembleur. Abordez les notions de jeu d'instructions, de pipeline, de registres, de mode d’adressage, de compteur de programme, etc.

4h52 (57 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :26 sept. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !