InterActive E-Proms série 3

j’ai mis à jour mon programme avec pleine insert et delete. Aucune mise en réseau ou l’affichage. Aucune mise en forme plus. Juste un bon éditeur de E-Prom. Assurez-vous que vous avez chaînes avant d’utiliser insert ou delete. Il faut du temps pour exécuter insert et delete. J’ai lu et puis écrire chaque chaîne dans sa nouvelle place. Mon programme ne vérifie pas les limites sur quoi que ce soit.

L’adresse est très important. Si votre adresse est désactivée par quelques octets alors vous perdrez ces octets de l’avant ou l’arrière de votre chaîne. Pas d’erreurs se produisent. Ce 16 * tmp5 – 1 semble correct. Il n’est pas OK. Timbres de base restent strictement à droite math. Timbres de base 2 s permettent entre parenthèses comme 16 * (tmp5 – 1). Avec ce 16 * tmp5 – 1 est en fait (16 * tmp5) – 1 et vous seriez hors de 1 adresse. Dans ce cas, j’ai perdu la première lettre de la chaîne, que je viens de modifier.

Mathématiques peut être amusant. Basic Stamp 2 s soutenir les nombres négatifs, mais vous devez être prudent avec eux. Si vous avez deux variables, compte à rebours et vous les comparez tmp3 > = tmp4. Si vous soustrayez 1 il sera négatif et plus tmp4 tmp3 atteint 0. Mettre une instruction de débogage sur tmp3 et voir où il va. Dans ce cas, mon objectif est tmp5. Je l’ai changé à tmp4 > = tmp5 et lacher tmp3 à 0. Puis j’ai ajusté tmp5 par – 1 pour le tableau de base 0 de chaînes. Zéros ne sont pas bonnes pour les maths ou comparant.

La principale chose dont vous avez besoin pour une chose interactive est mémoire. La mémoire moins chère et plus facile à utiliser est une série E-prom. Ce qui est un E-prom ? C’est un souvenir éclectique programmable et effaçable éclectique avec une interface série. E-Proms garder leur mémoire lorsque l’alimentation est coupée. E-Proms vous permettent de reprogrammer la mémoire. Cycles habituellement 10 millions ou plus. Lire votre manuel. Vous pouvez stocker n’importe quel type de données dans un E-Prom. Je voudrais qu'avoir des amis pour partager cela avec. Je travaillerai sur les écrans LCD et de type d’un terminal muet pour montrer combien il est facile de connecter vos idées à votre peuple.

Le fichier de Code est EPromEW6.txt. Vous devez le changer à EPromEW6. bs2 pour elle d’exécuter. Le fichier Zip est le fichier de code et les images.

La plupart des E-Proms sont que byte taille tableaux mémoire. Le plus gros utilisateur de mémoire est piqûres comme l’opération quinquennale « Hello World ». Les chaînes sont un tableau d’octets dans la mémoire du processeur. Les chaînes sont bien adaptés à l’E-Proms. Dans cet exemple, ma série E-Prom est 2048/8 ou 16 K avec 16 128 pages octets. Oui, les chaînes de 128. Comme la plupart des périphériques séries E-Proms ont un processeur qui est mis en place pour écrire et lire le tableau de la mémoire. Vous contrôlez les commandes et les fils d’entrée et de sortie. Synchronisation est tout.

Vous avez besoin d’un grand nombre de broches à utiliser une série de E-Prom lorsque vous écrivez à la mémoire. Les broches: SO octets sortie, SI octets entrées, horloge CK et CS Chip Select. J’utilise des broches distinctes pour SO & SI pour protéger mon E-Prom. Commandes vous permet de dire à l’E-Prom ce que vous voulez qu’il fasse. Pour lire un octet, vous abaissez CS et envoyez une commande "Read". « ShiftOut epRead\8, erAddr\16. » Le \8 dit ShifOut d’envoyer 8 bits total. Donc 32 est 100000 est seulement de 6 bits. Le \8 rend 00100000 et c’est de 8 bits. C’est ce dont a besoin l’E-Prom. Lecture est un flux continu d’octets que vous fournissez des impulsions d’horloge. « ShiftIn myStr(tmp1). » Vous pouvez utiliser une adresse avec la commande de lecture. Chaque page est de 16 octets. Donc 32 page 1. N’oubliez pas que la mémoire E-Prom est de base zéro et chaînes sont zéro terminée.

