Inspiré par cette vidéo youtube de Make Magazine , j'aimerais utiliser les puces ATtiny au lieu de l'Arduino pour la plupart de mes projets. L'auteur de la vidéo avertit que certaines fonctions Arduino ne fonctionneront pas sur les ATtinys. Existe-t-il une liste complète de ce qui est et n'est pas pris en charge?
12
pinMode();
etdigitalWrite();
sur un ATtiny, juste à droite des registres appropriésDDRx
,PORTx
directement. De nombreuses fonctions similaires peuvent être trouvées.Réponses:
Mise à jour: Pour mieux répondre à la question, les ATTiny peuvent faire tout ce qui ne nécessite pas de matériel, les ATTiny sont manquants, y compris le port série matériel, le matériel i2c ou plusieurs interruptions. Comme cela est caché dans les bibliothèques Arduino, à moins que vous ne compreniez bien comment elles fonctionnent ou lisent les fichiers de bibliothèque réels, des choses comme la bibliothèque Wire (matériel i2c) ne fonctionneront pas.
Sur http://forum.arduino.cc/index.php/topic,5582.0.html :
De plus, la plupart des ATTiny n'ont pas de multiplication matérielle, donc un compilateur devrait faire une multiplication non base 2 dans le logiciel.
Enfin, les Arduinos s'appuient sur un chargeur de démarrage au lieu de la programmation spi, vous avez donc besoin d'un ATTiny avec au moins 4 ~ 8 Ko de flash pour qu'ils fonctionnent avec le chargeur de démarrage Arduino.
ATTiny44 / 45/84/45/2313 sont populaires comme micro-Arduinos. Ils ont environ un quatrième ou huitième de la RAM et du flash d'un ATMega328 que l'Arduino Uno officiel utilise.
Il existe de nombreux ATTiny, donc aucune déclaration ne peut être dite à leur sujet.
Voir également ici: http://hlt.media.mit.edu/?p=1695
la source
La plupart des attinys n'ont pas de module USART matériel, vous ne pourrez donc pas communiquer avec eux via le port série. Pour certains attinys au lieu de périphériques matériels dédiés I2C et SPI, il existe un périphérique USI simplifié pour lequel vous devez écrire un peu de code de colle pour implémenter la communication SPI ou I2C. Certains attinys n'ont pas d'ADC.
En général, vous devez être plus prudent lorsque vous choisissez attiny pour votre projet, car ceux-ci ont tendance à ne pas avoir un ensemble complet de fonctionnalités disponibles dans atmega328 d'Arduino. Par exemple, attiny2313 a un UART mais n'a pas d'ADC, attiny44 a un ADC, mais n'a pas d'UART, etc.
Consultez simplement le tableau de sélection du microcontrôleur Atmel et une fiche technique au début.
la source
Un point trivial si pertinent, en plus des excellentes réponses déjà publiées:
La plupart des cartes Arduino, sans compter le Pro Mini / Pro Micro et peut-être d'autres rares, contiennent en plus du microcontrôleur principal, soit un deuxième AVR ou une autre partie d'interface USB. Cela permet non seulement la programmation de l'Arduino à partir d'un ordinateur, mais également le débogage du terminal série au moment de l'exécution. La même connexion USB alimente également l'Arduino.
Bien que la puissance requise par ATTiny ait été prise en compte dans votre conception, le débogage du code lors de l'exécution à l'aide d'un logiciel de terminal peut être très pratique.
la source