Utilisation du TommyProm32

Matériel nécessaire

Flasher le TommyProm32 avec la configuration pour SST

En fonction du type de puce à flasher, il faut reprogrammer l'Arduino nano présent sur le PCB, via le logiciel 'Arduino'.

  1. Installer le logiciel arduino
  2. Configurer le logiciel Arduino pour utiliser la bonne carte.
  3. Télécharger le sketch arduino du TommyProm32
  4. Extraire les fichiers dans le dossier de votre choix et ouvrir le projet TommyPROM.ino qui se trouve dans le dossier 'TommyPROM'.
  5. Dans le fichier 'Configure.h', dé-commenter la ligne correspondant à votre type de puce en supprimant les // qui se trouvent devant (lignes 9 à 14).
  6. Vérifier et téléverser le sketch.

Arduino IDE GUI

Cas de l'utilisation d'un clône Arduino LGT8F328P

Ces cartes peu onéreuses (~3$) nécessitent l'installation d'une librairie spéciale dans le logiciel Arduino pour pourvoir les flasher.

  1. Télécharger l'archive de lalibrairie ici.
  2. Extraire le dossier 'LGT' contenu dans l'archive dans le dossier 'hardware' qui se trouve lui même dans le dossier de vos sketches, par défaut :
OS Chemin
Windows C:\Users\<Username>\Documents\Arduino
Mac OSX /Users/user/Documents/Arduino
LINUX /home/<Username>/sketchbook/
  1. Dans le logiciel Arduino, sélectionner la carte "LGT8F328P-LQFP32 MiniEVB" via le menu "Outils" > "Type de carte" > "Arduino AVR boards (from sketchbook)".

Vous devriez maintenant pouvoir téléverser des croquis sur la carte.

SST39SF0X0

Les puces SST39SF0x0 ne nécessitent qu'une tension de 5V pour être programmée, et celle-ci est fournie par le Arduino directement depuis le port USB de l'ordinateur.

Connexions

Aucune connexion particulière n'est requise, il faut juste faire attention à insérer la puce avec le détrompeur vers l'extérieur du PCB (côté du levier du support ZIF).

tp32-27c512

Opérations

Toutes les commandes prennent la forme Xsssss eeeee ou X correspond à une commande, sssss l'adresse de débutet eeeee l'adresse de fin (en héxadécimal).

Lecture d'une valeur sur l'eprom

Lancer une commande de lecture, par exemple D0 ff pour lire les valeurs des bits 0 jusqu'à 255.

Dump d'une eprom et transfert sur le disque dur

  1. Lancer une commande de lecture, par exemple R0 10000 pour dumper les valeurs de 0 jusqu'à 65536 (64Kio).
  2. Sous Windows dans Teraterm :Lancer la réception des données en allant dans le menu 'File' > 'Transfer' > XMODEM > Receive...
    Menu
    Sous Linux dans Minicom : Ctrl-A R, xmodem
  3. Sélectionner un emplacement pour sauver le fichier et valider.

Écriture d'une eprom

  1. Lancer une commande d'écriture, par exemple W0 pour écrire les données à partir de l'adresse 0.
  2. Sous Windows dans Teraterm : Lancer l'envoi des données en allant dans le menu 'File' > 'Transfer' > XMODEM > Send...
    Sous Linux dans Minicom : Ctrl-A S, xmodem
  3. Sélectionner un fichier à écrire et valider.

Linux: Minicom et problème de transferts xmodem

Sous Linux, en cas de problème avec minicom et le transfert xmodem, il faudra peut-être installer le paquet lrzsz et configurer la commande de transfert dans minicom :

Pour ouvrir le menu de configuration : Ctrl-A O, Protocoles de transfert, touche C pour xmodem, Entrée, puis éditer la commande suivante :

lrzsz-sx -b -X

Laisser tout le reste par défaut, appuyer sur la touche Entrée jusqu'au retour dans le menu, puis sélectionner Enregistrer config. sous dfl

Alimentation externe - exemple d'une EPROM 27C512

Un article spécifique pour les EPROM nécessitant une alimentation externe est disponible ici.

Références

https://tomnisbet.github.io/TommyPROM/docs/tommyprom32-pcb#tommyprom32
https://ww1.microchip.com/downloads/en/DeviceDoc/20005022C.pdf
https://github.com/LGTMCU/Larduino_HSP
https://github.com/RalphBacon/LGT8F328P-Arduino-Clone-Chip-ATMega328P?tab=readme-ov-file#6-simple-steps-to-get-a-lgt8f328p-based-board-running-at-32mhz