Etape 9: A partir de programmation.
Maintenant que nous avons les composants filaires vers le haut, nous allons travailler sur le programme. Assurez-vous que vous n’avez pas toutes les batteries, ou autre source d’alimentation, reliée à la breadoard, cela rendra votre système expérimentateur obtenir son pouvoir de la fiche de l’ISP. Branchez le programmateur USB à la prise USB de votre ordinateur et l’extrémité du câble dans l’en-tête de 10 broches mâle sur votre maquette de Tiny2313.
Démarrer BASCOM-AVR en double-cliquant sur son icône. Dans la fenêtre d’édition (la plus grande fenêtre blanche de BASCOM-AVR) tapez le texte suivant :
« Titre :
' Auteur : Art Granzeier, Granzeier Consulting
' Date :
' Description :
« Section de configuration
$regfile = « ATtiny2313a.dat » ' spécifier le micro
$crystal = 1000000' fréquence d’horloge interne de RC
$hwstack = 32' par défaut - utilisation 32 pour la pile de matériel
$swstack = 10' par défaut - 10 utilisation pour la pile SW
$framesize = 40' par défaut - 40 d’utilisation pour l’espace cadre
"Programme principal
Fin
Utilisez votre nom, au lieu de mine, dans la lignée de l’auteur, bien sûr.
(C’est dans le fichier Template.bas joint ci-dessous. Vous pouvez copier et coller le contenu de Template.bas dans la fenêtre de programmation de BASCOM.)
C’est ce qu’on appelle un modèle ; C’est simplement un squelette, sur lesquelles nous pouvons bâtir notre programme réel. Nous allons commencer chaque nouveau programme avec ce modèle, et puis nous n’avons pas à vous soucier de la base « ménage ». Enregistrez votre modèle en cliquant sur fichier puis en cliquant sur Enregistrer sous. Dans la boîte de dialogue, donnez-lui le nom « template ». Par la suite, chaque fois que vous voulez créer un nouveau programme pour votre système d’expérimentateur Tiny2313, vous commencerez par le chargement du modèle et en changeant le nom. Si jamais, par hasard, vous supprimez ou remplacez votre modèle, vous pouvez recréer, juste en suivant les étapes ci-dessus à nouveau.
Un ordinateur, comme le Tiny2313A sera normalement, exécuter un programme en commençant par le haut et travailler son chemin vers le bas à travers le programme. C’est ce qu’on appelle programme « top-down » l’exécution. Il est vraiment très facile, c’est comme quand vous suivez les directives écrites de quelqu'un ; vous commencez en haut et vous progressivement à travers les directions, à l’instar de lecture normale.
Prenons regarder de plus près ce qui se passe ici. Avis que les quatre premières lignes tous commencent par l’apostrophe (guillemet simple, ou "), cela indique au compilateur BASCOM que tout sur cette ligne est un commentaire et de l’ignorer. Commentaires sont ajoutés aux programmes afin que vous, le programmeur, pouvez dire ce que fait le programme. Au début, nous sommes juste donner des informations permettant d’identifier le programme. En fait, cela s’appelle la section identification du programme.
La section suivante, qui commence par une autre ligne de commentaire, contient ce qu’on appelle des directives. Ces lignes, dont chacun commencent par le signe dollar ($), dirigez le compilateur BASCOM comment configurer lui-même. Comme le commentaire ligne indique, c’est le début de la section de configuration. Ces cinq premières lignes sont vraiment pas dans le cadre de cette introduction, mais si vous regardez les lignes que vous venez d’entrer, vous pouvez déjà parler un peu de ces directives. La première directive, sorte de contient le nom du microcontrôleur sur votre système d’expérimentateur Tiny2313. Depuis BASCOM peut convertir votre programme de base pour les nombreux différents microcontrôleurs famille AVR Atmel, il doit savoir exactement qui puce pour cible ; Cette commande ordonne à BASCOM pour convertir votre programme à la ATtiny2313. Pour l’instant, vous pouvez juste garder les lignes directives de la section de configuration car ils sont au-dessus.
La dernière ligne dans notre modèle est l’instruction End. Chaque programme doit se terminer par une instruction End pour empêcher le programme de démarrer par réinitialise intégré.
Maintenant que nous avons ce cadre, le modèle, l’ensemble vers le haut, nous pouvons obtenir avec écrit nos propres programmes – et, avec le cadre fait, ce sera un travail assez simple. Avec le modèle (comme illustré ci-dessus – n’oubliez pas, utiliser votre nom comme l’auteur, pas le mien,) dans l’écran de votre montage, commencer un nouveau programme en cliquant sur le menu fichier et puis cliquez sur Enregistrer sous... entrée. Lorsque la boîte de dialogue Enregistrer sous s’affiche, donnez un nom au programme en tapant LED Test 01 dans le champ nom de fichier et puis cliquez sur le bouton enregistrer en bas de la boîte de dialogue. Notez, en haut de la fenêtre BASCOM – dans la barre de titre bleue que BASCOM affiche le nom de votre nouveau programme. Vous êtes maintenant prêt à commencer à entrer votre nouveau programme.
Commencez par mettre à jour la section identification du programme comme ceci :
« Titre : Test LED 01
' Auteur : Art Granzeier, Granzeier Consulting (encore une fois, utilisez votre nom)
' Date : 13 Oct 13 (utiliser la date du jour)
' Description : allumer une LED
Ensuite, allez vers le bas de la section de configuration (juste en dessous de la directive $framesize) et ajoutez la ligne suivante :
config PortB = sortie
Et après la ligne de commentaire de programme principal, ajoutez la ligne :
ensemble
PortB.0 ' allumer la LED
Ainsi, votre programme entier devrait ressembler à ceci :
« Titre : essai de LED
' Auteur : Art Granzeier, Granzeier Consulting (encore une fois, utilisez votre nom)
' Date : 13 Oct 13 (encore une fois, l’utilisation date du jour)
' Description : allumer une LED
« Section de configuration
$regfile = « ATtiny2313a.dat » ' spécifier le micro
$crystal = 1000000' fréquence d’horloge interne de RC
$hwstack = 32' par défaut - utilisation 32 pour la pile de matériel
$swstack = 10' par défaut - 10 utilisation pour la pile SW
$framesize = 40' par défaut - 40 d’utilisation pour l’espace cadre
config PortB = sortie
"Programme principal
Set PortB.0 ' LED tourner sur
Fin
Avant de nous télécharger ceci dans la Tiny2313, prenons regarder de plus près ces lignes. La section d’identification est tout comme nous en avons discuté. C’est juste une série de commentaires, à vous, pour vous faire savoir ce que le programme est censé pour faire. Le début de la configuration de l’article, au moins les instructions de la directive, est le même que nous avons décrit précédemment. La seule chose nouvelle dans la section de configuration est une instruction qui est nouveau pour nous. Cette ligne (Config PortB = Output) raconte le contrôleur pour configurer le Port B comme un port de sortie. Broches de port peuvent être définies soit lire le niveau de tension sur la broche (0V ou 5V,) appelé entrée, ou pour placer une tension (0 v ou 5 v) sur la broche, cela s’appelle la sortie. Pour ce programme, nous voulons avoir la goupille à être une sortie ; Nous avons donc mis le port à la sortie. Nous pouvons avoir le contrôle sur les broches individuelles d’un port, mais pour cet exemple, il est plus facile de mettre juste la totalité du port de sortie.
Enfin, nous arrivons à la viande de la question. La dernière ligne de ce programme (valeur PortB.0) est en fait la partie qui fait le travail. L’instruction set raconte le contrôleur pour faire une broche haute ou mis à plus de 5 volts. Le reste de cette instruction indique le contrôleur Tiny2313 quelle broche pour définir à haut, PortB.0. Examinez le diagramme de la puce Tiny2313 ; Notez que le code PIN 12 sur la puce est étiqueté comme PB0. La partie P de la nous dit que c’est un Port – c’est une série de broches, dont chacun peut être mis en place pour chaque sens une tension (0 v ou 5 v) et d’y réagir (l’axe s’appelle une entrée quand il le fait) ou il peut produire une tension (0V ou 5V) qui peut contrôler les lumières, relais , moteurs ou autres choses (la broche est ensuite appelée une sortie.) Comme le commentaire, sur cette ligne, mentionne, cela s’allume la LED sur cette broche. Port B est l’un des quatre ports disponibles sur le Tiny2313.
Maintenant que nous avons écrit notre programme, nous devons convertir en code machine et ensuite envoyer le programme au contrôleur (ou téléchargez-le.) N’oubliez pas partir plus tôt, que le processus de conversion d’un programme d’un langage similaire à l’homme, tels que BASIC, dans un langage machine s’appelle la compilation. Afin de compiler le programme, vous devrez cliquer sur le menu du programme et ensuite cliquez sur Compiler. Cela va démarrer le compilateur qui permet de convertir votre programme en quelque chose qui peut comprendre la puce 2313 ' et le programme de la machine est stocké dans la zone-tampon de BASCOM, prêt à envoyer à la puce Tiny2313.
Maintenant que votre programme en langage machine a été stocké dans la mémoire tampon, vous devez envoyer le tampon à la puce de microcontrôleur. Cliquez sur le menu du programme à nouveau et puis cliquez sur envoient à puce, au bas du menu. Ceci ouvrira une nouvelle fenêtre de programmeur. Vous pouvez voir la mémoire tampon dans la fenêtre principale de la fenêtre de programmeur. Pour envoyer le tampon au microcontrôleur, cliquez sur le menu de la puce et puis cliquez sur Programmation auto. Votre programme sera envoyé à la Tiny2313 et ensuite la fenêtre programmeur va disparaître.
Jetez un oeil à votre système d’expérimentateur Tiny2313 ; Notez que le plus à droite est maintenant allumée. Les félicitations sont dans l’ordre. Les choses vont bien, hein ?