Le ATtiny84 est une puce vraiment étonnante, pas tout à fait un Arduino, mais à certains égards beaucoup plus puissant. Il s’agit d’un petit projet destiné à montrer son potentiel.
Tous les Microcontrôleurs Atmel ont leurs broches mappés dans les banques de huit, que toutes les huit broches soient présents ou non. Par exemple, le ATtiny85 est une puce de huit broches avec cinq broches numériques. La puce ATmega328P dans un Arduino a trois banques d’épingles, mais aucun des banques ont toutes les huit broches disponibles. Le ATtiny84 a un total d’onze broches numériques et toutes les huit broches sur une banque (A) sont disponible.
Chaque banque de huit broches est contrôlée par trois registres de 8 bits. Le registre de Direction de données (DDR), le PIN et le PORT inscrit. Dans le registre DDR, que le bit est clair (0) si le code pin doit être utilisé comme intrant et défini (1) si c’est une sortie. Vous lisez le registre PIN lorsque vous faites un digitalRead, et vous n’écrivez pas sur le registre PORT lorsque vous effectuez une écriture numérique. Si un code pin est clair pour l’entrée et c' est peu PORT est défini, cela allume la résistance de pull-up interne. Il est possible d’écrire directement aux registres de l’IDE Arduino et affectent toutes les quilles de huit à la fois. Dans de nombreux cas, cela peut rendre un programme plus facile au code et le programme compilé sera beaucoup plus petit.
Ce programme montre comment il est facile d’écrire un compteur binaire qui compte de haut en bas en même temps. Le rouge LED comptent vers le haut tandis que le LED vert à rebours.
Vous aurez besoin :
- ATtiny84 https://www.sparkfun.com/products/11232
- Une Arduino https://www.sparkfun.com/products/11021 (utilisé en tant que programmeur pour la ATtiny84, tant comme source d’alimentation.)
- Maquette https://www.sparkfun.com/products/12615
- 8 LEDs rouges https://www.sparkfun.com/products/9590
- 8 LEDs vertes https://www.sparkfun.com/products/9592
- 16 résistances 470 Ohm (acheté localement)
- Branchement fil (acheté localement) de calibre de 22