Grove - 16 Channel PWM Driver (PCA9685)

O Grove - 16-Channel PWM Driver é baseado no NXP PCA9685, que é um driver PWM I2C de 16 canais e 12 bits. Esta placa pode controlar até 16 servos com uma fonte de alimentação externa. Você pode controlar esta placa facilmente com um Arduino via interface Grove I2C. Além disso, você pode usar esta placa como um controlador de LED.
Versão
| Versão do Produto | Alterações | Data de Lançamento |
|---|---|---|
| Grove - 16-Channel PWM Driver (PCA9685) | Inicial | Set 2018 |
Características
- Barramento I2C compatível com Fast-mode Plus de 1 MHz
- 6 pinos de endereço de hardware permitem conectar 62 dispositivos PCA9685 ao mesmo barramento I2C
- Baixa corrente em standby
- Filtro de ruído nas entradas SDA/SCL
Especificação
| Item | Valor |
|---|---|
| Tensão de Operação do MCU | 3.3V / 5V |
| Tensão de Alimentação do PWM | 2.3V ~ 5.5V |
| Entradas Tolerantes | 5.5V |
| Corrente de Saída no pino LEDn | 25mA |
| Corrente de Alimentação no GND | 400mA |
| Temperatura de operação | -40~85℃ |
| Interface | I2C |
| Faixa de Endereços I2C | 0x40 ~ 0x7f(padrão) |
| Tamanho | C: 60mm L: 40mm A: 18mm |
| Peso | 14.3g |
| Tamanho da embalagem | C: 135mm L: 85mm A: 19mm |
| Peso Bruto | 21g |
Aplicações típicas
- Driver de servos
- Driver de LED RGB ou RGBA
Visão Geral do Hardware
Pinagem

Hot swap não é suportado, você deve desconectar o Arduino da fonte de alimentação antes de qualquer substituição ou alteração.
Detalhes de Hardware
Interface I2C
Esta placa usa a interface I2C para permitir que o MCU onboard se comunique com o computador host.
GND: conecte este módulo ao GND do sistema
VCC: você pode usar 5V ou 3.3V para este módulo
SDA: dados seriais I2C
SCL: clock serial I2C

Entrada de Alimentação
Fornece alimentação DC de 5V para o servo.

Saída PWM
Há 16 grupos de pinos (1 - 16) nesta placa, cada grupo de pinos contém um pino de sinal PWM, um pino de alimentação de 5V e um pino de terra.

Endereço I2C
você pode clicar na figura a seguir para ver o arquivo original
Os 6 pads selecionáveis na parte de trás desta placa têm todos 64 endereços I2C opcionais.

Como mostrado na figura acima, todos os pads de endereço são conectados ao nível alto por padrão. As regras de endereço são mostradas abaixo:

O endereço consiste em 7 bits e o bit mais significativo é fixo em 1. Quando convertemos o endereço para um número hexadecimal, precisamos adicionar um 0 à esquerda do bit mais significativo.
Então o endereço padrão é 111 1111, quando adicionamos um 0, ele se torna 0111 1111, que é 0x7f.
E se conectarmos todos os pads de endereço ao terra, ele passa a ser 100 0000; quando adicionamos um 0, ele se torna 0100 0000, que é 0x40.
Princípio de Funcionamento
Plataformas Suportadas
| Arduino | Raspberry Pi | |||
|---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
Primeiros Passos
Brincar com Arduino
Hardware
Materiais necessários
| Seeeduino V4.2 | Base Shield | Grove - 16-Channel PWM Driver | LED |
|---|---|---|---|
![]() | ![]() | ![]() | |
| Adquira agora | Adquira agora | Adquira agora | Adquira agora |
1 Conecte o cabo USB com cuidado, caso contrário você pode danificar a porta. Use um cabo USB com 4 fios internos; cabos com 2 fios não conseguem transferir dados. Se você não tiver certeza sobre o cabo que possui, pode clicar aqui para comprar.
2 Cada módulo Grove vem com um cabo Grove quando você o compra. Caso você perca o cabo Grove, pode clicar aqui para comprar.
3 Você também precisa preparar pelo menos 2 jumpers; caso não tenha, pode clicar aqui para comprar.
-
Passo 1. Conecte o LED vermelho ao GND e ao P1 usando jumpers fêmea-fêmea.
-
Passo 2. Conecte o Grove - 16-Channel PWM Driver à porta I^2^C do Grove-Base Shield.
-
Passo 2. Conecte o Grove - Base Shield ao Seeeduino.
-
Passo 3. Conecte o Seeeduino ao PC via cabo USB.

Neste exemplo com LED, como não estamos usando o pino '5V' no grupo de saída, não precisamos energizar a porta de entrada de alimentação. Se você quiser usar servo, precisa conectar o pino de 5V ao pino de alimentação do servo e fornecer alimentação externa para a porta Power In.
Se você quiser usar servo, pode conectar como mostrado abaixo:

Software
Se esta é a primeira vez que você trabalha com Arduino, recomendamos fortemente que veja Getting Started with Arduino antes de começar.
-
Passo 1. Baixe a biblioteca Grove-16-Channel_PWM_Driver-PCA9685 do Github.
-
Passo 2. Consulte How to install library para instalar a biblioteca para o Arduino.
-
Passo 3. Reinicie a IDE do Arduino. Abra o exemplo; você pode abri-lo das três maneiras a seguir:
-
Abra diretamente na IDE do Arduino pelo caminho: File --> Examples -->Seeed_PCA9685 --> led.

-
Abra no seu computador clicando em basic_demo.ino, que você pode encontrar na pasta XXXX\Arduino\libraries\Seeed_PCA9685\examples\led\led.ino, em que XXXX é o local onde você instalou a IDE do Arduino.

-
Ou você pode simplesmente clicar no ícone
no canto superior direito do bloco de código para copiar o código a seguir para um novo sketch na IDE do Arduino.
-
#include "PCA9685.h"
#include <Wire.h>
PCA9685 led;
void setup()
{
// join I2C bus (I2Cdev library doesn't do this automatically)
Wire.begin();
Serial.begin(9600);
led.init(0x7f);
// Set freq to 100Hz, range from 24Hz~1526hz
led.setFrequency(100);
for (int i=1;i<17;i++){
led.setPwm(i, 0, 1024);
}
}
void loop()
{
}
O arquivo de biblioteca pode ser atualizado. Este código pode não ser aplicável ao arquivo de biblioteca atualizado, portanto recomendamos que você use os dois primeiros métodos.
Se tudo correr bem, você verá o LED acender.
Visualizador de Esquemático Online
Recursos
Suporte Técnico e Discussão de Produto
Obrigado por escolher nossos produtos! Estamos aqui para fornecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja o mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.








