Raspberry Pi Python EEPROM programmeur

Ce tutoriel simple guidera les utilisateurs à travers le processus d’interfacer une EEPROM puce à un Pi de framboise en utilisant les broches GPIO et effectuer des opérations avec des scripts Python.

Commençons par quelques notions de base sur EEPROM :

1) CE, OE, nous - que signifie ce tout ?

Pour lire, écrire et effacer les données d’une puce EEPROM, nous devons d’abord mettre la puce à l’état correct. Cela se fait à l’aide de 3 bornes de contrôle généralement nommé puce permettent, sortie permettre et permettre à écrire.

Chip Enable contrôle si la puce est sous tension. Selon le type de puce, reliant cette broche à la masse ou à tension met la puce sur ou hors service. Inutile de dire que se nous voulons effectuer toute opération, qu'il faut activer la puce. Désactiver la puce nous permet d’éteindre la puce tout en laissant électriquement relié à notre circuit. De cette façon la puce consomme moins d’énergie.

Sortie Enable est un NIP utilisé pour indiquer la puce que vous souhaitez pour le lire. Une fois de plus, selon la puce, reliant cette broche à la masse ou à la tension va dire la puce de vous présenter le contenu du compte tenu de l’adresse de mémoire (plus sur cela plus tard). Désactivation de la sortie termine l’opération de lecture.

Écrire à Qu'activer est similaire à la sortie activer mais utilisé pour écrire des données sur la puce. Selon le type de puce, reliant à la terre ou à tension fera l’écriture de données puce à une adresse mémoire sélectionnée (plus sur cela plus tard).

2) alors comment contrôler les broches ?

C’est facile ! Selon votre puce EEPROM, pour activer ou désactiver ces chevilles en les reliant à une source de tension ou au sol. Le jargon utilisé pour l’opération est « tirer vers le haut » pour le raccordement à la tension et « pull down » pour le raccordement à la terre. Dans certains cas (et dans notre cas en particulier), tirant vers le haut une épingle provoque l’état correspondant doit être désactivé au lieu de Enabled. Cela peut sembler contre intuitif puisque vous vous attendez à tirer vers le haut pour activer quelque chose, mais telle est la vie parfois.

AVERTISSEMENT!: laissant l’un de ces pins déconnectés du circuit n’est pas égal à elle étant tiré vers le bas ! Si les broches ne sont pas déconnecter le circuit que nous appelons « flottante » et essentiellement leur état est aléatoire et indéterminé. Par exemple, les interférences RF peuvent provoquer un signal fort ou faible et donc faire la broche agissent comme si il est activé ou désactivé. Toujours brancher toutes les quilles sur votre circuit !

3) il s’agit de séquençage !

Supposons que j’ai envie de lire des données de mon EEPROM, que dois-je faire avec ces épingles pour que tout fonctionne ? Exécution d’opérations sur l’EEPROM est tout au sujet de faire les choses dans le bon ordre. Donc si nous voulons lire la puce, notre séquence serait comme suit :

Définir l’adresse de mémoire (tirer vers le haut/bas pins bus adresse pour former une adresse au format binaire)

Activer la puce (allumer)

Activer la sortie (lire cette adresse)

Lire l’adresse de mémoire (les broches de bus de données aura maintenant la valeur haute/basse, selon les données dans l’adresse)

Désactiver la sortie (la sortie du bus de données est toujours activée à ce moment donc je peux lire les données)

Désactiver la puce (puissance vers le bas, pas de sortie sur le bus de données à ce stade)

Répétez ce qui précède pour la prochaine adresse que vous souhaitez lire.

4) quel était ce bus que vous avez parlé ?

Bus de données et le Bus d’adresse. La puce EEPROM, ainsi que les broches de CE, OE et nous, auront également un jeu de broches pour attribuer une adresse et un jeu de broches pour lecture/écriture de données à l’adresse sélectionnée. Le nombre de broches pour le Bus d’adresse dépend de la capacité de la puce. Plus la capacité, les adresses de plus sont nécessaires et aura par conséquent les broches plus le bus. Pour définir une adresse nous tirer vers le haut/bas les broches pour représenter 1/0. Chaque adresse représentée par n’importe quelle combinaison de bits contient 1 octet. Ainsi, une puce avec 2048 adresses aura capacité 2048 octets. Les broches sur le Bus d’adresses sont généralement numérotées comme suit : A0, A1, A2, A3,... (E)

Le Bus de données, contrastant avec le Bus d’adresse, peut être soit entrée ou sortie, selon l’opération sélectionnée. Si nous décidons d’écrire à la puce, nous avons mis l’adresse nous voulons écrire dans via le Bus d’adresses, puis nous avons ensemble le Bus de données en tirant sur ses broches haut/bas pour représenter un octet. Si nous choisissons de lire de la puce, alors les broches du Bus de données seront définis haut/bas pour représenter la valeur 1/0 de l’octet contenue dans l’adresse, que nous avons sélectionné. Les broches sur le Bus de données que numérotés : D0, D1, D2,... D7

5) une dernière chose : Bit le plus significatif

La plupart de peu significatif est essentiellement le bit qui représente la valeur la plus élevée dans un octet. Différentes puces peuvent utiliser un schéma de commande différent lors du stockage des octets. La documentation de votre puce va définir si le Bit le plus significatif est le nombre de broches plus haut ou plus bas sur le Bus de données. Une fois que vous savez quelle broche a l’octet le plus significatif, le reste des broches représentent le reste des morceaux dans l’ordre croissant ou décroissant. Par exemple, si l’octet le plus significatif est sur la broche D7 le bus de données, alors le moindre peu significatif va l’être sur la broche D0.

