Ecriture/Lecture sur PIC 16F877A
Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

Ecriture/Lecture sur PIC 16F877A



  1. #1
    flyingrock

    Ecriture/Lecture sur PIC 16F877A


    ------

    Bonjour,
    Je dois écrire des données dans la "mémoire" d'un PIC (16F877A) puis pouvoir les exploiter sur ce même PIC.
    Sachant que le nombre d'écriture pour une même adresse mémoire peut varier de 0 à environ 500 fois par jour,la lecture de cette adresse par contre pourra très facilement atteindre environ 86000 fois !!!
    Tout ça tous les jours de l'année.
    Projet réaliste ou pas ?
    Si oui sur quelle mémoire du PIC je devrais travailler la flash ou l'eeprom ?

    Merci d'avance pour votre aide.

    Francis

    -----

  2. #2
    Seb.26

    Re : Ecriture/Lecture sur PIC 16F877A

    à ma connaissance, aucune mémoire non volatile (flash, eeprom...) ne répond à ton besoin ... tu devras donc utiliser de la RAM (interne ou externe) que tu maintiens via une pile ou une grosse capa ...

    NB: ajoute un petit marqueur, genre checksum, pour détecter une perte des données ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  3. #3
    flyingrock

    Re : Ecriture/Lecture sur PIC 16F877A

    Bonsoir,
    Qu'est ce qui risque de coincer l' écriture ou la lecture ?
    Bon je vais donc me pencher aussi sur la consommation du pic.
    RAM externe t'as un exemple a me donner.

    @+
    Francis

  4. #4
    Seb.26

    Re : Ecriture/Lecture sur PIC 16F877A

    Ton problème va être le nombre de cycle d'écritures possible ... ta mémoire va se bousiller en quelques mois AMA ...

    500 écritures/j = 15000 écriture/mois ... beaucoup trop pour de l'eeprom ...

    NB: on peut considérer le nombre de cycle de lecture des mémoires non volatile comme infini ...

    Pour ta seconde question, tu peux trouver des chips tout fait (cherche "NVRAM" ... NVRAM="non-volatile RAM") ... mais c'est un peu cher ...

    Trouve un petit boitier de RAM, et tu lui colle une pile pour sauvegarder les données quand tu débranche le tout ...

    PS: Quelle taille pour ta RAM ?
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

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

    Re : Ecriture/Lecture sur PIC 16F877A

    Tu peux consulter la datasheet de ton PIC, mais il me semble, que le nombre de cycle garantis pour l'EEPROM interne et de l'ordre de 100K.
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  7. #6
    Seb.26

    Re : Ecriture/Lecture sur PIC 16F877A

    PS: écrire un octet en EEPROM prend du temps (quelques ms) ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  8. #7
    flyingrock

    Re : Ecriture/Lecture sur PIC 16F877A

    Re.

    128 Ko devraient largement suffire.

    Si je te suis bien en limitant le nombre d'écriture au strict minimum et en partant du principe que le nombre de cycle de mémoire non volatile est quasi infini, je pourrai m'en sortir.

    Je n'ai rien trouvé concernant les NVRAM,je continue les recherches.

    @+
    Francis

  9. #8
    flyingrock

    Re : Ecriture/Lecture sur PIC 16F877A

    Bonjour Seb.26,

    J'avance dans mon projet, le choix de la RAM c'est porté sur une PCF8570 ( I2C) l'ecriture et la lecture se font sans problème.

    Dans une réponse un peu plus haut dans ce post tu me suggères d'ajouter un petit marqueur pour detecter les pertes de données.

    As tu une piste ? un exemple a me donner ?

    J'écris à la suite 8 octets dans la RAM.

    @+

    Francis

  10. #9
    Seb.26

    Re : Ecriture/Lecture sur PIC 16F877A

    Citation Envoyé par flyingrock Voir le message
    As tu une piste ? un exemple a me donner ?
    Et bien, à une adresse donnée, tu écris un pattern de quelques octets.

    Maintenant, admettons que ta RAM perde l'alim et donc soit réinitialisée : soit elle s'initialise à une valeur fixe (0x00, 0xFF, 0x55 ...ect ), soit elle s'initialise avec des valeurs aléatoire.

    Si c'est une valeur fixe, facile ! ... Et si c'est des valeurs aléatoires, les probabilité que ça tombe exactement sur ton pattern sont fonction de sa longueur.

    En gros, tu écris 8 octets ou plus (genre 0x 01 02 03 04 05 06 07 08 ), et tu es presque certain que si tu relis bien cette valeur, c'est que ta RAM est OK, sinon, les données sont corrompues.

    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  11. #10
    flyingrock

    Re : Ecriture/Lecture sur PIC 16F877A

    Bonsoir,
    Je me suis peut être un peu affolé en faisant une recherche sur le mot "checksum" je suis tombé sur CRC16, en fait il y a beaucoup plus simple.
    Y a t-il beaucoup de risque que les données soient corrompues lors de l'écriture dans une mémoire ?
    Remarque, si le checksum a été inventé c'est qu' il doit bien avoir de temps en temps des couacs !!!!

    @+

Discussions similaires

  1. Ecriture fichier TXT sur SD Card en FAT32 avec un PIC.
    Par invite14d9a42f dans le forum Électronique
    Réponses: 17
    Dernier message: 08/06/2011, 09h51
  2. pic 16F877A
    Par invite636b8579 dans le forum Électronique
    Réponses: 22
    Dernier message: 01/04/2009, 16h00
  3. PIC 16F877A sur 3V ?
    Par invite2dc206d9 dans le forum Électronique
    Réponses: 17
    Dernier message: 17/02/2008, 21h49
  4. [TPE] Ecriture/lecture des données sur un disque dur
    Par invitea2cf63ca dans le forum TPE / TIPE et autres travaux
    Réponses: 3
    Dernier message: 28/02/2007, 14h29
  5. PIC 16F84 – Lecture de plusieurs pin et écriture sur plusieurs pins
    Par invitef1f90160 dans le forum Électronique
    Réponses: 4
    Dernier message: 31/12/2005, 15h09
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...