Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 30 sur 40

PIC-mémoire flash (FAT16)



  1. #1
    Voltron

    PIC-mémoire flash (FAT16)


    ------

    Bonsoir tout le monde,


    je voudrais écrire et lire d'une mémoire flash type NAND de 2 Goctets (k9f2G08U0M de SAMSUNG )avec un PIC 18F4525 des fichiers en FAT16 .

    Qu'est ce que je dois intégrer dans le PIC pour qu'il puisse reconnaitre ce système de fichier et avec quels ports dois je connecter la mémo flash au pin sachant qu'elle est déjà utiliser par un autre DSP .

    d'avance, merci.

    -----

  2. Publicité
  3. #2
    RISC

    Re : PIC-mémoire flash (FAT16)

    Bonjour,

    Ci-joint une note d'application qui permet de gérer la FAT16 pour les PIC18 ou les 16 bits :
    http://www.microchip.com/stellent/id...pnote=en532040

    et aussi ici :
    http://www.digitalspirit.org/blog/in...-avec-un-pic18

    a+
    Dernière modification par RISC ; 18/04/2008 à 00h26. Motif: correction

  4. #3
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par RISC Voir le message
    Bonjour,

    Ci-joint une note d'application qui permet de gérer la FAT16 pour les PIC18 ou les 16 bits :
    http://www.microchip.com/stellent/id...pnote=en532040

    et aussi ici :
    http://www.digitalspirit.org/blog/in...-avec-un-pic18

    a+


    bonjour RISC,

    Vraiment merci, pour ta reponse rapide .

    mais je vois que les deux liens de codes sont destinés aux SD card, MMC et CF (Compact Flash), que faire alors pour une mémo flash type NAND ?

  5. #4
    marmotte

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par Voltron Voir le message
    bonjour RISC,

    Vraiment merci, pour ta reponse rapide .

    mais je vois que les deux liens de codes sont destinés aux SD card, MMC et CF (Compact Flash), que faire alors pour une mémo flash type NAND ?
    Euh quel est le problème? Une fat16 n'est pas uniquement destinée a une carte mémoire SD MMC ou CF... Tu en as sur les disques dur par exemple... Donc dans ton chip de flash NAND c'est pareil.

    Par contre, le travail que tu auras à réaliser, c'est le driver hardware/software qui te permettra d'interfacer une librairie FAT16 (telle que celle de microchip proposée par RISC) avec ta mémoire

    En gros, dans le lien que t as filé RISC tu as plusieurs niveau:

    Couche de plus bas niveau: Driver Carte SD/MMC ou CF (permet le transfert lecture/ecriture de blocs de données de 512octets entre le µC et la carte mémoire)

    Couche supérieure: FAT16 (gestion des clusters, des entrées fichiers/répertoires, etc... dans une mémoire, peut importe son format, taille, etc...)

    Couche supérieure: FILE (gestion des fichiers, création, suppression, lecture, ecriture, etc...)

    Etc...

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

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par marmotte Voir le message
    Euh quel est le problème? Une fat16 n'est pas uniquement destinée a une carte mémoire SD MMC ou CF... Tu en as sur les disques dur par exemple... Donc dans ton chip de flash NAND c'est pareil.

    Par contre, le travail que tu auras à réaliser, c'est le driver hardware/software qui te permettra d'interfacer une librairie FAT16 (telle que celle de microchip proposée par RISC) avec ta mémoire

    En gros, dans le lien que t as filé RISC tu as plusieurs niveau:

    Couche de plus bas niveau: Driver Carte SD/MMC ou CF (permet le transfert lecture/ecriture de blocs de données de 512octets entre le µC et la carte mémoire)

    Couche supérieure: FAT16 (gestion des clusters, des entrées fichiers/répertoires, etc... dans une mémoire, peut importe son format, taille, etc...)

    Couche supérieure: FILE (gestion des fichiers, création, suppression, lecture, ecriture, etc...)

    Etc...

    Salut et merci pour ta réponse marmotte,


    Si je comprends bien je ne dois intervenir qu'au niveau de la couche de plus bas niveau en changeant le Driver de le carte SD, MMC ou CF avec un Driver d'une mémoire flash de type NAND.


    Est ce que je dois écrire le code du Driver ou bien je peux le trouver prêt quelque part ?

  8. #6
    Voltron

    Re : PIC-mémoire flash (FAT16)

    bonsoir,

    j'ai un autre question, comment simuler la lecure et l'écriture d'un fichier sur une mémo avec un PIC sur Proteus ISIS ??

  9. Publicité
  10. #7
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par RISC Voir le message
    Bonjour,

    Ci-joint une note d'application qui permet de gérer la FAT16 pour les PIC18 ou les 16 bits :
    http://www.microchip.com/stellent/id...pnote=en532040

    et aussi ici :
    http://www.digitalspirit.org/blog/in...-avec-un-pic18

    a+
    En voulant essayer l'utilitaire du second lien de RISC (Projet MPLAB FatOnPic-ReadOnly.mcp ) http://http://www.digitalspirit.org/...x.php/FatOnPic Rubrique Télécharger, j'ai eu ces erreurs dès l'ouverture du projet:

    Output : MPLAB ICD 2
    Auto-connect not enabled - Not connecting (Try enabling auto-connect on the ICD2 settings pages.)
    Connecting to MPLAB ICD 2
    ICDWarn0027: The selected baud rate is not supported by your system. Chances are it will work anyway, but if persistent communications occur, consider switching to a lower baud rate.
    ICD0019: Communications: Failed to open port: (Windows::GetLastError() = 0x2, 'Le fichier spécifié est introuvable.
    ')
    ICD0021: Unable to connect with MPLAB ICD 2
    MPLAB ICD 2 Ready
    ICD0019: Communications: Failed to open port: (Windows::GetLastError() = 0x2, 'Le fichier spécifié est introuvable.
    ')
    Est ce que quelqu'un pourrait m'aider à les corriger ?

    merci d'avance.
    Dernière modification par Voltron ; 18/04/2008 à 19h33.

  11. #8
    RISC

    Re : PIC-mémoire flash (FAT16)

    Voltron,

    Le message que tu montres semble indiquer que tu utilises la liaison série ????
    Je suis persuadé que tu as une liaison USB sous la main ;=)
    Change dans MPLAB :
    Debugger > Select Tools > MPLAB ICD2 (ignores les messages d'erreur)
    Debugger > Settings > onglet COMMUNICATION > USB ;=)

    Je te recommande également cette page qui permet de comprendre la plupart des PB liés à l'ICD2 : www.microchip.Com/ICD2help (aides-toi...le ciel t'aidera ;=)

    a+
    Dernière modification par RISC ; 18/04/2008 à 22h24. Motif: addition

  12. #9
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par RISC Voir le message
    Voltron,

    Le message que tu montres semble indiquer que tu utilises la liaison série ????
    Je suis persuadé que tu as une liaison USB sous la main ;=)
    Change dans MPLAB :
    Debugger > Select Tools > MPLAB ICD2 (ignores les messages d'erreur)
    Debugger > Settings > onglet COMMUNICATION > USB ;=)

    Je te recommande également cette page qui permet de comprendre la plupart des PB liés à l'ICD2 : www.microchip.Com/ICD2help (aides-toi...le ciel t'aidera ;=)

    a+

    salut RISC,

    peut être que je pose là une question très bête, mais je n'ai fait qu'ouvrir un projet déjà compilé, je n'est encore rien implenté dans PIC pour que je définisse le type de liaison avec le programmateur, d'ou ma question: la liaison USB ou série c'est entre quoi et quoi ?

    pardon, c'est que je ne suis pas habitué à utiliser MPLAB.

    merci une fois encore RISC.
    Dernière modification par Voltron ; 18/04/2008 à 22h42.

  13. #10
    RISC

    Re : PIC-mémoire flash (FAT16)

    Salut,

    On peut paramétrer MPLAB pour que lorsque l'on charge un projet, il fasse immédiatement une tentative de connection avec l'outil de développement (ICD2). Si tu travailles sans ICD2, tu peux désactiver cela de cette manière :

    Change dans MPLAB :
    Debugger > Select Tools > MPLAB ICD2 (ignores les messages d'erreur)
    Debugger > Settings > onglet STATUS > et là tu décoches la case "Automatically connect at startup" ;=)

    a+

  14. #11
    Voltron

    Thumbs up Re : PIC-mémoire flash (FAT16)

    merci beaucoup RISC

  15. #12
    Voltron

    Re : PIC-mémoire flash (FAT16)

    salut,

    j'ai lu que les CF (Compact Flash) et les SD card sont aussi des mémos de Type NAND et moi je devrais utiliser une mémo de type HYNIX ou SAMSUNG, comme la mémoire des clé USB (mais ayant une plus grande capacité) sur cet exemple:http://fr.wikipedia.org/wiki/Cl%C3%A...864.C2.A0Mo.29

    sachant que la mémo (que je compte utiliser) est déjà géré en par un DSP (ATJ2085) (http://www.s1mp3.org/files/datasheet...sheet_v1.5.pdf) , au fait, il me semble que ce dernier joue le même rôle (en plus de ces autres fonctions) que le contrôleur Ours Technology Inc. OTi-2168 USB 2.0. sur le schéma du lien (voir commentaire 2. à la droite de la photo du circuit imprimé )

    je me demande quels types de modifs sur le Driver du FAT16 à implémenter sur le PIC devrais-je apporter ?, sont-t-elles des
    modifs seulement en hard (la mémo étant aussi une NAND) ??? ou en soft et en hard ???


    j'ai un autre gros problème, je manque d'infos sur la répartition de la mémo par le DSP (il n'y a que très peu d'info sur le datasheet de ce dernier seulement le Read/write timing aux pages 17-18 ) comment alors faire lorsque j'ajouterai le PIC comme 2ème utilisateur de la mémoire ?


    éclairez moi svp.



    ci joint le schéma de liaison DP - mémoire flash


    Pour des images seules, fussent ils des schémas, utiliser le format jpg.
    Images attachées Images attachées  
    Dernière modification par gienas ; 20/04/2008 à 19h45. Motif: Conversion de pdf en jpg

  16. Publicité
  17. #13
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par Voltron Voir le message
    ci joint le schéma de liaison DP - mémoire flash
    p'tite correction:

    DSP pas DP

  18. #14
    Voltron

    Re : PIC-mémoire flash (FAT16)

    hey les connaisseurs, j'ai besoin de vous !!


    orientez moi svp !

  19. #15
    Voltron

    Re : PIC-mémoire flash (FAT16)

    bonsoir,


  20. #16
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Saluuuuuuuuuuuuuut,

    SVP j'ai vraiment besoin d'avoir une réponse à cette question : Est ce que toutes les mémoires flash ont cette structure (trouvée sur la page 2 de la note d'application du lien de RISC)
    Images attachées Images attachées  

  21. #17
    Voltron

    Re : PIC-mémoire flash (FAT16)

    salut,


    Est ce qu'il y a des gens sur ce forum qui pourraient m'aider ?

  22. #18
    marmotte

    Re : PIC-mémoire flash (FAT16)

    As tu vraiment compris les reponses que tu as eu?

    On s'en fout complement de savoir si t as une memoire NAND une clef usb un HDD, une memoire bilobé a injection directe !!!! Une mémoire c'est une mémoire point.

    La gestion FAT sera EXACTEMENT LA MEME QUE SUR L EXEMPLE FOURNI PAR RISC.

    LA SEULE CHOSE que TU as a etudier, c'est la DATASHEET DE LA MEMOIRE QUE TU AS SELECTIONNEE, afin d'ecrire tes fonctions de communication de bas niveau, et ca, personne ici ne le fera a ta place, sauf si tu paies bien.

  23. Publicité
  24. #19
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par marmotte Voir le message
    As tu vraiment compris les reponses que tu as eu?

    On s'en fout complement de savoir si t as une memoire NAND une clef usb un HDD, une memoire bilobé a injection directe !!!! Une mémoire c'est une mémoire point.

    La gestion FAT sera EXACTEMENT LA MEME QUE SUR L EXEMPLE FOURNI PAR RISC.

    LA SEULE CHOSE que TU as a etudier, c'est la DATASHEET DE LA MEMOIRE QUE TU AS SELECTIONNEE, afin d'ecrire tes fonctions de communication de bas niveau, et ca, personne ici ne le fera a ta place, sauf si tu paies bien.

    Salut,

    j'ai bien compris que je dois écrire ls fonctions de communication bas niveau (post n°5), les explications que j'ai donné plus haut avaient pour but de vs mettre dans le cadre du projet (savoir que la mémoire est partagé entre le PIC et un autre DSP) et puis je cherchais la Structure de la mémoire que j'uilise et que j'ai pas trouvé sur le datasheet (post n°16), pour quel but?, c pour commencer à faire un code sembalabe à celui de la note d'application de microchip mais pour une communication parallèle ,car je ne vois pas comment je pourrais démarrer sans suivre un exemple (le cas est différent, je le sais) !
    Dernière modification par Voltron ; 23/04/2008 à 15h05.

  25. #20
    Voltron

    Re : PIC-mémoire flash (FAT16)

    bonjour,

    Est ce qu'il y a des fonctions spécifiques dédiés à l'écritue/lecture dans les mémoies flash qui n'utilisent pas les proptocoles I2C ou SPI pour les complilateurs PICC ou Hi-Tech , j'ai trouvé ceux-là pour le compilateur CCS:

    write_configuration_memory (dataptr, count)
    write_eeprom (address, value)
    write_external_memory( address, dataptr, count )
    write_program_eeprom (address, data)
    write_program_memory( address, dataptr, count)

    je peux pas les utiliser dans mon application car j'ai une mémoire flash qui se connecte en parallèle avec le PIC et qui n'utlise donc pas les protocoles I2C ou SPI.


    Est ce que quelqu'un peut me dire quels genre de fonctions standard devrais-je utiliser pour, par exemple, écrire sur la mémoire, je sais qu'avec cette mémo, il faut d'abord mettre /WE et /CE au niveau bas, puis CLE au niveau haut pour que la commande puisse être envoyé (d'éciture dans ce cas: 80h sur les 8 pins ), ensuite pour l'adresse (qui sont en lignes et colonnes -d'après le datasheet ) il faut une trame d'impulsions synchronisés de /WE et ALE pour envoyer toute l'adresse de la zone mémoire sur laquelle on désire écrire , puis vient l'écriture (Data input) et on termine par le second cycle de la commande intiale (écriture) qui a pour valeur 10h. (voir la figure jointe)

    j'ai compris grossomodo ce que le PIC doit envoyer pour écrire sur la mémoire flash, mais je ne sais pas exactement comment traduire ca par des fonctions en code C (j'ai n'ai fait que peu de programmation) ?


    y-a-il quelqu'un parmi vous qui aurait la gentillesse de me donner un petit coup de pouce pour que je démarre?




    d'avance, merci.


    -----------------------------
    le PIC doit être relié à la mémoire flash par 13 pins:

    - 8 pins I/O : bit0-->bit7 of ext. memory data bus.

    - /CE : ---> Boot up Nand Flash chip enable
    - /WE: ----> Ext. memory write strobe
    - /RE : ----> Ext. memory Read strobe
    - CLE : ----> Command Latch Enable for NAND type Flash
    - ALE : ----> Adress Latch Enable for NAND type Flash
    Images attachées Images attachées  
    Dernière modification par Voltron ; 27/04/2008 à 00h29.

  26. #21
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par Voltron Voir le message
    il faut d'abord mettre /WE et /CE au niveau bas, puis CLE au niveau haut pour que la commande puisse être envoyé (d'éciture dans ce cas: 80h sur les 8 pins ), ensuite pour l'adresse (qui sont en lignes et colonnes -d'après le datasheet ) il faut une trame d'impulsions synchronisés de /WE et ALE pour envoyer toute l'adresse de la zone mémoire sur laquelle on désire écrire , puis vient l'écriture (Data input) et on termine par le second cycle de la commande intiale (écriture) qui a pour valeur 10h. (voir la figure jointe)


    Peut-être je n'étais pas assez claire, ce que que je voudrais savoir au fait, c'est comment envoyer des trames , comment fixer la durée de chacune et comment les synchoniser ? mon but étant de traduire le timing que j'ai joint au message précédent en des commandes PIC écrites en langage C.


    merci.

  27. #22
    Voltron

    Re : PIC-mémoire flash (FAT16)

    re,


    Est ce que quelqu'un peut m'aider ?

  28. #23
    Voltron

    Re : PIC-mémoire flash (FAT16)

    bonsoir,



    Est ce que la fonction delay_us() du compilateur PICC peut être utiliser simulatanément , car je veux l'utilise pour les 5 trames indépendants 8 pins I/O ,/CE , /WE, /RE, CLE, ALE on m'a dit que c'est impossible car si une seule fonction delay_us() est activé les autres routines sont bloqués, donc on ne peut utiliser qu'une seule à la fois , est ce que c'est vrai?

    j'ai un autre problème avec cette fonction, d'après le timing de la la phase programmation de la mémo (voir mon fichier joint dans l'avant dernier post + le fichier joint avec ce post) , j'ai à faire avec des échellon de durées de qcq 10ènes de ns (nano seconde), tant disque la fonction delay_us() a pour base de temps 1 micro seconde !!
    Images attachées Images attachées  
    Dernière modification par Voltron ; 27/04/2008 à 21h45.

  29. #24
    Voltron

    Re : PIC-mémoire flash (FAT16)

    mais pourquoi personne ne réponds ?

  30. Publicité
  31. #25
    Jack
    Modérateur

    Re : PIC-mémoire flash (FAT16)

    Peut-être que personne n'a de réponse.

    Je n'ai pas trop suivi car je ne connais pas suffisamment bien les pics.

    Ce sont des temps minis, alors, si tu n'est pas trop pressé, une tempo d'une µs doit convenir également.

    Cependant, vu les temps minis à respecter, je doute que tu aies besoin de faire des tempos. Le temps le plus long est de 100ns. Avec une fréquence interne de 10MHz, ton temps de cycle est déjà de 100ns, alors ...

  32. #26
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par Jack Voir le message
    Peut-être que personne n'a de réponse.

    Je n'ai pas trop suivi car je ne connais pas suffisamment bien les pics.

    Ce sont des temps minis, alors, si tu n'est pas trop pressé, une tempo d'une µs doit convenir également.

    Cependant, vu les temps minis à respecter, je doute que tu aies besoin de faire des tempos. Le temps le plus long est de 100ns. Avec une fréquence interne de 10MHz, ton temps de cycle est déjà de 100ns, alors ...
    c'est donc impossible à réaliser ?

  33. #27
    Jack
    Modérateur

    Re : PIC-mémoire flash (FAT16)

    une tempo d'une µs doit convenir également.
    Cependant, vu les temps minis à respecter, je doute que tu aies besoin de faire des tempos
    Mes réponses me semblent pourtant claires. Elles veulent dire que tu ne devrais pas avoir de problème.

  34. #28
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par Jack Voir le message
    Mes réponses me semblent pourtant claires. Elles veulent dire que tu ne devrais pas avoir de problème.
    Si je comprends bien, vous voulez dire qu je devrais changer les durées des échellons des trames pour passer de l'ordre des nano-secondes aux micro-secondes ? ceci n'impliquerait pas l'utilisation d'un prédiviseur ou d'un autre outil du genre ?

  35. #29
    Jack
    Modérateur

    Re : PIC-mémoire flash (FAT16)

    Il n'est pas question d'échelon, mais de durée de l'impulsion. Pour faire une impulsion, il suffit par exemple de mettre une sortie à 1 puis la mettre à 0, c'est tout.

  36. #30
    Voltron

    Re : PIC-mémoire flash (FAT16)

    Citation Envoyé par Jack Voir le message
    Il n'est pas question d'échelon, mais de durée de l'impulsion. Pour faire une impulsion, il suffit par exemple de mettre une sortie à 1 puis la mettre à 0, c'est tout.
    oui, je voulais dire durée d'impulsion, le problème là pour moi, c'est comment régler cette durée de dizaine de ns avec des commandes en C ?

Page 1 sur 2 1 DernièreDernière

Discussions similaires

  1. Actu - Deux bits par cellule mémoire pour le successeur de la mémoire Flash ?
    Par RSSBot dans le forum Commentez les actus, dossiers et définitions
    Réponses: 0
    Dernier message: 04/02/2008, 15h45
  2. mémoire flash
    Par plasill dans le forum Matériel - Hardware
    Réponses: 1
    Dernier message: 10/02/2007, 21h00
  3. Memoire Flash pic 18f452
    Par srr dans le forum Électronique
    Réponses: 4
    Dernier message: 28/07/2006, 15h04
  4. mémoire FLASH
    Par plasill dans le forum Électronique
    Réponses: 2
    Dernier message: 21/07/2006, 21h32
  5. Mémoire flash
    Par jayagus dans le forum TPE / TIPE et autres travaux
    Réponses: 0
    Dernier message: 16/03/2006, 13h34
Découvrez nos comparatifs produits sur l'informatique et les technologies.