Mots clés: Rin EEPROM

Articles Liés

Raspberry Pi : Python scripting le GPIO

Raspberry Pi : Python scripting le GPIO

The GPIO : General Purpose Input/Output permet d'interfacer votre Pi framboise avec le monde extérieur, ce qui en fait un puissant dispositif interactif pour seulement 40 $- 50$.Cet Instructable va vous montrer comment installer le package GPIO sur v
Raspberry Pi - Jack of all trades.

Raspberry Pi - Jack of all trades.

Raspberry Pi est une sorte de touche-à-tout lorsqu'il s'agit d'être un ordinateur monocarte basé sur les processeurs Arm. Il peut être un bureau, serveur web, media player/streamer, machine de médecine légale, et peut faire la plupart de ce que tous
Comment faire une plate-forme de Robot Arduino + Raspberry Pi

Comment faire une plate-forme de Robot Arduino + Raspberry Pi

Mise à jour : Permet de faire des Robots, ma maison hackerspace numérique, a été achetée par RobotShop. Je ne veux pas revenir, mais les nouveaux propriétaires interdit moi-même et la plupart des membres du vétérans. Qui a dit, la plupart des liens i
Programmeur PIC Business Card

Programmeur PIC Business Card

c'est mon entrée pour le concours de circuit de taille de carte de visite Hack A Day . J'ai juste compressé les fichiers et les mettre sur mon site. Je suis poster ici parce que toutes les autres entrées semblent être sur un blog pour un accès facile
Contrôle de prise de distance mercure RF de Raspberry Pi

Contrôle de prise de distance mercure RF de Raspberry Pi

Comment contrôler les prises éloignées de mercure RF de la Raspberry Pi en utilisant Python.Étape 1: préambuleJe voulais construire un contrôleur personnalisé pour surveiller et contrôler l'environnement dans mes serres tropicales (void), et les prem
Raspberry Pi dédié Internet Radio et lecteur de musique

Raspberry Pi dédié Internet Radio et lecteur de musique

avez-vous jamais voulu quelque chose pour remplir vos journées avec sons belles mais ne voulait pas de dédier un PC à cet effet ? Le Raspberry Pi fournit exactement ce dont nous avons besoin, et avec quelques composants autour de la pose, vous pouvez
Rave de LED solaire Shopping Cart Tricycle

Rave de LED solaire Shopping Cart Tricycle

Dans ce instructable nous allons prendre un panier en plastique, de remplir son panier réglable LED personnalisé imprimé PCB, utilisez PIC18F4550 microcontrôleurs pour afficher le texte et son motifs sensibles sur les voyants lumineux, souder les mei
CupBot - plateforme robotique imprimés 3D

CupBot - plateforme robotique imprimés 3D

Voici un excellent week-end, que vous pouvez entreprendre des projets de robotique appelé CupBots basé sur le Raspberry Pi et le BeagleBone Black qui sont des cartes de crédit ordinateurs de taille et comprend également l'impression 3D...La plupart d
Système d’alarme eau de framboise Pi

Système d’alarme eau de framboise Pi

Système d'alarme mode d'emploie un PI de framboise comme de l'eauVersion 1.0, publiée en janvier 2015Le Raspberry Pi lit le statut d'un ou deux d'eau capteur appareil (s) sur un ou deux de ses broches GPIO. Lorsque l'eau est détectée le Raspberry Pi
Lessive de Internet

Lessive de Internet

dans un monde de technologies de plus en plus intrusives, un secteur n'a pas tout à fait agita son chemin dans notre esprit ruche bien-aimée.  Ce secteur, Mesdames et Messieurs, est de blanchisserie.Où serait nous nous positionnons en tant qu'humains
Tacuino : une faible coût, modulaire, compatible Arduino plate-forme éducative

Tacuino : une faible coût, modulaire, compatible Arduino plate-forme éducative

Pour mes cours de soft-circuit, nous avons utilisé un préprogrammé circuit (Attiny85), ou bien le plus cher compatible Arduino Lilypad USB. Je voulais quelque chose entre ces deux extrêmes qui seraient :Facile à construire par les débutantsLow cost,
Ouvrir les ondes cérébrales matériel d’interface

Ouvrir les ondes cérébrales matériel d’interface

mise à jour le 16 juin 2014 pour l'article 9 :vous pouvez aussi aller directement à la Section 9.faire l'interface de haute qualité ondes cérébrales comme le faible coût et la petite taille est mon plus de 20 ans de rêve. Pour ce faire besoin de prod
Imprimante Photo instantanée

Imprimante Photo instantanée

Instant Photo Printer est un appareil-photo instantané. Mais ce n'est pas un appareil-photo instantané normal. Il prend une photo lorsque vous criez ou rire bruyamment.Matériaux :Raspberry piAdaptateur d'alimentation PiAppareil photoGamme d'imprimant
Éblouissante signe de collecte de fonds : 140 watts de Internet connecté LEDs

Éblouissante signe de collecte de fonds : 140 watts de Internet connecté LEDs

Construire ce signe connecté internet pour aider à amasser des fonds pour une association caritative locale !Découvrez la puissance élevée LED, Arduino, Raspberry Pi & python, radios numériques, câblage & soudure et une petite menuiserie.Je l'espè