Des broches fixes pour chaque bus
L’ATmega328P n’a pas de matrice de broches : chaque périphérique est sur des broches précises. L’I²C est sur A4 (SDA) et A5 (SCL), le SPI sur D10 (SS), D11 (MOSI), D12 (MISO) et D13 (SCK), et le port série matériel sur D0 (RX) et D1 (TX), partagé avec la puce USB. attachInterrupt() ne fonctionne que sur D2 et D3 ; les autres broches ont besoin des interruptions sur changement d’état.
Le PWM est sur D3, D5, D6, D9, D10 et D11, marquées ~. Les broches 5 et 6 tournent à environ 980 Hz (976,6 Hz), les autres à 490 Hz. La bibliothèque Servo occupe le timer des broches 9 et 10, et tone() celui des broches 3 et 11 : le PWM s’y arrête pendant qu’ils les utilisent.
A6 et A7 : analogiques seules
Le Nano ajoute A6 et A7, absentes de l’UNO. Elles ne sont reliées qu’à l’ADC : digitalRead(), digitalWrite() et INPUT_PULLUP n’y fonctionnent pas. A0 à A5 fonctionnent comme entrées analogiques et comme broches numériques 14 à 19.
Courant et alimentation
L’ATmega328P est spécifié à 20 mA par broche ; 40 mA est son maximum absolu, et la puce entière doit rester sous 200 mA par ses broches d’alimentation. Les broches ont aussi des limites par groupe : au plus 150 mA fournis par D0–D4 et A0–A5 ensemble et 150 mA par D5–D13, et au plus 100 mA absorbés par chacun des groupes A0–A5, D0–D4 et D5–D13. Utilisez un transistor pour les relais, les moteurs et les rubans de LED. Sur le Nano d’origine, la broche 3V3 vient de la puce USB-série : elle ne fonctionne qu’avec l’USB branché et pour de petites charges ; les clones peuvent différer.
Tableau complet des broches de l’Arduino Nano
| Broche | Port | État | Analogique | Fonctions | Notes |
|---|---|---|---|---|---|
| D0 | PD0 | Avec précaution | Non | RXD | USB-série, UART RX |
| D1 | PD1 | Avec précaution | Non | TXD | USB-série, UART TX |
| D2 | PD2 | Libre | Non | INT0 | Aucune restriction |
| D3 | PD3 | Libre | Non | PWM, INT1, OC2B | timer de tone() |
| D4 | PD4 | Libre | Non | Non | Aucune restriction |
| D5 | PD5 | Libre | Non | PWM, OC0B | PWM à environ 980 Hz |
| D6 | PD6 | Libre | Non | PWM, OC0A | PWM à environ 980 Hz |
| D7 | PD7 | Libre | Non | Non | Aucune restriction |
| D8 | PB0 | Libre | Non | Non | Aucune restriction |
| D9 | PB1 | Libre | Non | PWM, OC1A | timer de Servo |
| D10 | PB2 | Libre | Non | PWM, OC1B, SS | timer de Servo, SPI CS |
| D11 | PB3 | Libre | Non | PWM, OC2A, MOSI | timer de tone(), SPI MOSI (TX) |
| D12 | PB4 | Libre | Non | MISO | SPI MISO (RX) |
| D13 | PB5 | Libre | Non | SCK | LED, SPI SCK |
| A0 | PC0 | Libre | ADC0 | Non | Aucune restriction |
| A1 | PC1 | Libre | ADC1 | Non | Aucune restriction |
| A2 | PC2 | Libre | ADC2 | Non | Aucune restriction |
| A3 | PC3 | Libre | ADC3 | Non | Aucune restriction |
| A4 | PC4 | Libre | ADC4 | SDA | I²C SDA |
| A5 | PC5 | Libre | ADC5 | SCL | I²C SCL |
| A6 | ADC6 | Entrée seule | ADC6 | Non | analogique seule |
| A7 | ADC7 | Entrée seule | ADC7 | Non | analogique seule |
Broches physiques : la 1 est TX (D1), la 15 est D12, la 16 est D13 et la 30 est VIN. VIN accepte 6 à 20 V, 7 à 12 V recommandés ; 5V est la ligne régulée.
Questions fréquentes
Peut-on utiliser A6 et A7 comme broches numériques sur le Nano ?
Non. A6 et A7 ne sont reliées qu’à l’ADC de l’ATmega328P : elles n’ont ni entrée numérique, ni sortie, ni pull-up. Pour y lire un bouton, utilisez analogRead() et une résistance externe.
Quelles broches de l’Arduino Nano gèrent le PWM ?
D3, D5, D6, D9, D10 et D11. D5 et D6 tournent à environ 980 Hz (976,6 Hz), les autres à 490 Hz.
Quelles sont les broches I2C et SPI du Nano ?
L’I²C utilise A4 (SDA) et A5 (SCL). Le SPI utilise D11 (MOSI), D12 (MISO) et D13 (SCK), avec D10 comme SS. Ce sont des broches fixes dans le matériel.
Quel courant peut fournir une broche de l’Arduino Nano ?
L’ATmega328P est spécifié à 20 mA par broche, avec 40 mA en maximum absolu et 200 mA au total par ses broches d’alimentation. Les broches ont aussi des limites par groupe : au plus 150 mA fournis par D0–D4 et A0–A5 ensemble et 150 mA par D5–D13, et au plus 100 mA absorbés par chacun des groupes A0–A5, D0–D4 et D5–D13. Pour tout ce qui est plus gros qu’une LED, passez par un transistor ou un MOSFET.
Quelles broches du Nano peuvent déclencher des interruptions ?
attachInterrupt() fonctionne sur D2 et D3. Toutes les autres broches peuvent déclencher une interruption sur changement d’état, via les registres PCINT ou une bibliothèque.