Utilisation des ports - Mcu/Cpu (hardware et périphériques) > Commun à toute la gamme - Articles et téléchargements
Utilisation des ports - Mcu/Cpu (hardware et périphériques) > Commun à toute la gamme - Articles et téléchargements
Pseudo Pass se souvenir de moi     Créer un compte
ARTICLES et TELECHARGEMENTS ~ FORUMS ~ LIENS  
 
             
 
proposer
 
   
             
 
Catégories
 
   
             
 
Recherche
 
   
 

Utilisation des ports

Publié par david le 03/10/2005 (2570 lectures)
L'utilisation des ports peut être diverse, soit avec des fonctions integrées soit en tant qu'entrées ou sorties

On va s'interesser ici qu'aux entrées et sorties.

Du plus petit au plus grand microcontrôleur, le nombre de ports et de broches diffère.

On peux trouver de 6 broches à plus de 40 broches.
L'utilisation est la même quelque soit le port et le type de microcontrôleur. A noter qu'une broche comportant une fonction alternative est désactivée automatiquement par le micro si elle est utilisée par une fonction.
Par exemple, pour l'utilisation de la SPI (port série synchrone), les broches sont réservées pour cette fonction.

Certains microcontroleurs ont aussi un réseau résistif interne de tirage à Vdd. Ces résistances sont activées par un registre PTxPUE (où x est le nom du port).

On veut par exemple mettre la broche du bit 7 du port A à 1, il faut bien évidement lui déclarer que cette broche est une sortie.
Par défaut les broches du micro sont en entrées, quelque soit le micro. Et leur niveau est à 0.


L'instruction ASM permentant de changer un état est BCLR ou BSET :
- BCLR : Bit to CLeaR, mise à 0
- BSET : Bit to SET, mise à 1

Le registre DDRx permet de configurer l'état des broches, soit en entrée soit en sortie, et ceci n'importe où dans le logiciel, l'état devant évidemment pouvoir être changé au cours de l'exécution du programme.

On écrit donc :
MOV #%10000000,DDRA ; on configure le bit 7 en sortie
BSET 7,PORTA ; on met à 1 le bit 7 du port A

Pour la mise, on écrit :
BCLR 7,PORTA


On peut aussi créer des conditions lors des changements d'état. On peut par exemple détecter un 0 sur la broche du bit 5 du PORTC, dans ce cas la broche est évidement en entrée. Si on détecte le 0 on branche sur un sous programme ACTION_BIT5_PORTC, sinon on continue normalement.

On écrit donc :
MOV #%00000000,DDRC
BRCLR 5,PORTC,ACTION_BIT5_PORTC

Les résistances de tirages aux Vdd possèdent aussi un registre. Ce registre n'est pas disponible sur l'ensemble des ports, il est donc conseillé de les réserver pour des entrées de transistors à collecteur ouvert.

On active la résistance de tirage de la broche du bit 2 du port F :
MOV #%00000100,PTFPUE

Article précédent Article suivant
Article précédent Les modes d'adressage Flexis, 8bit ou 32bit 100% compatible ! Article suivant
Les commentaires appartiennent à leurs auteurs. Nous ne sommes pas responsables de leur contenu.
Auteur Commentaire en débat
Powered by XOOPS© The XOOPS Project
Contacter les administrateurs

Utilisation des ports - Mcu/Cpu (hardware et périphériques) > Commun à toute la gamme - Articles et téléchargements