[Programmation] utilisation flash externe SST26VF064
Répondre à la discussion
Page 1 sur 7 12 3 4 5 6 DernièreDernière
Affichage des résultats 1 à 30 sur 201

utilisation flash externe SST26VF064



  1. #1
    davidif

    utilisation mémoire flash SST25VF064C pic32mx795f512l


    ------

    Bonjour, J'utilise le module avec MRF24WBOMA PIC32 Ethernet Starter Kit SK + i / o carte d'extension, et j'utilise le fichier "PIC32MX eth sk ioexp + 11n freertos.mhc".
    Je veux utiliser les Mémoires flash SST25VF064C avec pic32mx795F512L et je cherche la meilleure façon d'utiliser (schéma de connexion, ...)
    Je voulais voir le kit de démarrage de cette mémoire, mais il est pas accessible, y aurait-il trace sur elle?

    -----

  2. #2
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Bonjour, je vais devoir configurer un port serie en SPI pour l'utilisation de cette mémoire jamais utilisé

    http://ww1.microchip.com/downloads/e...Doc/25036B.pdf

    J'ai vue qu'il était possible de les connecter en série ou en parallèle mais j'ai un doute sur la connexion au micro , à savoir est-ce que les interfaces mémoire SI et SO soit croisées par rapport au micro ? ou du droit ? si je me fait bien comprendre.

    J'ai un doute, car une autre interface spi que j'utilise (module wifi ) que j'ai fait fonctionné avec mon starter kit est branché en droit.

    Merci pour la confirmation, je finalise mon routage et devrais envoyé les fichiers gerbert au plus tôt.

  3. #3
    RISC

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Salut,
    Il ne faut rien connecter d'autre sur le port SPI entre le PIC32MX et le module WiFi sous peine de gros PB...
    Si tu utilises une mémoire flash il vaut mieux la connecter à un autre port SPI du PIC32MX
    a+

  4. #4
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Merci RISC d'avoir répondu, en fait je vais rien mettre de plus que la carte wifi sur le port SPI1 , effectivement je garde le schéma fonctionnel du starter kit, seulement j'utilise la mémoire flash cité plus haut mais sur un autre bus du micro (SPI4)et j'avais un doute sur la connexion du bus SPI avec les différentes appellation d'entrées sorties, MISO, MOSI, SDO, SDI.

    et j'ai donc pu constater comme exemple des branchements de la carte wifi que sa broche MOSI --> SDI du micro et MISO <-- SDO du micro et ma mémoire branché sur le bus SPI4 possède les broches SO/SIO et SI/SIO donc j'ai connecté la SO Flash --> SDI4 micro et SI <-- SDO4 du micro.

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

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par RISC Voir le message
    Salut,
    Il ne faut rien connecter d'autre sur le port SPI entre le PIC32MX et le module WiFi sous peine de gros PB...
    Si tu utilises une mémoire flash il vaut mieux la connecter à un autre port SPI du PIC32MX
    a+
    Bonjour RISC,

    Une question me vient au sujet du layout qui aceuil le module wifi, en page 9 du document il est descrit la dimension et emplacement des pattes de celui-ci
    http://ww1.microchip.com/downloads/e.../50002410A.pdf

    Seulement, j'ai un doute sur l'implantation , notamment sur l'espace du gros carré ou il est dit "keep out area" ça veut dire quoi exactement, j'ai laissé la zone sans cuivre en dessous mais je sais pas trop si ça veut dire ça ?

    Puis les 4 ronds aux 4 coins également, que doit-on faire ?

    Moi j'ai donc mis un plan de masse en dessous de la carte, limité à la partie antenne que j'ai fait débordé sur l’extérieur de la carte comme indiqué

    Merci , je viens d'envoyé les fichiers gerbers , mais j'ai un doute d'un seul coup

  7. #6
    RISC

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Salut,
    Une chose que je ne comprends pas..Dans ton premier post tu parles du module WiFi MRF24WB0MA (très vieux module).
    Dans ton post #4 tu donnes le lien du MRF24WN0MA qui est très différent...Lequel des 2 envisages-tu d'utiliser ?
    a+

  8. #7
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par RISC Voir le message
    Salut,
    Une chose que je ne comprends pas..Dans ton premier post tu parles du module WiFi MRF24WB0MA (très vieux module).
    Dans ton post #4 tu donnes le lien du MRF24WN0MA qui est très différent...Lequel des 2 envisages-tu d'utiliser ?
    a+
    j'utilise le module N ? donc MRF24WN0Mb, et j'ai un doute

  9. #8
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par RISC Voir le message
    Salut,
    Une chose que je ne comprends pas..Dans ton premier post tu parles du module WiFi MRF24WB0MA (très vieux module).
    Dans ton post #4 tu donnes le lien du MRF24WN0MA qui est très différent...Lequel des 2 envisages-tu d'utiliser ?
    a+
    Autant pour moi, je me suis tromper dans la réf du module au premier post

  10. #9
    Aurélien

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    La mémoire SST25VF064C est obsolète...

  11. #10
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par Aurélien Voir le message
    La mémoire SST25VF064C est obsolète...
    Comment ça obsolète, elle est encore distribué. et fonctionnelle ....

    Je les déjàs prévu sur mon circuit et envoyé en fab proto, je pourrai l'utilisé correctement ?

  12. #11
    spown

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Microchip dit : 'Not Recommended for new designs'. À toi de voir.

    http://www.microchip.com/wwwproducts/en/SST25VF064C

  13. #12
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par spown Voir le message
    Microchip dit : 'Not Recommended for new designs'. À toi de voir.

    http://www.microchip.com/wwwproducts/en/SST25VF064C
    OK et il y aurait quelque chose d'équivalent ? en fait c'est la SST25VF064"C" qui est obselete ? si j'ai bien compris ?
    Dernière modification par davidif ; 02/05/2016 à 12h16.

  14. #13
    Aurélien

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par davidif Voir le message
    OK et il y aurait quelque chose d'équivalent ?
    ==> http://www.microchip.com/wwwproducts/en/SST25VF064C

    Citation Envoyé par davidif Voir le message
    en fait c'est la SST25VF064"C" qui est obselete ?
    T'en connais d'autres ?

  15. #14
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par Aurélien Voir le message
    Bah si je dis pas de bétises microchip recommande de migrer vers la SST25VF064"b" ou "ba", donc si c'est le cas je peux mettre en lieu et place la version B les pins correspond

    http://ww1.microchip.com/downloads/e.../20005119G.pdf

  16. #15
    Aurélien

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par davidif Voir le message
    Bah si je dis pas de bétises microchip recommande de migrer vers la SST25VF064"b" ou "ba"
    Non, c'est la SST26, pas 25 !

    Citation Envoyé par davidif Voir le message
    donc si c'est le cas je peux mettre en lieu et place la version B les pins correspond
    Les pins correspondent, pas le soft. Il y a un doc de migration prévu à cet effet.

  17. #16
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Citation Envoyé par Aurélien Voir le message
    Non, c'est la SST26, pas 25 !


    Les pins correspondent, pas le soft. Il y a un doc de migration prévu à cet effet.
    Ha mince !! autant pour moi , je vais aller revoir ça, pour mon design c'est pas trop grave alors si les pins correspondes, le soft ça bouge donc pas de problème donc pour ma carte.

    en tout cas merci

  18. #17
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Bonjour,

    pour le câblage de la mémoire flash, je l'utilise en parallèle comme ceci

    Nom : memoir.jpg
