Modifications

Sauter à la navigation Sauter à la recherche
3 094 octets ajoutés ,  4 octobre 2023 à 14:00
Ligne 1 : Ligne 1 : −
== Introduction ==
+
== Préambule ==
 
Après avoir installé [[XGecu-install-Linux|XGPro sur mon PC Linux]] pour piloter XGecu, il est temps d'évoluer vers la suite du projet.
 
Après avoir installé [[XGecu-install-Linux|XGPro sur mon PC Linux]] pour piloter XGecu, il est temps d'évoluer vers la suite du projet.
    
Initialement, je voulais remplacer la UVPROM 27512 d'une carte Z80 sur laquelle  [https://github.com/mchobby/kicad-public-projects/tree/main/HASKEL-Z80 je fais un peu de rétro-ingénierie](Github) documenté sur ce [https://forum.system-cfg.com/viewtopic.php?f=18&t=14526&p=232910&hilit=dtmf#p232910 fil de discussion](System-cfg.com).
 
Initialement, je voulais remplacer la UVPROM 27512 d'une carte Z80 sur laquelle  [https://github.com/mchobby/kicad-public-projects/tree/main/HASKEL-Z80 je fais un peu de rétro-ingénierie](Github) documenté sur ce [https://forum.system-cfg.com/viewtopic.php?f=18&t=14526&p=232910&hilit=dtmf#p232910 fil de discussion](System-cfg.com).
   −
[[Fichier:carte-z80.png]]
+
[[Fichier:carte-z80.png|800px]]
    
La UVPROM se trouve est à l'emplacement ROM1 où son remplacement EEPROM/FLASH est déjà en place.
 
La UVPROM se trouve est à l'emplacement ROM1 où son remplacement EEPROM/FLASH est déjà en place.
    
Le remplaçant est un composant [https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwi8o-Lx0tiBAxV_fKQEHXiYDtwQFnoECA8QAQ&url=https%3A%2F%2Fwww.greenliant.com%2Fproducts%2F%3Finode%3D40825&usg=AOvVaw04aRHFSYZM5Fjzm27OjN94&opi=89978449 GLS27SF512 de GreenLiant] qui est une mémoire Flash NAND électriquement compatible avec une UVPROM 27512.  
 
Le remplaçant est un composant [https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwi8o-Lx0tiBAxV_fKQEHXiYDtwQFnoECA8QAQ&url=https%3A%2F%2Fwww.greenliant.com%2Fproducts%2F%3Finode%3D40825&usg=AOvVaw04aRHFSYZM5Fjzm27OjN94&opi=89978449 GLS27SF512 de GreenLiant] qui est une mémoire Flash NAND électriquement compatible avec une UVPROM 27512.  
 +
 +
Je suis arrivé à cette référence en passant par les produits SST 27F512 (Silicon Storage Technology) plus connu sur le WEB mais malheureusement indisponible en 2023 sur la Belgique.
 +
 +
Vous verrez plus loin qu'aucune information n'est a jeter.
    
[[Fichier:GLS27SF512-replacing-27512.png|320px]]
 
[[Fichier:GLS27SF512-replacing-27512.png|320px]]
Ligne 14 : Ligne 18 :  
Le GLS27SF512 fonctionne en logique 5V et est pin-compatible avec le 27C512 et donc aussi le 27512.
 
Le GLS27SF512 fonctionne en logique 5V et est pin-compatible avec le 27C512 et donc aussi le 27512.
   −
