Arduino-ATTiny-85

De MCHobby - Wiki
Aller à : navigation, rechercher

MCHobby investi du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Introduction

L'ATtiny 85 est un microcontrôleur d'Atmel (même famille que l'ATmega des Arduino) qui est certes petit mais avec plein de ressources. Ce petit microcontrôleur assez petit pour être placé dans n'importe quel projet, et suffisamment abordable pour être utilisé sans hésitation. Parfait lorsque vous ne voulez pas vous séparer de votre carte d'expérimentation ou si celle-ci est déjà utilisé dans un projet que vous voulez préserver (ils ne sont parfois si complexes).

Attiny85 est un microcontrôleur vraiment sympa car malgré sa petite taille, il dispose de 8K de flash, 5 broches I/O (entrée/sortie), incluant des entrées analogiques et sorties PWM. Il est tellement sympa qu'AdaFruit à conçu un bootloader USB et des cartes Trinket à base d'ATTiny, ce qui permet de le brancher sur n'importe quel ordinateur et de le reprogrammer via le port USB comme pour n'importe quel Arduino.

Ce tutoriel se penchera plutôt sur la programmation directe de l'ATtiny85. C'est un sujet vraiment très intéressant et captivant.

ATtiny45/85 vs. carte Arduino

L'ATtiny45 ou 85 est une alternative intéressante pour exécuter une programme Arduino simple: il est petit, bon marché et relativement facile à utiliser. Il à cependant quelques limitations par rapport au ATmega328P que l'on trouve sur un Arduino Uno.

  • Il a moins de broches et vous ne pourrez pas y connecter beaucoup de composants.
  • Il y a moins de mémoire flash (4KB ou 8KB à place de 32KB), ce qui implique que votre programme ne peut pas être aussi grand.
  • Il y a moins de RAM (256 ou 512 octets/bytes à la place de 2KB), ce qui vous empêche de stoker autant de donnée que sur un Uno.
  • Il n'y a pas de port série matériel ou port I2C Matériel (Wire library), ce qui rend les communications plus difficile.
    Il y a cependant des alternatives comme la bibliothèque SoftwareSerial ou TinyWire mais elle ne sont pas aussi robustes et flexibles.

En gros, si votre projet ne nécessite que quelques entrées/sorties alors un ATTiny conviendrait probablement. SI vous avez besoin de connecter plus de composants, ou réaliser des communications plus complexes, ou réaliser des traitement plus complexe ALORS vous aurez besoin d'un Arduino Uno et son ATmega328P. Si vous avez besoin de quelque-chose de plus petit et moins cher qu'un Arduino Uno vous pourriez essayer d'utiliser une ATmega328P directement sur un breadboard.

Comment ca marche

En gros, nous allons utiliser un Arduino et le transformer en programmateur ISP. Ainsi, il sera capable de programmer d'autres microcontrôleurs.

Nous allons donc:

  1. Devoir télécharger/téléverser un programme spéciale dans notre Arduino pour qu'il se comporte comme un programmateur ISP.
  2. Ensuite, nous allons brancher notre ATTiny sur notre "programmateur ISP arduino" (de sorte à ce qu'il puisse être programmé).
  3. Configurer notre environnement Arduino IDE pour pouvoir programmer des ATtiny 85.
  4. Compiler notre programme ATTiny 85 et le Téléverser sur notre ATtiny 85 (par l'intermédiaire de notre "programmateur ISP Arduino").

Tutoriel Arduino board as ATtiny programmer et Programming an ATtiny w/ Arduino 1.6 (or 1.0) créé par High-Low Tech Group :: MIT Media Lab.

Tutoriel traduit par Meurisse D. pour MCHobby.be

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.