Affichages : 138
Taille : 50,4 Ko

    qu'est-il recommandé pour la connexion des pins de wp/SIO2 et hold/SIO3 ?

    après est-il préférable de les utiliser en série je ne sais pas si je fais le bon choix pour ne pas avoir testé
    en entrant sur la pin SIO0(5) de U14, sortant de la pin SIO1(2) U14 PUIS je rentre sur la pin SIO0(5) de U15, sortant de la pin SIO1(2) U15, oufff jamais essayé comme ça

    MERCI pour votre aide

  19. #18
    satinas

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Par contre, dans la méthode, dois-je inclure directement les fichiers nvm_flash_spi_sst26vf0xxb.c et nvm_flash_spi_sst26vf0xxb.h Dans mon soft car c'est ce que j'ai fais et évidemment j'ai eu une tonne d'erreur que j'ai du mal à tout comprendre.
    Salut, c'est pas simple, c'est sur alors :
    - soit la flash est câblée en SQI, et un driver existe dans Harmony 1_8_01
    - soit la flash est câblée en SPI, et là il semble qu'il n'y ait pas de driver pic32.
    Donc soit tu pars du driver SST25 d'Harmony et tu le modifies pour la SST26, mais là aussi c'est pas simple.
    Soit tu pars du driver SST26 des MLA comme indiqué :

    Tu utilises ce driver nvm_flash_spi_sst26vf0xxb.c avec son .h, sans les modifier. Le .h ne fait que prototpyper les fonctions de lecture écriture de la flash du .c.
    Ensuite tu fais un second fichier my_spi_pic32.c avec son .h, qui regroupe tes propres fonctions spi, celles appelées par le driver. Le .h sera aussi inclus dans le driver.

    DRV_SPI_Initialize(initData)
    DRV_SPI_Put(chn, b)
    DRV_SPI_Get(chn)
    DRV_SPI_GetBuffer(uint16_t chn, uint8_t *p, uint16_t n)
    DRV_SPI_Lock()
    DRV_SPI_Unlock()
    NVM_SST26_ChipSelectEnable()
    NVM_SST26_ChipSelectDisable()

    Les chn et la structure initData sont là pour compliquer les choses, pas la peine de les utiliser, mais tu les enlèves pas.
    Il me semble que tu as déjà fait du spi, c'est pas bien compliqué, l'init spi sans interruption, c'est quelques registres à écrire.
    Par contre les fonctions put/get, il y a un paquet de versions selon les libraries.
    En voila une qui marche à tous les coups :
    Code:
    uint8_t SpiWriteRead(uint8_t b)   // flash spi, écrire/lire octet
    {
      while (!SPI_STATbits.SPITBE) ;  // wait transmit buffer empty
      SPI_BUF = b;                    // write to transmit buffer
      while (!SPI_STATbits.SPIRBF) ;  // wait for transfer complete
      return SPI_BUF;                 // read the received value
    }

  20. #19
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Après plusieurs méthode sur d'autre soft xc32

    j'ai tenté d'inclure directement dans mon soft harmony, j'ai donc inclu le

    nvm_flash_spi_sst26vf0xxb.c et nvm_flash_spi_sst26vf0xxb.h et l'erreur que j'ai concerne le fichier system.h

    Nom : erreur.png