Faut-il encore arriver à programmer notre nouvelle "EEPROM" mémoire Flash! [https://arduino103.blogspot.com/2023/07/programmeur-deeprom-en-micropython.html Après de terribles frustrations à réaliser un programmeur avec MicroPython], j'ai fini par opter pour un programmeur [[XGecu-install-Linux|XGecu puisqu'il est capable de fonctionner sous Linux]].
+
Faut-il encore arriver à programmer notre nouvelle "EEPROM" mémoire Flash!  
 +
 
 +
[https://arduino103.blogspot.com/2023/07/programmeur-deeprom-en-micropython.html Après de terribles frustrations à réaliser un programmeur avec MicroPython], j'ai fini par opter pour un programmeur [[XGecu-install-Linux|XGecu puisqu'il est capable de fonctionner sous Linux]] grâce à Wine.
 +
 
 +
== Exemples XGpro ==
 +
 
 +
=== Lecture UVPROM 27512 ===
 +
 
 +
Avant de programmer une mémoire Flash (EEPROM), il serait bien d'extraire le contenu de l'EEPROM déjà en place sur ma carte.
 +
 
 +
[[Fichier:UVPROM-27512.png|220px]]
 +
 
 +
Commençons par placer l'UVProm 27512 sur le XGecu (le marquage en demi-lune -surligné en blanc- est orienté vers le levier).
 +
 
 +
[[Fichier:XGecu-27512.png|384px]]
 +
 
 +
Ensuite on démarre le programme XGPro et nous identifions le composant.
 +
 
 +
Cliquer sur le bouton "Select IC" et retrouver l'entrée 27512 en DIP28 à l'aide de la recherche suivante:
 +
 
 +
[[Fichier:XGecu-UVPROM-Select.png]]
 +
 
 +
Le composant sélectionné, il est alors possible de lire le contenu de l'UVPROM en pressant le bouton "READ".
 +
 
 +
[[Fichier:XGecu-UVPROM-Read.png]]
 +
 
 +
Ce qui affiche la boîte de dialogue de lecture.
   −
== Montage ==
+
[[Fichier:XGecu-UVPROM-Read-Popup.png]]
Commençons par programmer le GLS27SF512 à l'aide d'un adaptateur PLCC32 disponible dans le kit XGecu.  
     −
[[Fichier:XGecu-GLS27SF512-PLCC32-adapter.png|384px]]
+
Reste à presser le bouton "Read" pour débuter la lecteure
 +
 
 +
[[Fichier:XGecu-UVPROM-Read-Popup2.png]]
 +
 
 +
Enfin, nous disposons des données dans la mémoire tampon du programme
 +
 
 +
[[Fichier:XGecu-UVPROM-data.png]]
 +
 
 +
Cliquer sur le point de menu "File | Save ..." permet de sauver le fichier sous différents formats.
 +
 
 +
[[Fichier:XGecu-UVPROM-save.png]]
 +
 
 +
=== Programmer le GLS27SF512 ===
 +
Cette partie du tuto propose de programmer l'EEPROM/Flash GLS27SF512 à l'aide d'un adaptateur PLCC32 disponible dans le kit XGecu.
 +
 
 +
[[Fichier:GLS27SF512-replacing-27512.png|220px]]
    
J'ai opté pour l'adaptateur PLCC32-DIP28 convenant au 27C64/27C512 (puisque l'UVPROM 27512 est un DIP28).  
 
J'ai opté pour l'adaptateur PLCC32-DIP28 convenant au 27C64/27C512 (puisque l'UVPROM 27512 est un DIP28).  
 +
 
Le GLS27SF512 étant compatible 5V, j'ai gardé le cavalier de l'adaptateur fermé.
 
Le GLS27SF512 étant compatible 5V, j'ai gardé le cavalier de l'adaptateur fermé.
 +
 +
Comme vous pouvez le voir, l'EEProm GLS27SF512 est déjà en place dans le support PLCC32.
 +
 +
[[Fichier:XGecu-GLS27SF512-PLCC32-adapter.png|384px]]
 +
 +
Ensuite on démarre le programme XGPro et nous identifions le composant à programmer.
 +
 +
La référence GLS27SF512 n'est pas disponible dans l'énorme base-de-données de XGPro.
 +
 +
Par contre, nous avons une mémoire Flash SST27SF512 réputé compatible avec un 27C512 (lecture) mais aussi compatible avec le GLS27SF512 de Greenliant.
 +
 +
Cliquer sur le bouton "Select IC" et retrouver l'entrée SST27SF512 en DIP28 à l'aide de la recherche suivante:
 +
 +
[[Fichier:XGecu-EEPROM-Select.png]]
 +
 +
Après la sélection du Composant, '''il faut absolument décocher "Check ID"''' car ce que nous allons programmer est un GLS27SF512 (compatible SST27SF512) et non un SST27SF512.
 +
 +
Si XGpro vérifie l'ID (''identification'') du composant alors il refusera de programmer le GreenLiant (parce que ce n'est pas un SST).
 +
 +
[[Fichier:XGecu-EEPROM-Check-ID.png|1024px]]
 +
 +
Enfin, une fois le composant sélectionné, nous avons les options suivantes à notre disposition:
 +
* '''READ''' : Lecture
 +
* '''ERASE''' : Effacer
 +
* '''PROG.''' : Programmer
 +
 +
C'est le moment d'utiliser le menu "File | Load File" pour charger un fichier.
 +
 +
Comme je dispose d'un fichier binaire avec 64 Kio de données qui est chargée dans le Buffer (mémoire tampon) de XGPro.
 +
 +
[[Fichier:XGecu-Load-File.png]]
 +
 +
Les données chargées dans le Buffer, il ne reste plus qu'a presser le bouton "PROG".
 +
 +
[[Fichier:XGecu-Prog1.png]]
 +
 +
Presser le bouton "Program" et c'est fait.
 +
 +
[[Fichier:XGecu-Prog2.png]]
29 917

modifications

Menu de navigation