Arduino Uno pinout: every pin on the R3, and the chip pin behind it
Iniciante
- 503componentes na bancada
- 44placas rodando agora
- 1.00xtempo real, em todas as placas
Esta é a pinagem do Arduino Uno R3, a placa que a maioria dos kits traz, com um ATmega328P num soquete e um segundo chip, um ATmega16U2, entre ele e a porta USB. Cada furo dos dois conectores está na tabela abaixo com o pino do chip por trás dele, o que ele pode fazer e no que prestar atenção. Depois da tabela vêm os pinos de alimentação e seus limites, os pinos PWM e os timers por trás deles, Serial, I2C, SPI e os conectores ICSP, e uma lista de qual pino usar para quê.
O circuito acima é um Uno no Mokxi com um potenciômetro em A0 definindo o brilho de um LED no pino 9, com a leitura impressa. A tabela segue o mesmo modelo de placa que o simulador roda, e onde o simulador faz menos que a placa, a página avisa. O Uno R4 mantém esses furos e muda o chip por trás deles; a pinagem dele está linkada no final.
Cada pino, com seu pino do ATmega328P
O conector de cima lê, da esquerda para a direita, SCL, SDA, AREF, GND, depois 13 até 0. O conector de baixo lê IOREF, RESET, 3V3, 5V, GND, GND, VIN, depois A0 a A5. SDA e SCL ao lado do AREF são as mesmas duas trilhas que A4 e A5, acrescentadas no R3 para que um shield ache o I2C no mesmo lugar em toda placa. Os pinos 0 a 7 são a porta D, 8 a 13 são a porta B e A0 a A5 são a porta C, que é o que um sketch que escreve em PORTB por conta própria precisa saber.
No código, os pinos digitais são os seus números e os pinos analógicos são A0 a A5, que também são os pinos digitais 14 a 19. O Nano é o mesmo chip com os mesmos números, mais A6 e A7.
| Pino | Pino do chip | O que ele pode fazer | Atenção a |
|---|---|---|---|
| SCL | PC5 | I2C SCL: a mesma trilha que A5. | Usado por qualquer dispositivo I2C. |
| SDA | PC4 | I2C SDA: a mesma trilha que A4. | Usado por qualquer dispositivo I2C. |
| AREF | - | A entrada de referência analógica. | Não é um GPIO. Nunca acima de 5 V. |
| GND | - | Terra. Três furos. | - |
| 13 | PB5 | Digital. SPI SCK, também no conector ICSP. O LED L, aceso em HIGH. | - |
| 12 | PB4 | Digital. SPI MISO, também no conector ICSP. | - |
| 11 | PB3 | PWM no timer 2, 490 Hz. SPI MOSI, também no conector ICSP. | tone() usa o timer 2 numa placa real. |
| 10 | PB2 | PWM no timer 1, 490 Hz. SPI SS. | A biblioteca Servo usa o timer 1 numa placa real. |
| 9 | PB1 | PWM no timer 1, 490 Hz. | A biblioteca Servo usa o timer 1 numa placa real. |
| 8 | PB0 | Digital. | - |
| 7 | PD7 | Digital. | - |
| 6 | PD6 | PWM no timer 0, 976 Hz. | O timer 0 também roda o millis(). |
| 5 | PD5 | PWM no timer 0, 976 Hz. | O timer 0 também roda o millis(). |
| 4 | PD4 | Digital. | - |
| 3 | PD3 | PWM no timer 2, 490 Hz. INT1: attachInterrupt. | tone() usa o timer 2 numa placa real. |
| 2 | PD2 | Digital. INT0: attachInterrupt. | Uma boa primeira escolha para um botão. |
| 1 | PD1 | TX: saída do Serial, para o chip USB-serial. | Deixe livre, ou os uploads e o monitor serial quebram. |
| 0 | PD0 | RX: entrada do Serial, vinda do chip USB-serial. | Deixe livre, ou os uploads e o monitor serial quebram. |
| IOREF | - | Diz a um shield o nível lógico da placa: 5 V. | Not a GPIO. |
| RESET | PC6 | Reset: nível baixo reinicia o chip, como o botão faz. | Not a GPIO. |
| 3V3 | - | Uma pequena saída de 3,3 V para um sensor, 50 mA no máximo. | Não serve para um motor ou um servo. |
| 5V | - | Saída de 5 V, do USB ou do regulador. | Not a GPIO. |
| VIN | - | Entrada de energia do regulador da placa, 7 a 12 V. | O Mokxi ignora; a placa está no USB. |
| A0 | PC0 | Analógico. Digital 14. | - |
| A1 | PC1 | Analógico. Digital 15. | - |
| A2 | PC2 | Analógico. Digital 16. | - |
| A3 | PC3 | Analógico. Digital 17. | - |
| A4 | PC4 | Analógico. Digital 18. I2C SDA. | Usado por qualquer dispositivo I2C. |
| A5 | PC5 | Analógico. Digital 19. I2C SCL. | Usado por qualquer dispositivo I2C. |
Pinos de alimentação e seus limites
O VIN alimenta o regulador de 5 V da placa, como o conector de energia faz, e a Arduino recomenda 7 a 12 V ali. 5V é o trilho regulado, do conector USB ou do regulador, e 5 V limpos postos nele também alimentam a placa. 3V3 vem de um pequeno regulador próprio, de 50 mA, o que basta para um sensor e não serve para um motor. IOREF diz a um shield o nível lógico, 5 V nesta placa. Os três furos GND são um só terra.
A Arduino especifica 20 mA por pino, e o máximo absoluto do ATmega328P é 40 mA por pino e 200 mA para o chip todo. No Mokxi a placa é sempre alimentada pelo USB, o VIN é uma entrada que ele ignora, e o trilho de 5 V é uma fonte ideal que não cai, então um circuito que derrubaria um Uno de verdade roda limpo aqui.
Pinos PWM e seus timers
Os pinos 3, 5, 6, 9, 10 e 11 fazem PWM com analogWrite, e a serigrafia os marca com um til. Cada par divide um timer: 5 e 6 são o timer 0 a 976 Hz, 9 e 10 são o timer 1, e 3 e 11 são o timer 2, os dois a 490 Hz. O Mokxi os roda nos mesmos timers nas mesmas taxas.
Os timers explicam duas coisas que pegam as pessoas num Uno de verdade. A biblioteca Servo usa o timer 1, então analogWrite nos pinos 9 e 10 para de funcionar enquanto um servo está ligado. E tone() usa o timer 2, então um buzzer tocando uma nota para o PWM nos pinos 3 e 11.
Serial, o chip USB, I2C, SPI e os conectores ICSP
Os pinos 0 e 1 são a porta serial de hardware, e num Uno de verdade vão ao ATmega16U2, que os transforma em USB. Qualquer coisa ligada a eles pode impedir um upload, então deixe-os livres. O Mokxi não modela o 16U2: Serial chega direto ao monitor serial.
O I2C é A4 para SDA e A5 para SCL, e os furos SDA e SCL perto do AREF levam os mesmos dois sinais. O SPI é 10, 11, 12 e 13 para SS, MOSI, MISO e SCK. O conector ICSP de seis pinos na ponta da placa leva MISO, SCK, MOSI, RESET, 5V e GND, os mesmos sinais SPI, para programar o ATmega328P diretamente; o segundo conector ICSP, perto do conector USB, é o do 16U2. No Mokxi os dois barramentos rodam em software nos seus pinos, porque os blocos I2C e SPI do chip não são modelados, e os conectores ICSP não são desenhados como pinos.
Interrupções, os pinos analógicos e o R4
attachInterrupt funciona nos pinos 2 e 3, INT0 e INT1, e o Mokxi modela os dois, com as interrupções por mudança de pino por trás de todos os outros. Todo pino analógico lê dez bits, 0 a 1023, contra o trilho de 5 V, a menos que o AREF diga outra coisa. O conversor do Mokxi não tem ruído, então um divisor lê a mesma contagem sempre, onde um de verdade oscila em um ou dois.
O Uno R4 Minima e o WiFi mantêm todos esses furos e mudam o que está por trás deles: um Renesas RA4M1, 8 mA por pino em vez de 20, Serial no conector USB e Serial1 nos pinos 0 e 1. Um shield serve nas duas placas; um programa de R3 compilado roda só no R3.
Perguntas
Quais pinos do Arduino Uno são PWM?
Os pinos 3, 5, 6, 9, 10 e 11, os seis com til. O 5 e o 6 rodam a 976 Hz e os outros quatro a 490 Hz.
Quais são os pinos I2C do Arduino Uno?
A4 é SDA e A5 é SCL. Os furos SDA e SCL ao lado do AREF são as mesmas duas trilhas, então um shield pode usar qualquer um. `Wire.begin()` usa esses pinos.
Quais pinos são SPI no Arduino Uno?
SS é o 10, MOSI é o 11, MISO é o 12 e SCK é o 13. Os três últimos também estão no conector ICSP.
Qual pino do Uno devo usar para um botão?
O pino 2 ou 3 se você quer uma interrupção, senão qualquer um de 4, 7, 8 ou 12, com `INPUT_PULLUP` e o botão ao terra. Não o 0 nem o 1, que são o Serial.
Quanta corrente um pino do Arduino Uno pode fornecer?
20 mA é o valor para projetar, e 40 mA é o máximo absoluto, além do qual o pino é danificado. O chip todo pode passar 200 mA, então uma fileira de LEDs a 20 mA cada esgota rápido.
Que tensão posso pôr no pino VIN do Uno?
7 a 12 V, que a Arduino recomenda. Uma fonte de 9 V funciona; abaixo de 7 V o regulador não consegue fazer 5 V estáveis, e acima de 12 V ele esquenta.
Posso usar os pinos analógicos do Uno como digitais?
Sim. A0 a A5 são os pinos digitais 14 a 19, então `digitalWrite(A0, HIGH)` funciona. O Uno não tem A6 e A7; esses são do Nano.
Continuar
De onde vêm as informações desta página
Monte isto de verdade
Abra o editor, mude um valor e veja o número mudar junto. Nada para instalar, e não precisa de conta.