L’écriture est un peu plus compliqué. Vous tenez à écrire protéger et Hold broches hautes puis vous définissez CS bas et envoyer une commande écrire Enable. « SHIFTOUT epSi, epCk, MSBFIRST, [epWrtEN\8] ». Ensuite, vous soulevez CS pause 5ms et inférieur puis pause CS 5ms. Qui saisit la commande dans le E-Prom. Ensuite, vous envoyez dans une commande "Write". « SHIFTOUT epWrite\8, erAddr\16. » Par écrit, vous devez généralement d’écrire tous les 16 octets en une seule commande et y mettre fin correctement. Dans une boucle « SHIFTOUT myStr(tmp1). » Ensuite, je pause 5ms et soulever mon CS pour indiquer à l’E-Prom pour écrire mes données. Vous devez attendre ou le E-Prom peut se bloquer. Pour réinitialiser le E-Prom vous baissez attente CS 5ms puis soulever attente CS 5ms puis abaisser CS et continuez avec vos commandes. J’ai garder mon CS bas avec une résistance de 10K à la masse.

Le E-Prom dispose également d’une épingle écrire protéger. Avec cette broche faible, vous ne pouvez pas écrire dans le E-Prom. Il dispose également d’une goupille de maintien que lorsqu’il est faible le E-Prom est éteint. Vous pouvez écrire à protéger un quart, la moitié ou la totalité de la mémoire avec indicateurs d’État. Je continue à écrire protéger et maintenir connecté à VDD.

L’adressage est obligatoire et facile. Mon adresse est sur 16 limites d’octets, il est donc facile. Vous pouvez écrire n’importe quelle page de 16 octets de mémoire qu’il faut et rien d’autre n’est affecté. Mémoire vive vraiment sur 128 chaînes de 16 octets. N’oubliez pas que la mémoire est de base zéro et chaînes sont zéro terminée. Chaîne 1 est en fait 0. Toute ma chaîne de numérotation est 1 fondée. Mon programme prend soin des détails. Dans mon programme epAddr est le point de montage de chaîne et myStrS chaînes combien j’ai. Afficher les chaînes commence à 0 et va si myStrS chaque chaîne de numérotation. Chaînes concaténées uniquement la première chaîne obtient un nombre. Les cordes seulement premier obtient un nombre.

Une chose au sujet de la manipulation, c’est que la plupart des systèmes utilisent des chaînes nulles terminés. Cela signifie que le dernier octet dans « Bonjour World0 » est un octet de zéro. Un tableau d’octets 16 détient 15 caractères et une terminaison zéro. La plupart les tableaux d’octets sont aussi basé zéro. C’est la première position est zéro et le dernier est 15. Pour les piqûres d’être reconnue que vous devez vous assurer que le zéro est au bon endroit. Vous pouvez utiliser un tableau de 16 octets pour tout. Pour des chaînes courtes il suffit de les déplacer vers l’avant et y mettre fin. Le reste de la chaîne sera ignoré. Garder une trace de votre position. Lorsque vous concaténez une chaîne à la chaîne suivante vous ne pouvez pas utiliser toutes les 16 octets. Pourquoi ? La routine de sortie reste la première chaîne terminée.

Autres données doivent être formatés pour s’intégrer dans un tableau d’octets. Un mot a 16 bits ou deux octets. Un octet haut et un octet de poids faible. Longs ou doubles ont 32 Bits ou quatre octets. Octet 3 et octet 2, octet 1 octet 0. Vous générez les formateurs pour prendre soin de ce type de données. Stockez-les octet par octet dans une ordonnance que vous aimez. Comme l’octet haut puis l’octet de poids faible. Charge de la même manière les cacher. La mémoire de la plupart des processeurs est bit 16 pages. Mot de taille mémoire qui peut être décomposé en octets et sur certains vers le bas pour les plumes ou les Bits variables. Lorsque vous stockez une variable mot vous avez généralement accès à ses octets comme variables à.

Certains transformateurs ont la bonne chaîne, fonctions de gestion. J’utilise un Parallax.com Basic Stamp 2 pour cet exemple. Les commandes utilisées sont Debug, DebugIn, SerIn et SerOut. Débogage et serOut sont la même fonction à bien des égards, qu'ils vont juste à différents endroits. Pour entrer une chaîne, vous utilisez un module de formatage de STR qui cherche des chaînes de caractères. « STR DebugIn time\15\13 » cherche et entrées qu'une chaîne jusqu'à 15 caractères qu’il charge dans un temps de tableau d’octets lorsque l’utilisateur appuie sur Enter(13). Si la chaîne est inférieure à 15 caractères les caractères restants sont remplis avec des zéros. La chaîne « Hello » serait « Hello00000000000 » dans la mémoire. « Debug temps STR » imprime « Hello ». Le premier zéro termine la chaîne et le reste sont ignorés.

