30.07.2015 Views

La programmation des PICs - Seconde partie

La programmation des PICs - Seconde partie

La programmation des PICs - Seconde partie

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Il va de soi que lorsque vous maîtriserez parfaitement les <strong>PICs</strong>, vous pourrez vous passer<strong>des</strong> assignations dont vous n’avez pas usage. Mais ceci vous permet d’être certains de ne rienoublier.Maintenant, vous vous trouvez dans la zone <strong>des</strong> macros, où quelques macros existent déjà.Par exemple, les macros de passage de banques. Nous n’aurons pas besoin <strong>des</strong> autres dans lecadre de cet exercice;**************************************************************************; MACRO;**************************************************************************BANK0 macro ; passer en banque0bcf STATUS,RP0bcf STATUS,RP1endmBANK1 macro ; passer en banque1bsf STATUS,RP0bcf STATUS,RP1endmBANK2 macro ; passer en banque2bcf STATUS,RP0bsf STATUS,RP1endmBANK3 macro ; passer en banque3bsf STATUS,RP0bsf STATUS,RP1endmCes macros permettent de sélectionner une banque particulière en positionnant les 2 bitsconcernés. Il est évident que si vous savez dans quelle banque vous vous trouvez, il n’est pastoujours nécessaire de repositionner les 2 bits. Il se peut en effet que l’un <strong>des</strong> 2 soit déjà dansle bon état. Néanmoins, l’utilisation de cette macro ne vous coûtera qu’une lignesupplémentaire, et limitera fortement les risques d’erreurs. Vous verrez d’autres macros danscette maquette, n’en tenez pas compte pour l’instant.De plus, certaines macros que je développe dans mes exercices et dans les fichiersmaquettes ont leur équivalent (ou presque) déjà intégré dans MPASM. Cependant, dans cecas, leur contenu n’est pas visible, c’est donc une démarche moins didactique (n’oubliez pasqu’il s’agit d’un cours). De toute façon, je vous parlerai de ces macros particulières.Ensuite vous trouvez les différentes zones d’emplacement RAM pour chacune <strong>des</strong>banques, ainsi que l’emplacement <strong>des</strong> 16 octets de la zone commune. Je rappelle que ces 16octets sont accessibles indépendamment de la valeur de RP0 et RP1.;************************************************************************; VARIABLES ZONE COMMUNE;************************************************************************; Zone de 16 bytes; ----------------CBLOCK 0x70; Début de la zone (0x70 à 0x7F)27

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!