Motorola 68705


Micros & Co: Motorola

L'EDITO DU JOUR:

Malgré son âge, ce microcontrôleur peut encore rendre bien des services.
Pour ceux que cela intéresserait, j'ai créé quelques routines perso, dont des routines de communications séries et un driver i2c entre autres...


Relire l'EEPROM d'un 68705P3S déjà programmé

(Discussion traduite d'un forum datant de 1996...)

Question:
est-il possible de relire l'EPROM de la monopuce 68705p3 ? si oui alors comment ?


Réponse:
Il existe un algorithme complexe que je n'ai pas encore essayé...
Il utilise la séquence de vérification de programme du 68705 pour vous indiquer quand une image d'un programme (externe) n'est pas conforme au contenu de l'EEPROM.
La séquence de la partie vérification du programme s'interrompt (je pense) lorsqu'elle rencontre la première adresse avec un contenu qui ne correspond pas.

  1. Configurer le circuit de programmation 68705, à l'aide d'une RAM pilotée par un microprocesseur à la place de l'EPROM.
  2. Remplissez la RAM avec tous les octets à "0".
  3. Réglez la tension de programmation à zéro. (VPP)
    (ainsi le programme original du chip ne sera pas modifié)
  4. Démarrez la séquence de programmation et lorsque la séquence de vérification démarre, vérifiez à quelle adresse la séquence de vérification échoue.
  5. Si la vérification échoue à la première adresse, incrémentez les données dans la première adresse RAM et répétez les étapes 4 et 5 jusqu'à ce que la vérification passe.
  6. Répétez les étapes 3 à 5 pour chaque adresse suivante.
    Lorsque toutes les adresses se vérifient correctement, la RAM contient alors une image de l'EPROM.

Une amélioration (pour la programmation).
La ROM de programmation du bootstrap sautera la programmation d'un octet si la valeur est 0.
Chaque octet non nul prendra plusieurs millisecondes de programmation (50 ?), mais les octets 0 sauteront l'étape de programmation.
Vous pouvez déterminer dans quelle passe se trouve le bootstrap se trouve par les sorties du lecteur de LED. Il programme la pièce entière et puis vérifie.
Donc, pendant la programmation, donnez-lui une valeur 0, (en mettant la tension de programmation VPP à 0 pour ne pas effacer le programme original en EEPROM) puis basculez vers la mémoire de données pour la vérification.

Autre témoignage de l'astuce (valable aussi pour les 16F84 apparemment):
A l'époque il existait effectivement une astuce pour pomper le code.
On se servait de la fonction de vérification du code après programmation.
Le principe est le suivant:
on réalise un programme qui entre dans la phase de vérification du code et on présente 00 pour le premier octet, le chip répond pas bon, donc on présente 01 etc jusqu'à 255 maxi
quand le chip répond OK pour le premier octet, on passe au deuxième, et pareil pour les octets suivants.



QUELQUES LIENS :


POUR ME JOINDRE, ME POSER UNE QUESTION, VOS SUGGESTIONS:

Mon adresse de messagerie électronique
contact@Cliquez-pour-ouvrir-la-messagerie


| L'éditorial | Quoi de neuf | Liens Motorola | Contact | Atmel | Microchip | Page d'accueil |