ATtiny85 : Configuration des broches, diagramme bloc et programmation

janv. 07 2026
Source: DiGi-Electronics
Parcourir: 343

L’ATtiny85 est un petit microcontrôleur 8 bits conçu pour des tâches de contrôle simples où l’espace et la consommation d’énergie comptent. Il combine mémoire, minuteries, entrée analogique et communication série dans un boîtier à 8 broches. Cet article fournit des informations détaillées sur ses spécifications, son brochage, sa structure interne, ses réglages d’alimentation et d’horloge, sa programmation, ses circuits et ses problèmes courants.

Figure 1. ATtiny85

Aperçu de ATtiny85 

L’ATtiny85 est un microcontrôleur compact 8 bits conçu pour des tâches de contrôle simples où l’espace, la consommation d’énergie et le nombre de composants doivent rester faibles. Son format 8 broches permet de réduire la taille du circuit, la complexité du câblage et le coût du système tout en assurant une fonctionnalité de contrôle de base.

Malgré sa longue présence sur le marché, l’ATtiny85 reste largement utilisé grâce à sa stabilité, sa documentation solide et sa compatibilité avec les outils de développement courants. Il fonctionne sur une large plage de tensions et prend en charge plusieurs options d’horloge, ce qui le rend adapté aux conceptions compactes et à faible consommation nécessitant un comportement fiable et prévisible.

Spécifications techniques ATtiny85 

Non. de Pins8
CPUAVR RISC 8 bits
Tension de fonctionnement1,8 à 5,5 V
Mémoire du programme8K
Type de mémoire de programmeFlash
RAM512 octets
EEPROM512 octets
Nombre de canaux ADC10-bit 4
Comparateur1
PackagesPDIP (8 broches) SOIC (8 broches) TSSOP (8 broches) QFN/MLF (20 broches)
Oscillateurjusqu’à 20 MHz
Minuterie (2)Minuteurs 8 bits
Puissance améliorée à la réinitialisationOui
Minuterie de mise en tensionOui
Broches d’E/S6
FabricantMicropuce
SPIOui
I2COui
Chronomètre de gardeOui
Détection de coupure de tension (BOD)Oui
RéinitialisationOui
USI (Interface Série Universelle)Oui
Température minimale de fonctionnement-40 °C
Température maximale de fonctionnement125 C

Configuration du brochage ATtiny85

Figure 2. ATtiny85 Pinout Configuration

PinNomFonctions principales
1PB5RÉINITIALISATION, GPIO (SI LE FUSIBLE A CHANGÉ)
2PB3GPIO, ADC
3PB4GPIO, ADC
4GNDTerrain
5PB0GPIO, PWM, MOSI
6PB1GPIO, PWM, MISO
7PB2GPIO, ADC, SCK
8VCCAlimentation électrique

L’ATtiny85 est disponible en boîtiers PDIP-8 et QFN/MLF-20. Les deux partagent le même circuit interne, mais la disposition des broches diffère. Le boîtier PDIP-8 expose uniquement des broches basiques et est plus facile à utiliser dans les circuits basiques, tandis que le boîtier QFN/MLF-20 inclut des broches supplémentaires marquées comme non connectées.

La plupart des broches prennent en charge plusieurs fonctions. Une seule broche peut servir d’entrée ou de sortie numérique, lire des signaux analogiques, générer une sortie PWM ou supporter la communication série. Cette conception multifonction permet à l’ATtiny85 de rester petit tout en offrant de la flexibilité. La broche RESET peut également être configurée en broche en modifiant les réglages du fusible, bien que cela supprime la possibilité de réinitialisation externe.

Diagramme bloc ATtiny85

Figure 3. ATtiny85 Block Diagram

L’ATtiny85 est construit autour d’un cœur de traitement AVR qui exécute les instructions stockées en mémoire Flash. La SRAM est utilisée pour des données temporaires pendant le fonctionnement, tandis que l’EEPROM stocke des données non volatiles qui doivent être conservées lors de la coupure de courant. Le compteur de programme, le pointeur de pile et les registres gèrent le flux d’instructions et le traitement des données.

Les fonctions de synchronisation sont gérées par deux minuteurs internes 8 bits et un minuteur watchdog. Le watchdog améliore la fiabilité en réinitialisant l’appareil si l’exécution normale du programme s’arrête. Un oscillateur interne fournit le signal d’horloge, et un contrôle centralisé du chronométrage synchronise tous les modules internes.

Les opérations d’entrée et de sortie sont gérées via des registres de port connectés directement aux broches externes. L’appareil intègre également des circuits analogiques tels que le ADC et le comparateur. Tous les blocs internes sont reliés via des chemins de données partagés, permettant une communication efficace entre la mémoire, la logique de traitement et les E/S.

Réglages d’alimentation, d’horloge et de fusibles ATtiny85

• L’ATtiny85 comprend un oscillateur RC interne, permettant de fonctionner sans composants d’horloge externes.

• Des sources d’horloge externes ou des cristaux peuvent être utilisés lorsqu’une précision de synchronisation plus élevée est requise.

• Les réglages du fusible contrôlent la source d’horloge, le délai de démarrage, le niveau de détection de coupure de courant et le comportement de la broche RÉINITIALISER.

• Fonctionner à des fréquences d’horloge plus basses réduit la consommation d’énergie et le bruit électrique.

• La détection de coupure de tension améliore la stabilité à basse tension d’alimentation mais augmente légèrement la consommation de courant.

Limites GPIO ATtiny85 et fonctionnement sûr

• Les broches GPIO sont destinées au contrôle du signal et ne doivent pas alimenter les charges externes.

