En interne le microcontrôleur possède 3 ports d'entrées/sorties :
• PORTB : 8 broches,
• PORTC : 7 broches,
• PORTD : 8 broches.
Pour chaque PORT sont affectées des broches correspondant au microcontrôleur.
• PORTB : broches 14, 15, 16, 17, 18, 19, 9 10,
• PORTC : broches 23, 24, 25, 26, 27, 28, 1,
• PORTD : broches 2, 3, 4, 5, 6, 11, 12, 13.
Pour éviter d'avoir un circuit intégré avec de très nombreuses broches, utile en fonction du projet à réaliser, certaines sont multifonctions.
Le programmeur choisit par programmation la fonction qu'il veut utiliser pour chaque broche,
Nota :
• L'utilisation des fonctions du microcontrôleur repose sur l'utilisation et la manipulation de registres internes,
• Lorsque l'on utilise les fonctions de l'arduino, l'IDE nous décharge de la manipulation de ces registres et l'on doit utiliser la numérotation de la platine arduino uno, programmation en haut niveau,
• Lorsque l'on programme en bas niveau il faut impérativement connaître les registres concernés et utiliser la numérotation de l'Atmega 328.
Les correspondances des broches de l'Atmega 328 et la platine de l'arduino uno ne sont pas identiques :