Affichages : 115
Taille : 162,3 Ko

    J'ai donc pensé à récupérer ce fichier dans le répertoire MLA mais là je bloque, il y en a pas mal selon l'application donc lequel prendre

  21. #20
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Par contre , j'ai mis une image, je pensais q'en cliquant dessus elle s'agrandirai mais apparemment non il me semble

  22. #21
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Juste pour voir, si il s'agit du format de l'image
    Nom : erreur.jpg
Affichages : 117
Taille : 149,7 Ko

  23. #22
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Bah bas du coup, mes images son peu lisible

    make[2]: Entering directory 'C:/Users/Tecwave/disque 1t/etude/hardware/Programme PIC32/WIFI/N V1.2/apps/tcpip/web_server_nvm_mpfs/firmware/pic32_eth_wifi_web_server.X'
    "C:\Program Files (x86)\Microchip\xc32\v1.40\bin \xc32-gcc.exe" -g -x c -c -mprocessor=32MX795F512L -ffunction-sections -O1 "-DPLIB_INLINE=static inline" "-DPLIB_INLINE_API=static inline" -D__XC -I../src -I../src/system_config/pic32mx_eth_sk+ioexp+11n+freer tos/framework -I../../../../../framework -I../../../../../framework/crypto -I../src/pic32mx_eth_sk+ioexp+11n+freer tos -I../src/system_config/pic32mx_eth_sk+ioexp+11n+freer tos -I../../../../../framework/driver/wifi/mrf24wn/include -I../../../../../framework/driver/wifi/mrf24wn/wireless_driver/include -I../../../../../framework/driver/wifi/mrf24wn/wireless_driver_extension -I../../../../../bsp/pic32mx_eth_sk -I../../../../../third_party/rtos/FreeRTOS/Source/portable/MPLAB/PIC32MX -I../../../../../third_party/rtos/FreeRTOS/Source/include -Werror -Wall -MMD -MF build/pic32mx_eth_sk+ioexp+11n+freer tos/production/_ext/1360937237/nvm_flash_spi_sst26vf0xxb.o.d -o build/pic32mx_eth_sk+ioexp+11n+freer tos/production/_ext/1360937237/nvm_flash_spi_sst26vf0xxb.o ../src/nvm_flash_spi_sst26vf0xxb.c
    nbproject/Makefile-pic32mx_eth_sk+ioexp+11n+freer tos.mk:1505: recipe for target 'build/pic32mx_eth_sk+ioexp+11n+freer tos/production/_ext/1360937237/nvm_flash_spi_sst26vf0xxb.o' failed
    make[2]: Leaving directory 'C:/Users/Tecwave/disque 1t/etude/hardware/Programme PIC32/WIFI/N V1.2/apps/tcpip/web_server_nvm_mpfs/firmware/pic32_eth_wifi_web_server.X'
    nbproject/Makefile-pic32mx_eth_sk+ioexp+11n+freer tos.mk:78: recipe for target '.build-conf' failed
    make[1]: Leaving directory 'C:/Users/Tecwave/disque 1t/etude/hardware/Programme PIC32/WIFI/N V1.2/apps/tcpip/web_server_nvm_mpfs/firmware/pic32_eth_wifi_web_server.X'
    nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed
    ../src/nvm_flash_spi_sst26vf0xxb.c:25 :20: fatal error: system.h: No such file or directory
    #include "system.h"
    ^
    compilation terminated.
    make[2]: *** [build/pic32mx_eth_sk+ioexp+11n+freer tos/production/_ext/1360937237/nvm_flash_spi_sst26vf0xxb.o] Error 1
    make[1]: *** [.build-conf] Error 2
    make: *** [.build-impl] Error 2

    BUILD FAILED (exit value 2, total time: 754ms)

  24. #23
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    DRV_SPI_Initialize(initData)
    DRV_SPI_Put(chn, b)
    DRV_SPI_Get(chn)
    DRV_SPI_GetBuffer(uint16_t chn, uint8_t *p, uint16_t n)
    DRV_SPI_Lock()
    DRV_SPI_Unlock()
    NVM_SST26_ChipSelectEnable()
    NVM_SST26_ChipSelectDisable()

    toutes ces fonctions , tu parles de les implémenter ? ou ce trouvent-elle quelques par ?

    là je suis pommé, j'ai l'impression que c'est super compliqué.

  25. #24
    satinas

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Oui, il faut les implémenter, utilise tes anciennes sources, il ne faut pas systématiquement repartir à zéro.
    Pour Get() et Put() utilise ma fonction ci-dessus.
    GetBuffer c'est une fonction avec boucle sur Get()
    Unlock() est une fonction qui fait rien
    Lock une fonction qui retourne 1, car dans le driver il fait -> while (! SPILOCK(spiInitData.channel)) ;

    system.h contient juste les defines des horloges système/instruction/périphérique
    Tu en auras besoin pour l'init du port SPI, dont la vitesse est basée sur l'horloge des périphériques.
    mais tu aurais pu les récupérer dans tes anciennes applis et te passer de cet include

    Le fichier main.c de ton appli test fera :
    Code:
    uint8_t r, w = 0x57;
    NVM_SST26VF0XXB_Initialize(NULL);
    uint8_t ret = NVM_SST26VF0XXB_Write(0x000000, &w, 1);
    if (!ret) afficher erreur
    NVM_SST26VF0XXB_Read(0x000000, &r, 1);
    if (r != w) afficher erreur
    while (1) ;

  26. #25
    satinas

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Elles se trouvent peut être quelque part, mais je sais pas où, alors moi, dans ce cas je les fais comme ça elles se trouvent quelque part dans mon PC

  27. #26
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Bonjour satinas,

    J'ai fais comme tu m'a descrit, placer les fichiers d'origine(nvm_flash_spi_sst26v f0xxb.c et nvm_flash_spi_sst26vf0xxb.h) et créer les autres(my_spi_pic32.c et my_spi_pic32.h), inutile de te dire que j'ai une tonnes d'erreur quand je place notamment le "nvm_flash_spi_sst26vf0xxb .c"

    Je sais pas si je dois te mettre le listing des nombreuses erreurs, aux quels cas dit le moi.

    Je te met un échantillon
    Code:
    make[2]: Entering directory 'C:/Users/Tecwave/disque 1t/etude/hardware/Programme PIC32/WIFI/N V1.2/apps/tcpip/web_server_nvm_mpfs/firmware/pic32_eth_wifi_web_server.X'
    In file included from ../src/nvm_flash_spi_sst26vf0xxb.c:27:0:
    ../src/nvm_flash_spi_sst26vf0xxb.h:58:36: error: unknown type name 'DRV_SPI_INIT_DATA'
     void    NVM_SST26VF0XXB_Initialize(DRV_SPI_INIT_DATA *pInitData);
                                        ^
    ../src/nvm_flash_spi_sst26vf0xxb.c:98:1: error: unknown type name 'DRV_SPI_INIT_DATA'
     static DRV_SPI_INIT_DATA spiInitData;
     ^
    ../src/nvm_flash_spi_sst26vf0xxb.c:135:33: error: unknown type name 'DRV_SPI_INIT_DATA'
     void NVM_SST26VF0XXB_Initialize(DRV_SPI_INIT_DATA *pInitData)
                                     ^
    ../src/nvm_flash_spi_sst26vf0xxb.c: In function 'NVM_SST26VF0XXB_WriteEnable':
    ../src/nvm_flash_spi_sst26vf0xxb.c:164:5: error: implicit declaration of function 'NVM_SST26_ChipSelectEnable' [-Werror=implicit-function-declaration]
         NVM_SST26_ChipSelectEnable();
         ^
    Il semblerai que ce qu'il manque serait les #defines qui sont sensé être dans le system.h que j'ai remplacé par mon system_config.h.
    A ton avis, penses tu que je puisse trouver le fichier system.c dans le répertoire MLA pour récupérer les #define pour les copier dans mon config_system.h

    J'ai tenté de le trouver, mais il y en a tellement,

  28. #27
    satinas

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    soit la flash est câblée en SQI, et un driver existe dans Harmony 1_8_01
    Je parlais uniquement du 32MZ, le 32MX ne fait pas le SQI.

    Si tu t'obstines à intégrer le driver MLA à Harmony, je ne peux rien faire, Harmony est trop complexe, et je ne le connais pas assez bien.
    Tu peux regarder là, certains ont modifié le driver SST25 Harmony pour la SST26, mais faut savoir bidouiller le méandre Harmony.
    http://www.microchip.com/forums/m888143.aspx
    On y apprend que la flash est verrouillée en readonly, semble-t-il à chaque power on.

    Si tu as fait un projet Xc32 tout simple NON Harmony, tu peux le joindre en zip, je le regarderais.

  29. #28
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Je suis en SPI

  30. #29
    davidif

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    En fait, j'ai fais comme conseiller au départ, seulement j'ai rencontré quelques obstacle sur un soft simple en xc32,fallait ré-implémenter mon code d'origine pour l'adapter, notamment sur la config_system(clok, périphérique, spi, ) , puis à l'époque j'était sur un ancien compilation XC1.21 qui passait alors que le plus récent 1.40 passait pas et au final (peut être à tord) j'ai essayé de me remettre sur harmony en pensant pourvoir plus facilement implémenter mon bus SPI tout dabord , serait-ce un mauvais calcul ? (:

    Mais je te rassure, j'ai d'autre difficulté sur harmony aussi (: et peut-être revenir sur le programme simple

  31. #30
    satinas

    Re : utilisation mémoire flash SST25VF064C pic32mx795f512l

    Il faut d'abord faire un programme simple de test de la flash, qui s'intégrera par la suite en 5mn dans ton projet Harmony. Ceci dit, je n'ai pas de flash SST26 sous la main, alors quand tu me diras ça marche pas ...

Page 1 sur 7 12 3 4 5 6 DernièreDernière

Discussions similaires

  1. Questions compatibilité mémoire flash externe
    Par julius10 dans le forum Matériel - Hardware
    Réponses: 1
    Dernier message: 27/08/2015, 17h07
  2. Données d'un disque dur interne non reconnu en utilisation externe
    Par grd666 dans le forum Matériel - Hardware
    Réponses: 9
    Dernier message: 13/02/2015, 12h55
  3. Utilisation DMA du PIC32 pour mémoire flash sur SPI
    Par detube78 dans le forum Électronique
    Réponses: 5
    Dernier message: 09/09/2013, 08h44
  4. Emuler une liaison SPI memoire Flash externe avec un PIC
    Par soldat86 dans le forum Électronique
    Réponses: 16
    Dernier message: 19/07/2013, 22h19
Découvrez nos comparatifs produits sur l'informatique et les technologies.