[Programmation] Projet: Carte polyvalente à 8051
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Projet: Carte polyvalente à 8051



  1. #1
    electroremy

    Projet: Carte polyvalente à 8051


    ------

    Bonjour,

    Pour les plus jeunes d'entre vous, le 8051 est un microcontrôleur d'Intel 8 bits né comme moi en 1980 (ouh je suis vieux ) qui avait pas mal d'avantages à son époque, notamment des opérations sur bit et une zone de RAM adressable par bit.

    Cela en faisait un micro assez adapté à l'électronique "bas niveau"

    La version originale était une grosse puce en boitier DIL à laquelle il fallait adjoindre une ROM et une RAM, avec bien sûr les "latchs" nécessaires.
    On appelait les circuits imprimés ainsi obtenu des "cimetières", car les nombreux circuits intégrés DIL ressemblaient à des pierres tombales
    Ca prenait de la place, ça coûtait cher.

    Rapidement, des versions du 8051 incluant de la ROM puis de la RAM sont apparues.

    Dans les années 1990/2000, ATMEL a sortit une version moderne : AT89C2051 : un petit circuit DIL incluait le 8051, 2 ko de ROM, 128 octets de RAM. Seuls deux ports étaient accessibles sur les broches I/O
    Dans les années 2000, ces AT89CX051 étaient des concurrents des fameux PIC.

    A cette époque, j'avais fabriqué un programmeur, sur port parallèle : http://electroremy.free.fr/elec-mo-atmel.html
    C'est totalement obsolète on est d'accord aujourd'hui il vaut mieux utiliser un Mini Pro sur port USB

    Toujours à cette époque, j'avais conçu une carte polyvalente, une sorte d'Arduino avant l'heure :
    - des broches d'E/S disponibles pour des extensions
    - un clavier
    - un écran LCD

    J'avais trouvé comment gérer le clavier et l'écran avec un seul port, les 8 broches de l'autre port étant entièrement disponibles pour l'extension.

    Mais j'ai terminé mes études, puis suis entré dans la vie active, avec beaucoup moins de temps pour l'électronique.
    La carte polyvalente a passé 20 ans sur mon "étagère diabolique des projets à terminer"

    Ne riez pas, vous en avez tous une chez vous

    Le COVID est arrivé et a apporté une chose que je n'avais pas connu depuis longtemps : l'ennui

    L'étagère diabolique est devenue alors sympatique : ouf de quoi s'occuper.

    La carte polyvalente est terminée :

    Voici le schéma :

    AT89C2051_RemyLUCAS_Schema.jpg

    Le brochage des puces :

    App_Brochages.jpg

    La réalisation pratique :

    AT89C2051_RemyLUCAS_2020_04_05_Photo1.jpg

    AT89C2051_RemyLUCAS_2020_04_05_Photo2.jpg

    Je ne publie pas le typon car le circuit avait plusieurs "bug" que j'ai du corrigé en câblage volant

    Voici le code source en assembleur Intel 8051 (à renommer en .A51 et à compiler avec MIDE 51) :

    LucAtmel89C2051_V61.txt

    A bientôt

    -----
    Dernière modification par Antoane ; 19/05/2021 à 16h19. Motif: réparation PJ

  2. #2
    electroremy

    Re : Projet : Carte polyvalente à 8051

    Quelques précisions :

    - le code est lisible avec un simple éditeur de texte (il est trop long pour être inclus dans le message avec la balise CODE)

    - voici ce que fait le programme :
    * fonction minuterie
    * fonction chien de garde - utilisable en minuterie redéclenchable par exemple pour cuire des crêpes parfaitement
    * double compteur
    * BP / inter antirebond
    * Porte logique 7 entrées avec fonction au choix
    * Générateur (compteur décompteur) ASCII
    * Générateur (compteur décompteur) code GRAY ou décimal au choix
    * Commande de deux moteurs pas à pas

    Les fonctions sont utiles dans un laboratoire d'électronique

    Dans la vie "normale", la fonction minuterie et chien de garde sont utiles... dans la cuisine (cuisson des crêpes ou des pâtes)

    On peut reprocher à ce montage sa consommation électrique qui n'est pas négligeable, du coup les prises pour une alimentation externe sont utiles.
    L'avantage c'est qu'en cas de coupure de courant, les piles assurent le fonctionnement comme un onduleur.
    C'est utile pour la fonction compteur qui permet de "surveiller" quelque chose pendant jusque 255 heures.

    Aujourd'hui on ferais cela facilement avec un Arduino ou juste avec un µC AVR

    Néanmoins, les 8051 sont toujours commercialisés et on en trouve encore dans pas mal d'appareils.
    Ainsi, ce n'est pas inutile de maitriser ce µC

    Mon code source possède pas mal de commentaires, il peut être utile pour ceux qui ont envie de se mettre au 8051 pour voir comment ça marche.

    A noté qu'un autre électronicien à réalisé cette carte polyvalente avec un ancien 8051 (avec ROM et RAM séparée)

    A bientôt !

  3. #3
    Piefra

    Re : Projet : Carte polyvalente à 8051

    Bjr,

    Chouette boulot

    Le schema et le brochage ne sont pas bien passes

    Cdlt

  4. #4
    vincent66

    Re : Projet : Carte polyvalente à 8051

    Bonjour...

    belle réalisation...! j'avais à l'époque fait quelquechose de similaire avec un 8052AH BASIC...

    belle journée...!
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

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

    Re : Projet : Carte polyvalente à 8051

    Citation Envoyé par vincent66 Voir le message
    j'avais à l'époque fait quelquechose de similaire avec un 8052AH BASIC...
    Oui c'est vrai à l'époque il y avait des µC avec interpréteur basic intégré

    Il y avait déjà une volonté de rendre les µC accessibles aux débutants, la philosophie Arduino avant l'heure

    Quoi que, sur les petits µC, avec peu de RAM et ROM, l'assembleur n'est pas si difficile, à partir de quelques exemples on comprend vite commente faire.

    C'est pour les grosses applications qu'il faut passer à un langage plus évolué comme le BASIC ou le C/C++

    Petite question : les instructions sur un bit ainsi que la plage de RAM adressable par bit est une particularité du 8051 ou bien d'autre µC le font ?

    A bientôt

  7. #6
    vincent66

    Re : Projet : Carte polyvalente à 8051

    J'avais même utilisé un 8052 BASIC pour mon travail de diplôme, associé à un dsp TMS320... Un des experts avait fait la moue mais avait bien dû admettre qu'il n'était pas bugué et simsplifiait nettement le développement du code...

    Si ma mémoire est bonne sur les PIC il y a une instruction de test de bit, BTSC, Bit Test Skip if Clear...

    belle journée...
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

Discussions similaires

  1. Projet Fontaine à carte
    Par invitef0bbdfa3 dans le forum Électronique
    Réponses: 5
    Dernier message: 04/01/2014, 20h12
  2. Projet MPI, carte d'acquisition
    Par invite4ef1620d dans le forum Électronique
    Réponses: 4
    Dernier message: 11/03/2010, 10h00
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...