Étape 14 : Code de décodeur DTMF (Assemblée & C): programmation un AVR d’Atmel
Ici je vais vous expliquer le code un peu, les prochaines étapes seront un tutoriel sur la façon de le charger dans le ATtiny2313 à l’aide d’un exemple de programme, mais les mêmes étapes seront appliquent à tout le code que nous avons pour les micro-contrôleurs.
J’ai inclus l’Assemblée et le code C pour ce circuit. Ils devraient être assez similaires à la fonction. Le code C juste en avant ce qui est lu par le ATtiny2313 sur le Port B du Port D, c’est afin que vous puissiez vérifier que le signal arrive correctement avec rien plus alors a quelques blinkinlights sur les 4 broches inférieurs du Port B.
Le code par défaut est 0000 et peut être modifié en ligne 99. Une fois que vous avez entré le bon code cliquez sur le bouton de # sur votre téléphone pour avoir le micro à valider le code. Si mal, vous appuyez sur une touche ne vous inquiétez pas, il suffit de garder le micro se souviendront seulement les 4 derniers chiffres inscrits les numéros.
Une fois votre qui jusqu'à maintenant et vous pouvez voir les codes DTMF est lus correctement par le 2313, ONU-commenter le grand bloc de code aux lignes 118-121 et 123-261 et commentez la ligne 122 pour activer les fonctionnalités régulières.
Lignes de 233 à 238 contiendra le code que vous souhaitez exécuté après avoir entré un code valide. Port B est totalement gratuit, donc pour un faible nombre de sous-systèmes vous pouvez juste avoir les prochaines touches téléphone activer sous-systèmes directement sur le port. Une autre option serait d’avoir cet article Envoyer une commande série out pour un ordinateur ou autre sous-système.
Il y a un mode de verrouillage trop de caractères non valides sont entrées, j’ai manqué il à 2 secondes pour votre dépannage mais fonctionne pas une fois, j’encouragerais upping cela à quelques minutes ou plus pour la sécurité. Lignes 320-332 ont le code de verrouillage.
Poser des questions si vous en avez, et je vais essayer d’expliquer l’État fou que j’ai était alors que de coder ceci. Il est assez bien commenté bien et ne devrait pas être trop difficile à déchiffrer.