• Les LED connectées aux broches GPIO nécessitent des résistances limitant le courant pour éviter les dommages.

• Les moteurs, relais et autres dispositifs à fort courant doivent être contrôlés à l’aide de transistors externes ou MOSFET.

• Des résistances de tirage internes peuvent être activées pour simplifier les connexions des boutons et des interrupteurs.

• Toutes les tensions GPIO doivent rester dans des limites spécifiées pour éviter des dommages permanents.

Capacités ADC et analogiques ATtiny85

FonctionnalitéDescription
Résolution ADC10-bit
Canaux d’entréeJusqu’à 4
Options de référenceVCC ou référence interne
Mode spécialSommeil à réduction du bruit ADC

L’ATtiny85 est équipé d’un convertisseur analogique vers numérique intégré qui mesure les variations de tension et les convertit en valeurs numériques. La qualité de mesure dépend d’une tension de référence stable, de connexions électriques propres et d’un bon routage du signal. L’utilisation du mode veille ADC Noise Reduction aide à réduire le bruit interne lors de la conversion, ce qui améliore la cohérence de la lecture et la fiabilité globale.

ATtiny85 Communication Série avec l’USI

L’ATtiny85 prend en compte la communication série via une interface série universelle (USI). Cette interface flexible peut être configurée via un firmware pour fonctionner en mode SPI ou supporter une communication de type I²C. En utilisant un seul bloc matériel partagé, l’appareil conserve une taille compacte tout en permettant un échange de données basique.

Comme l’USI repose fortement sur le contrôle logiciel, une gestion minutieuse du timing est nécessaire. Il convient aux tâches de communication simples et à faible vitesse, mais offre moins de fonctionnalités d’automatisation que les périphériques SPI ou I²C dédiés que l’on trouve dans les microcontrôleurs plus grands.

Programmation ATtiny85 via l’IDE Arduino

Figure 4. ATtiny85 Programming Through the Arduino IDE

• L’ATtiny85 peut être programmé dans l’IDE Arduino après avoir installé un cœur compatible ATtiny.

• La programmation est effectuée à l’aide d’un programmeur USB ou d’un Arduino configuré comme FAI.

• Les réglages de la carte dans l’IDE Arduino doivent correspondre à la fréquence d’horloge et à la tension de fonctionnement sélectionnées de l’ATtiny85.

• Les codes PIN utilisés dans le code diffèrent de la disposition physique des broches, ils doivent donc être vérifiés soigneusement avant le câblage.

Circuit ATtiny85 minimal fiable

Figure 5. Minimal Reliable ATtiny85 Circuit

Ce circuit utilise uniquement les composants de base nécessaires à un fonctionnement stable. Les broches VCC et GND fournissent l’alimentation, permettant au fonctionnement correct de la logique interne. L’oscillateur interne contrôle le calage, donc aucun composant d’horloge externe n’est nécessaire.

Une LED connectée via une résistance de 47 Ω démontre le contrôle de sortie tout en protégeant à la fois la LED et la broche GPIO. La broche RESET reste accessible pour la reprogrammation ou le redémarrage de l’appareil. Avec très peu de composants externes, cette configuration offre une base simple et fiable pour des applications de base.

ATtiny85 Problèmes courants et vérifications rapides

ProblèmeQue vérifier ou corriger ?
Échecs de téléchargement de codeVérifiez le câblage du fournisseur et confirmez le réglage RESET du fusible
Mauvais timingVérifier la source d’horloge sélectionnée et la configuration du fusible
Relevés instabilisés des ADCAméliorer la mise à la terre et ajouter des condensateurs de découplage appropriés
Erreurs de communicationExaminez les réglages de configuration et de timing de l’USI
Broches de surchauffeCourant de charge plus faible et utilisation de composants de pilotes externes

Conclusion

L’ATtiny85 regroupe les fonctions de contrôle de base dans une forme très compacte. Ses spécifications, fonctions de broche, blocs internes et réglages de puissance expliquent comment il fonctionne dans de vrais circuits. Avec une bonne gestion des GPIO, une utilisation des ADC, une configuration série et un circuit minimal, l’ATtiny85 peut être compris clairement et appliqué dans des conceptions stables et à faible consommation.

Foire aux questions [FAQ]

Combien d’énergie consomme l’ATtiny85 ?

La consommation d’énergie dépend de la tension d’alimentation, de la fréquence d’horloge et des fonctions actives. Des fréquences d’horloge plus basses et la désactivation des périphériques inutilisés réduisent la consommation de courant.

L’ATtiny85 a-t-il besoin d’une horloge externe ?

Non. L’ATtiny85 possède un oscillateur RC interne et peut fonctionner sans composants d’horloge externes. Une horloge externe n’est nécessaire qu’à une meilleure précision de synchronisation.

La broche RESET peut-elle être utilisée comme broche d’E/S normale ?

Oui. La broche RESET peut être configurée comme GPIO en utilisant les réglages du fusible. Cela désactive la programmation standard des fournisseurs d’accès Internet et nécessite une programmation haute tension pour reprogrammer l’appareil.

L’ATtiny85 peut-il entraîner directement des moteurs ou des relais ?

Non. Les broches GPIO ATtiny85 sont uniquement pour le contrôle du signal. Les moteurs et relais doivent être entraînés à l’aide de transistors externes ou de MOSFET.

Pourquoi les relevés des ADC d’ATtiny85 sont-ils instables ?

Les lectures instables du CAA sont généralement causées par un bruit d’alimentation ou une mauvaise mise à la terre. Ajouter des condensateurs de découplage appropriés et utiliser le mode de réduction de bruit ADC améliore la stabilité.