Numéros peuvent être amusant. Les formateurs d’entrée sont des chaînes de caractères. « DebugIn temps DEC » se penche sur la chaîne « hello123bye » et il convertit le nombre 123 et le met dans la variable temps. Il ignore le reste. Utile pour beaucoup de choses interactives. Pour les tableaux d’octets, vous utilisez des caractères de contrôle comme zéro comme un bouchon de terminaison à la fin des chaînes. Vous créez d’autres caractères de contrôle pour s’adapter à vos besoins. J’utilise le « + » pour séparé chante court et joignez-vous à longue chaîne dans mes routines de sortie. Chaînes courtes peuvent être assemblés habituellement sur le devant de la E-Prom. Quinze personnages ne sont jamais assez. Vous pouvez créer toutes sortes de contrôles dans les routines de sortie.

Mon programme : le bouton passe en mode de commande. Entrez une commande et appuyez sur entrée sur le clavier. Vous ne pouvez pas garder ces petits processeurs en attente d’une entrée. Ils ont tendance à s’écraser. Vous exécutez une boucle active en attente pour un bouton à presser. Mon programme mémorise la dernière adresse et le nombre de chaîne dans l’EEPROM du processeur et il charge au démarrage ou re-démarre. MyStrs la valeur zéro pour les nouvelles chaînes et 1 pour vos cordes à charger. Mon programme est un chargeur rapide de chaîne pour une E-Prom.

Mon programme utilise la borne de débogage et un bouton standard. Vous appuyez sur le bouton pour passer en mode commande. Tapez votre entrée et appuyez sur entrée. La led devrait clignoter lors de l’attente d’une commande. N’oubliez pas de mettre les processeurs EEprom lorsque vous terminez une session.

Pour modifier vos chaînes après un re-démarrage utilisent commande 60 tout d’abord charger votre compteur de chaîne et d’adresse dans mon programme. Commande 10 entrera une nouvelle chaîne après la dernière chaîne. Commande 40 édite une chaîne. Lorsque vous avez terminé avec votre commande use de cordes 50 pour écrire le nombre d’adresse et de la chaîne dans l’EEprom. Utilisez l’éditeur pour changer myStrs à zéro pour les nouvelles chaînes ou 1 ou supérieur pour charger vos chaînes et re-charger le programme.

L’Arduino est juste trop amusant. Manipulation de chaînes excellent.

Systèmes de PicAxe : Ils n’ont pas de baies. Seulement les x2 pièces ont une commandes ShiftOut et ShifIn. Le bloc-notes est une zone de mémoire temporaire pour le stockage des données telles que des tableaux. Uniquement les jetons suivants de Picaxe PICAXE - 28 X 1, 40 X 1, 20 X 2 pièces ont 128 octets de bloc-notes (0-127) et PICAXE - 28 X 2, 40 X 2 pièces ont 1024 octets de bloc-notes (0-1023). Pour accéder à l’utilisation du bloc-notes : le pointeur est ptr = var, adressage Indirect est ' (post incrémentation) et ' (postdecrement). Chaque fois que le « nom de la variable est utilisé dans une commande, la valeur du pointeur bloc-notes est automatiquement incrémentée d’un. Cela le rend idéal pour le stockage d’un tableau à dimension unique des données. Consultez l’exemple dans le manuel.

ShiftIN et ShiftOut : la commande spiin (shiftin aussi accepté par le compilateur) est une méthode de « bit-bang » de communication SPI sur les parties X1 et X2 seulement. Toutes les autres parties doivent utiliser l’exemple de programme inclus au verso pour reproduire ce comportement. Pour une solution matérielle pour pièces X1/X2 Voir la commande 'hshin'. Ou vous pouvez utiliser mon doLights et checkLights de EasyLights.

Articles Liés

1 interactif

1 interactif

vie a besoin de l'interaction en direct. Machines a besoin de programmes d'interagir avec nous. Programmes ont besoin de connectivité de croître plus compliqué. Communication série, c'est ce que les machines utilisent pour cultiver. Communication sér
InterActive Terminal muet 4

