Table des matières:

BYTEBANGER EEPROM Arduino I²C™ : 5 étapes
BYTEBANGER EEPROM Arduino I²C™ : 5 étapes

Vidéo: BYTEBANGER EEPROM Arduino I²C™ : 5 étapes

Vidéo: BYTEBANGER EEPROM Arduino I²C™ : 5 étapes
Vidéo: Arduino I2C External I²C EEPROM BYTEBANGER OVERVIEW 2024, Juillet
Anonim
BYTEBANGER EEPROM Arduino I²C™
BYTEBANGER EEPROM Arduino I²C™

Récemment, je suis devenu intrigué par les EEProms I²C après en avoir récupéré une partie d'un vieux téléviseur à rétroprojection que j'étais en train de mettre au rebut.

J'ai parcouru Internet en essayant de trouver plus d'informations à leur sujet, telles que des fiches techniques et des didacticiels sur la façon dont ces choses fonctionnaient et pouvaient être utilisées. Étonnamment, les informations étaient dispersées et quelque peu rares… les fiches techniques étaient assez faciles à trouver, et il existe quelques tutoriels (y compris des vidéos) qui montrent des moyens très basiques d'accéder à la fonctionnalité des eeproms. Je n'étais toujours pas satisfait de ce que je voulais faire, alors j'ai décidé de configurer ma maquette et d'écrire mon propre code, ainsi que quelques bibliothèques Arduino… et l'I²C™ EEPROM BYTEBANGER était né !

Les tutoriels que j'ai trouvés manquaient de certaines choses que je voulais faire, comme lire et écrire des données depuis et vers l'eeprom plus d'un octet à la fois. Je voulais également avoir la possibilité de vider les données eeprom sur une carte SD, ainsi que de charger un fichier CSV à partir de la carte SD et de reprogrammer l'eeprom.

L'ajout de fonctions de manipulation de données et de paramètres de contrôle au code a vraiment complété ce que je pense être une très belle application Arduino que vous apprécierez ! Étonnamment, les fournitures dont vous avez besoin sont peu nombreuses… écrire le code a été la partie la plus difficile… ce qui est une bonne nouvelle pour vous puisque cela est fourni ici pour que vous puissiez le télécharger.

Je voulais m'assurer que je pouvais faire tout cela en utilisant un Arduino UNO car cela semble toujours être un micro-contrôleur très populaire, et mes pensées étaient "si cela fonctionne sur un UNO, alors cela devrait fonctionner sur n'importe quoi" ce qui est probablement true en modifiant légèrement le code de votre microcontrôleur spécifique.

Fournitures

Tu auras besoin de:

un Arduino UNO R3 avec câble USB au moins 1 (et jusqu'à 8) module de carte SD I²C EEPromsan un haut-parleur ou un buzzer piézo (en option) un fil de raccordement à une planche à pain

Étape 1: Schéma

Schématique
Schématique
Schématique
Schématique

Utilisez le schéma et les photos de Fritzing ci-dessus comme guide pour brancher votre (vos) eeprom(s), le module SD et le haut-parleur en option.

J'ai trouvé qu'il valait mieux commencer par les eeproms.

Mettez-les sur la maquette comme indiqué, en faisant attention à l'espacement entre les eeproms. Vérifiez la fiche technique de votre eeprom spécifique, mais j'ai constaté que la plupart des eeproms I²C PDIP8 ont le même brochage:

Les broches 1-3 sont les paramètres d'adresse pour l'eeprom. La broche 4 est connectée à la terre. La broche 5 est SDA (données) qui se connecte à la broche UNO SDA La broche 6 est SCL (horloge) qui se connecte à la broche UNO SCL La broche 7 est WP (Write Protect) qui est connecté à la masseLa broche 8 est VCC connectée à +5v

J'ai trouvé plus facile de commencer en ajoutant d'abord le VCC et les fils de terre à chaque eeprom. (si vous n'utilisez qu'un seul eeprom c'est super facile !)

Câblez ensuite les lignes SDA et les lignes SCL au bus I²C.

Comme nous pouvons adresser jusqu'à 8 eeproms sur le bus I²C, nous allons relier toutes les lignes SDA entre elles et de même avec les lignes SCL. Si vous remarquez sur la photo, j'ai utilisé un rail d'alimentation supplémentaire comme bus I²C. Si vous n'avez pas de rail supplémentaire, vous pouvez simplement suivre le schéma de Fritzing.

Attachez maintenant tout le WP (broche 7) à la terre. Nous voulons pouvoir écrire dans l'eeprom après tout… et ne vous inquiétez pas, il y a une fonction SAFEMODE dans le code que nous pouvons utiliser pour émuler la fonction Write Protect.

Nous allons maintenant brancher le module SD…

Étape 2: Module SD

Module SD
Module SD

Votre module SD peut être légèrement différent de celui que j'ai utilisé, mais ils sont tous fondamentalement les mêmes. (Vous pouvez même utiliser un adaptateur de carte micro SD seul… mais c'est un futur projet)

En regardant les broches du module SD de gauche à droite, elles sont:

CS- Chip SelectSCK- Serial ClockMOSI- Master Out/Slave InMISO- Master In/Slave OutVCC- +5vGROUND3.3 (non utilisé)

Connectez CS à UNO broche 8 Connectez SCK à UNO broche 13Connectez MOSI à UNO broche 11Connectez MISO à UNO broche 12

Étape 3: connectez le haut-parleur

Le haut-parleur ou le buzzer piézo est totalement facultatif.

Connectez le haut-parleur à la terre et à la broche UNO 7.

Le code utilise quelques fonctions sonores, mais pas impératives pour le fonctionnement. (en fait, parfois, je débranche le haut-parleur lorsque je ne veux pas entendre le son. Vous pouvez également configurer un interrupteur.)

Étape 4: Connectez l'UNO Power et téléchargez le code

Connectez l'UNO Power et téléchargez le code
Connectez l'UNO Power et téléchargez le code
Connectez l'UNO Power et téléchargez le code
Connectez l'UNO Power et téléchargez le code

Connectez la terre et le +5v de l'UNO aux rails d'alimentation de votre planche à pain.

N'OUBLIEZ PAS DE FIXER ENSEMBLE VOS RAILS DE PUISSANCE ET DE TERRAIN SUPÉRIEUR ET INFÉRIEUR !

Maintenant, branchez simplement votre UNO sur votre ordinateur et téléchargez le code !

Le code I²C EEPROM BYTEBANGER est assez complet et je vais faire une série de tutoriels vidéo sur toutes les fonctionnalités, mais il est également assez bien annoté avec des commentaires.

Je vous invite à vous abonner à ma chaîne YouTube où vous pourrez bientôt retrouver les tutoriels vidéo, ainsi que d'autres projets à venir.

Attrape-y-plus tard-au revoir !

~MITZ

Conseillé: