Effacer la RAM PIC
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Effacer la RAM PIC



  1. #1
    Anduriel

    Effacer la RAM PIC


    ------

    Bonjour à tous,

    Je potasse depuis quelques semaines les - excellents - tutoriels de Bigonoff (pour le 16F84), et j'aurais 2 questions:

    ; Effacer RAM
    ; ------------
    movlw 0x0c ; initialisation pointeur
    movwf FSR ; pointeur d'adressage indirect
    init1
    clrf INDF ; effacer ram pointée par FSR
    incf FSR,f ; pointer sur suivant
    btfss FSR,6 ; tester si fin zone atteinte (>=0x40)
    goto init1 ; non, boucler
    btfss FSR,4 ; tester si fin zone atteinte (>=0x50)
    goto init1 ; non, boucler
    xxxxx ; ici se trouve la suite du programme
    Pourquoi effectuer deux tests, et pas seulement le test >= 50? En effet, la RAM est située entre 0x0C et 0x4F. Donc si on est arrivé à 0x50, tout avant a été supprimé, pourquoi s'interroger sur 0x40?

    Deuxième question: si je mets mes ports B en sortie, quel est l'intérêt de mettre les résistances de rappel? Et a posteriori, que se passerait-il si je fais un clrf PORTB, si j'ai tout mis en sortie avec résistance de rappel (puisqu'elles fixent la sortie à 1...) ?

    Merci !

    -----
    Dernière modification par Anduriel ; 14/10/2012 à 13h40.

  2. #2
    inoxxam

    Re : Effacer la RAM PIC

    En réalité, c'est un unique test >=0x50. Comme 0x50 s'écrit 01010000b (en binaire donc) et que tu comptes, la première valeur pour laquelle les bits 4 et 6 seront à 1 sera bien 50, mais pour le savoir, il faut tester les deux bits.
    En pseudo C avec les pieds, ça "équivaut" à un:
    Code:
    do
    {
    [...]
    }while(FSR,6 == 0 && FSR,4 == 0);
    Ou encore
    Code:
    do
    {
    [...]
    }while(FSR>= 0x50);

  3. #3
    invite0cb7b344

    Re : Effacer la RAM PIC

    comment programmer un pic?
    16F84

  4. #4
    eldudo

    Re : Effacer la RAM PIC

    Salut Anduriel,
    Il n'y a pas de nécessité à priori de mettre des résistances de rappel, à la masse ou vers Vdd .
    Si tu mets une résistance de rappel entre vdd et une des broches de sorties du portb et que tu mets à 0 les sorties du portb, elles seront à 0 du moment que la résistance que tu as mises à une valeur suffisante de manière à ne pas tirer trop de courant depuis le pic , le max doit être autour de 20 mA il me semble, mais le mieux est de vérifier sur la datasheet .
    Si tu parles correctement anglais, enfin surtout si tu lis l'anglais, le mieux à mon avis est de lire la doc de microchip .
    Bonne soirée
    Dernière modification par eldudo ; 14/10/2012 à 21h13.

  5. A voir en vidéo sur Futura
  6. #5
    gedonet

    Re : Effacer la RAM PIC

    Citation Envoyé par Anduriel Voir le message

    Deuxième question: si je mets mes ports B en sortie, quel est l'intérêt de mettre les résistances de rappel? Et a posteriori, que se passerait-il si je fais un clrf PORTB, si j'ai tout mis en sortie avec résistance de rappel (puisqu'elles fixent la sortie à 1...) ?

    Merci !
    Bonjour
    J'imagine que tu parles des "pull-up" internes, commandées par RBPU, il faut regarder le schema des I/O du port B, on y voit que le les resistances sont commandée par une porte ET 2 entrées, pour que les resistances soient actives, il faut que RBPU soient à 0 ET que le bit de l'I/O du registre TRISB soit à 1, donc tu peux avoir certaines resistances de "pull-up" actives et d'autres non.
    Sur d'autres pic, la fonction ET a d'autres conditions et sur d'autres encore, chaque resistance est activable individualement.

    Gilles

  7. #6
    Anduriel

    Re : Effacer la RAM PIC

    Merci pour vos réponses, donc si je mets tout en sortie (TRISB = 0), les résistances de pull up n'interviennent pas, quelque soit mon RBPU.
    Bonne journée !

  8. #7
    gedonet

    Re : Effacer la RAM PIC

    Citation Envoyé par Anduriel Voir le message
    Merci pour vos réponses, donc si je mets tout en sortie (TRISB = 0), les résistances de pull up n'interviennent pas, quelque soit mon RBPU.
    Bonne journée !
    Bonjour
    Oui, c'est exactement cela.

    Gilles

Discussions similaires

  1. limitation RAM sur les PIC par rapport à un processeur PC?
    Par pansoul dans le forum Électronique
    Réponses: 5
    Dernier message: 24/04/2012, 12h45
  2. [PIC] - Effacement de la RAM au démarrage
    Par jorg1n dans le forum Électronique
    Réponses: 22
    Dernier message: 19/11/2009, 07h40
  3. Probleme PIC 16f877 & taille de ram
    Par joseph4008 dans le forum Électronique
    Réponses: 11
    Dernier message: 21/07/2009, 09h59
  4. PIC et RAM Statique
    Par inviteb251a7e8 dans le forum Électronique
    Réponses: 1
    Dernier message: 18/05/2009, 08h06
  5. Lecture SFR et RAM PIC 16F84A depuis l'extérieur
    Par WhiteBird dans le forum Électronique
    Réponses: 3
    Dernier message: 12/05/2006, 21h47
Découvrez nos comparatifs produits sur l'informatique et les technologies.