InterActive Terminal muet 4

faire un Dumb Terminal sur un écran LCD de 16 de 1 x DMC 16117A vieux. Première chose à faire est d'obtenir une Interface série pour l'affichage. J'utilise un SerLCD de SparkFun.com pour cela. Le 16117A n'a que 14 connecteurs et c'est très bien. Les
Jeu d’enquête interactif

Jeu d’enquête interactif

Un questionnaire d'enquête prennent vie ! (Presque) n'importe quel objet permet de recueillir des données utiles à travers un sondage à choix multiples interactive, attrayant et amusant.Ce projet utilise le microcontrôleur Makey Makey en combinaison
Interactive citrouille d’Halloween (Arduino basé)

Interactive citrouille d’Halloween (Arduino basé)

L'IDÉEUne citrouille qui brille, secoue et hurle... [vidéo]C'est l'Halloween, alors, naturellement, que nous devions avoir un projet lié à cela.L'idée est d'avoir une citrouille, qui détecte la présence d'une personne essayant d'obtenir pour les bonb
S.Alt ville: QR Code interactif Mural

S.Alt ville: QR Code interactif Mural

Ville de S.Alt est une peinture murale pour le centre-ville de Syracuse qui célèbre en même temps passé industriel de Syracuse et sa situation actuelle comme un centre artistique. À première vue, l'image est historique, représentant un centre de dist
Transmission dynamique - interaction tactile - couleur LED ball

Transmission dynamique - interaction tactile - couleur LED ball

vidéo :1, love Confessions de science et la technologie aide---[rotation LED ball 2.0]2, la transmission dynamique : spectre & Lyrics - démo---[rotation LED ball 2.0]3, fonction et Bluetooth connectivité Introduction---[rotation LED ball 2.0]========
Interactive Multitouch Display

Interactive Multitouch Display

entre l'iPhone d'Apple et table interactive de Microsoft, multi-touch affiche font fureur. Cette instructable vous montrera comment transformer votre projecteur lcd dans une table interactive multi-touch écran à l'aide de quelques composants bon marc
Braise (Campfire virtuel interactif)

Braise (Campfire virtuel interactif)

Ember est une installation interactive, qui explore la communauté à travers un cercle de feu de camp-comme des sièges en bois qui génèrent la musique de la présence du visiteur. Chaque siège dans le cercle est un instrument qui ajoute une note à une
Interactive Arduino alimenté Coffee Table

Interactive Arduino alimenté Coffee Table

une évidence rapide note : Ceci est mon premier Instructable et mon premier grand projet Arduino, donc si vous voyez des erreurs stupides ou avez une idée de comment les choses pourraient être faites mieux, alors s'il vous plaît laissez-moi savoir.Ma
Table de ping-pong interactif LED bière

Table de ping-pong interactif LED bière

Créer votre propre Table de ping-pong de bière LED interactif !Cette instructable vous guidera à travers toutes les étapes d'afin de créer une table de ping-pong d'one-of-a-kind bière complète avec coupe détection RGB gousses, rondelles de balle auto
Interactive floue LED ceinture

Interactive floue LED ceinture

Il s'agit d'une Instructable pour vous montrer comment faire une ceinture de LED interactive, floue ! Ceinture peut être utilisé de plusieurs façons, non seulement comme une ceinture... le porter comme une bandoulière, accrocher sur le mur, enroulez-
Créer un mur vivant interactif

Créer un mur vivant interactif

cette instructable a été effectuée dans le cadre de l'exigence de projet final dans le cours de deuxième cycle CS « Tangibles informatique Interactive » à l'Université du Maryland, College Park, enseigné par professeur Jon Froehlich. Le parcours axé
Passer un moteur utilisant Arduino et communication série

Passer un moteur utilisant Arduino et communication série

avez-vous déjà demandé comment les robots se déplacent ?  Avez-vous jamais voulu écrire un programme pour contrôler un robot ?  Dans l'affirmative, ce tutoriel sera un excellent pied-à-terre pour apprendre les commandes électroniques avec l'Arduino M
Gestes utiles - sculpture série

Gestes utiles - sculpture série

Gestes utiles a été inspiré par la citation de Marshall McLuhan, « nous façonnons nos outils et par la suite nos outils nous forme. » Cette série de sculptures explore humaine-fabrication d'outils des extensions matérielles plus tôt, primitives de no