Étape 12 : Blinky, Bordier.
Maintenant que nous avons obtenu le Tiny2313 pour pouvoir éteindre le voyant sur et en dehors, sur commande, qu’en est-il plus avancé des choses ? Étant donné que nous n’avons pas vraiment inscrit un vrai programme ici (ce secret que j’ai mentionné), il est inutile de donner BASCOM un nouveau nom de programme.
Entrez à nouveau cette instruction set au-dessus de l’instruction de remise à zéro dans votre programme :
"Programme principal
Set PortB.0 ' LED tourner sur
réinitialiser le PortB.0 ' activer la LED éteinte
Cela semble être le bon, correct ? La puce ' 2313 va mettre un signal haut (+ 5V) sur la broche PB0 et puis immédiatement ramener que la broche au sol. Le + 5V causera des électrons de circuler à travers la LED, rendant lumière, puis le bas, ou au sol, sur PB0 provoquera la LED s’éteint, juste ?
Compilez votre nouveau programme en appuyant sur la touche de fonction F7 sur votre clavier. Assurez-vous qu’il n’y a pas d’erreur affichés au bas de votre fenêtre BASCOM et ouvrez la fenêtre de programmeur en appuyant sur la touche de fonction F4. Encore une fois, envoyer votre programme compilé à la ' 2313 en cliquant sur l’option de programmation auto dans le menu de la puce.
Votre puce Tiny2313 s’exécutera immédiatement le nouveau programme, la LED d’éclairage et puis immédiatement en marche arrière. Droit ?
Ce qui ? Attendez une minute, ce qui s’est passé ici ? Il semble qu’il y a quelque chose de mal avec le programme, n’est-elle pas ? La LED n’a pas clair du tout. Si vous voulez voir la Tiny2313, réexécutez le programme, appuyez simplement sur le bouton de réinitialisation au-dessous et à gauche de la Tiny2313 la puce elle-même. Le programme est stocké dans la puce ' 2313 et la réinitialisation provoquera la puce exécuter le programme chaque fois qu’il est pressé. Toujours rien, cependant, pas vrai ?
Eh bien, en fait, le témoin a fait allume. C’est juste que les ordinateurs travaux extrêmement rapidement, et le Tiny2313 le voyant allumé, puis immédiatement éteint il retour. Cela s’est passé en seulement quelques millionièmes de seconde, beaucoup trop vite pour vos yeux pour remarquer le flash.
Si vous regardez à travers le manuel BASCOM-AVR, vous allez exécuter à travers une déclaration appelée wait. Cette instruction indique à l’ordinateur de faire exactement ce qu’il dit. Le paramètre, ou le numéro, que vous tapez après l’instruction wait est le nombre de secondes que vous voulez le Tiny2313 pour faire une pause, avant de poursuivre le programme.
Nous allons fixer vers le haut de notre programme. Entre le jeu et l’instruction de remise à zéro, entrez une instruction d’attente avec un retard de 1, comme ça :
"Programme principal
Set PortB.0 ' LED tourner sur
attendre 1' Pause pendant 1 seconde
réinitialiser le PortB.0 ' activer la LED éteinte
Compilez votre nouveau programme en appuyant sur la touche de fonction F7 sur votre clavier. Assurez-vous qu’il n’y a pas d’erreur affichés au bas de votre fenêtre BASCOM et ouvrez la fenêtre de programmeur en appuyant sur la touche de fonction F4. Encore une fois, envoyer votre programme compilé à la ' 2313 en cliquant sur l’option de programmation auto dans le menu de la puce.
Votre puce Tiny2313 s’exécutera immédiatement le nouveau programme, la LED d’éclairage, et puis après environ une seconde, faisant marche arrière. Cette fois-ci le programme fonctionne, droite ? N’oubliez pas, l’ordinateur fait exactement ce que vous lui dites. Si vous dites qu’il fasse quelque chose trop vite, alors c’est exactement ce qu’il fera. Quand vous avez dit le Tiny2313 pour allumer la LED et puis, il a fait exactement cela ; seulement c’était si rapide qu’il est assez inutile pour vous. Encore une fois, si vous voulez voir la Tiny2313 réexécutez votre programme, appuyez simplement sur le bouton de réinitialisation sur votre système d’expérimentateur Tiny2313.
Maintenant que votre programme fonctionne correctement, enregistrez votre programme, avant de poursuivre. (Un rappel plus, cliquez sur fichier et puis cliquez sur Enregistrer.)
Commencer un nouveau programme en cliquant sur fichier et puis cliquez sur Enregistrer sous... et le nom du programme LED Test 03. Modifiez la ligne d’attente à: attendre 2, ce que vous pense que cela va faire ? Essayez de compiler ce programme et en la téléchargeant sur votre planche de l’expérimentateur (appuyez sur la touche F7, puis la touche F4, puis cliquez sur Programmation auto) – il ne l’a fait ce que vous pensiez ? Le nombre, après l’instruction wait, raconte le contrôleur la durée (en secondes) à attendre avant de poursuivre l’instruction suivante (la déclaration de remise à zéro). Ce nouveau programme devrait laisser la LED allumée pendant environ deux secondes avant d’éteindre ce retour.
Bien qu’il soit utile d’avoir votre contrôleur attendez secondes complètes, ordinateurs brillent vraiment à faire les choses rapidement. Parfois, vous devez faire de votre pause de contrôleur pour une courte période de temps. Une déclaration, qui est liée à l’instruction wait, qui vous permet de beaucoup mieux contrôler les temps de retard, est : waitms. Vous pouvez trouver une description de l’instruction waitms dans le manuel, mais cela est synonyme de "attendre un nombre spécifié de millisecondes (ou 1/1000ème de seconde.") Vous l’utiliseriez exactement comme vous le feriez l’instruction wait, sauf que le temps est donné en millièmes de seconde (waitms 1000 est le même que celui d’attendre 1.)
Jouer avec le programme, son remplacement par l’instruction waitms pour l’instruction d’attente. Voir ce qui se passe avec votre clignotant LED. Essayez de réduire le temps de retard ; essayez de trouver le délai plus court que vous pouvez en fait remarquer. Le œil humain moyen peut remarquer ce qui se passe au sujet de 30 fois par seconde (ou Hertz, ce qui signifie « par seconde »). Si un voyant clignote plus vite que ça, votre oeil ne remarqueront pas le clignotement et indiquera votre cerveau que la lumière est constante, ou désactiver. Ce clignotement 30 Hertz (ou 30 Hz) est égal à sortir à environ 33 ms, soit environ 16 ms et ensuite éteindre. Voir à quelle distance vous accéderez à 16 ms avant que n’apparaisse le voyant éteint. Votre oeil sera remarqué et mieux répondre si la lumière ambiante est abaissée la lumière LED est déclenchée ; essayez de changer la chambre lights out lors de l’exécution de cette expérience.
Essayer d’allonger l’instruction pause. Entrez les chiffres autour de 2000 ou 4000, puis essayez d’utiliser un chronomètre pour voir comment précis, vous pouvez obtenir en commençant la minuterie et puis arrêter. Vous serez pas en mesure d’obtenir parfaitement et exactement précis, parce que les temps de réponse humaine est mesurée en millisecondes. En d’autres termes, dès que votre œil voit le LED s’allument, jusqu'à ce que votre cerveau dit votre doigt pour appuyer sur start sur le chronomètre, jusqu'à ce que votre doigt ne fait le travail, prendra plusieurs centaines de millisecondes. Il peut être un peu amusant de voir à quel point vous pouvez obtenir à l’heure que vous avez entré dans l’état de pause.
Vu le Tiny2313 flash la LED peut être de type de plaisir, mais quand même, une lampe de poche peut faire cela – encore une fois, « pas de bébé ».