Expansor de IO para XIAO

Este produto não está mais disponível para compra.
O IO Expander para XIAO é uma placa de expansão de última geração projetada para aprimorar os recursos da série Seeed Studio XIAO. Alimentada pelo chip MCP23017, esta placa oferece 16 pinos de IO adicionais, permitindo que os usuários expandam seus projetos sem limitações. Seja você um entusiasta que deseja experimentar com mais componentes ou um profissional em busca de uma solução confiável de expansão de IO, esta placa foi feita para atender às suas necessidades. Sua compatibilidade com a série XIAO garante uma integração perfeita, tornando seu processo de desenvolvimento mais simples e eficiente.
Recursos
- Integração perfeita com XIAO: projetado para funcionar perfeitamente com a série Seeed Studio XIAO.
- 16 pinos de IO adicionais: alimentado pelo MCP23017, fornece 16 pinos de IO extras para seus projetos.
- Interface I2C com endereço configurável: o endereço I2C padrão é 0x21, mas pode ser configurado para 0x20.
- Design robusto: construído com materiais de alta qualidade para garantir longevidade e confiabilidade.
Especificações
- Chip: MCP23017
- Número de pinos de IO: 16
- Protocolo de comunicação: I2C
- Endereço I2C padrão: 0x21 (configurável para 0x20)
- Tensão de operação: 3,3 V
- Dimensões: 21 mm x 17,8 mm
Aplicações
O IO Expander para XIAO é versátil e pode ser usado em uma infinidade de aplicações, incluindo, mas não se limitando a:
- Sistemas de automação residencial: aumente o número de dispositivos que você pode controlar na sua configuração de casa inteligente.
- Robótica: adicione mais sensores, motores ou outros componentes ao seu robô sem ficar sem pinos de IO.
- Consoles de jogos: projete controladores personalizados ou outros periféricos com uma grande quantidade de botões e chaves.
- Sistemas de controle industrial: gerencie mais dispositivos e sensores na sua instalação industrial.
- Projetos educacionais: ensine estudantes sobre microcontroladores e eletrônica sem ser limitado pelo número de pinos de IO.
Visão geral de hardware
Esta seção fornece uma visão detalhada dos vários componentes e interfaces na placa XIAO IO Expander.

0. Pads padrão do XIAO
Estes são os pads padrão para conectar o microcontrolador XIAO.
1. Pads J1
Os pads J1 permitem que os usuários decidam se desejam conectar os pinos RST, INTB e INTA do MCP23017 aos pinos D6, D1 e D0 do XIAO por meio de soldagem. De cima para baixo, eles são RST, INTB, INTA.
Por padrão, quando você usa a placa de expansão, os pads de saída adicionais na área 8 são habilitados. Se você não quiser habilitá-los, precisa cortar com uma faca os dois pads adjacentes na área J1.
2. Chip MCP23017
Este é o principal chip expansor de I/O, fornecendo 16 IOs adicionais.
3. Pads J2
Este pad é para selecionar o endereço I2C. O endereço padrão é 0x21. Se você soldar este pad, o endereço pode ser alterado para 0x20.
4. Pinos de saída do MCP23017
Estes são os pinos de saída do chip MCP23017. A definição de cada pino pode ser vista na parte de trás da placa. Eles vão de PA0 a PB7, fornecendo um total de 16 IOs.
5. Pads Grove
Se você desejar conectar um módulo Grove, pode soldar o soquete Grove fornecido. Esta interface Grove está conectada ao barramento I2C. Se você optar por usar os pinos IIC aqui, então não poderá usar os pinos de IO estendidos na área 4.
6. Pino VCC
Este é um pino de saída que pode ser usado para alimentar outros componentes.
7. Pino GND
Este também é um pino de saída que pode ser usado para aterrar outros componentes.
8. Pads de saída adicionais
Estes são alguns pads de saída adicionais, incluindo GND, INTB, INTA, RST. Se você desejar soldar esses pinos para uso em outro lugar, pode fazê-lo.
Primeiros passos
Bem-vindo ao guia de início rápido do IO Expander para XIAO. Este guia tem como objetivo ajudá-lo a configurar e começar a usar sua nova placa IO Expander em conjunto com o controlador principal XIAO RP2040.
Preparação de hardware
Existem três maneiras principais de usar esta placa de expansão,
Modo 1: SMD
Se o seu XIAO estiver com os pinos sem solda, você pode escolher o método SMD direto para soldar o XIAO e a placa de expansão na placa de circuito impresso (PCB) para usar a função de expansão de GPIO.

As PCBs mostradas são apenas para exibição e não estavam disponíveis para venda nas prateleiras na data deste artigo.
Modo 2: XIAO conecta-se diretamente com a placa de expansão através da fileira de pinos
Nesta abordagem, você tem a opção de soldar fios de conexão diretamente na placa de expansão de GPIO para conectar seu dispositivo alvo.

Modo 3: XIAO conecta-se com a placa de expansão através da longa fileira de pinos, e a placa de expansão é estendida soldando a fileira de pinos
Com este método de conexão, você é livre para instalar cabos DuPont na placa de expansão de GPIO. Fiação conveniente para a sua aplicação.

Depois que a soldagem estiver concluída, você pode prosseguir para conectar a placa de expansão ao controlador principal XIAO RP2040.
Para programar o XIAO RP2040, você precisará de um cabo de dados USB TYPE-C. Conecte uma extremidade ao XIAO RP2040 e a outra ao seu computador. Para um guia detalhado sobre como programar o XIAO RP2040, consulte este Wiki.

Preparação de software
Antes de começar a programar a placa, você precisará de uma biblioteca específica para o XIAO. Baixe a biblioteca MCP23017 a partir deste link do GitHub. Depois de baixá-la, instale a biblioteca em seu ambiente de programação.
Demo: saída de IO em nível alto e baixo
Na Arduino IDE, abra um novo sketch e copie o seguinte código de exemplo:
#include <Adafruit_MCP23X17.h>
Adafruit_MCP23X17 mcp;
void setup() {
Serial.begin(9600);
Serial.println("MCP23xxx Blink Test!");
if (!mcp.begin_I2C()) {
Serial.println("Error.");
while (1);
}
Serial.println("Looping...");
for(int i=0; i<16; i++) {
mcp.pinMode(i, OUTPUT);
}
}
void loop() {
mcp.digitalWrite(15, LOW); //PB7
mcp.digitalWrite(14, HIGH); //PB6
mcp.digitalWrite(13, HIGH); //PB5
mcp.digitalWrite(12, HIGH); //PB4
mcp.digitalWrite(11, HIGH); //PB3
mcp.digitalWrite(10, HIGH); //PB2
mcp.digitalWrite(9, HIGH); //PB1
mcp.digitalWrite(8, HIGH); //PB0
mcp.digitalWrite(7, HIGH); //PA7
mcp.digitalWrite(6, HIGH); //PA6
mcp.digitalWrite(5, HIGH); //PA5
mcp.digitalWrite(4, HIGH); //PA4
mcp.digitalWrite(3, HIGH); //PA3
mcp.digitalWrite(2, HIGH); //PA2
mcp.digitalWrite(1, HIGH); //PA1
mcp.digitalWrite(0, HIGH); //PA0
delay(1000);
}
Envie o código acima para o seu XIAO. Depois que o código for carregado com sucesso, você verá que todos os pinos estão em nível alto de 3,3 V, exceto o pino PB7.
Esta placa de expansão só pode usar entradas e saídas digitais, não funções de entrada e saída PWM ou analógica.
Endereçamento de pinos
Ao usar operações de pino único, como pinMode(pinId, dir) ou digitalRead(pinId) ou digitalWrite(pinId, val), os pinos são endereçados usando os IDs abaixo. Por exemplo, para definir o modo de GPB0, use pinMode(8, ...). OBSERVAÇÃO Os MCP23008 e MCP23S08 possuem apenas pinos GPAx.
| Pino MCP23x17 # | Nome do pino | ID do pino |
|---|---|---|
| 21 | GPA0 | 0 |
| 22 | GPA1 | 1 |
| 23 | GPA2 | 2 |
| 24 | GPA3 | 3 |
| 25 | GPA4 | 4 |
| 26 | GPA5 | 5 |
| 27 | GPA6 | 6 |
| 28 | GPA7 | 7 |
| 1 | GPB0 | 8 |
| 2 | GPB1 | 9 |
| 3 | GPB2 | 10 |
| 4 | GPB3 | 11 |
| 5 | GPB4 | 12 |
| 6 | GPB5 | 13 |
| 7 | GPB6 | 14 |
| 8 | GPB7 | 15 |
FAQ
1. Por que meu IO Expander para XIAO não está respondendo?
Resposta: Certifique-se de que o módulo XIAO esteja corretamente conectado à placa de expansão. Verifique também se as bibliotecas necessárias estão instaladas e se a placa e a porta corretas estão selecionadas na Arduino IDE.
2. Posso usar o IO Expander para XIAO com outros microcontroladores?
Resposta: Sim, o IO Expander é projetado principalmente para o módulo XIAO, mas pode ser usado com outros microcontroladores que suportem comunicação I2C. Talvez seja necessário ajustar o código e as conexões de acordo.
3. Como altero o endereço I2C do chip MCP23017 no IO Expander para XIAO?
Resposta: O endereço I2C padrão é definido como 0x21. Se você quiser alterá-lo para 0x20, há um jumper rotulado como "J2" na placa. Você precisará soldar o jumper J2 para mudar o endereço.
4. Estou recebendo ruído ou comportamento irregular nos meus pinos de IO. O que pode ser a causa?
Resposta: Certifique-se de que as conexões estejam firmes e que não haja interferência. Usar resistores de pull-up ou pull-down pode ajudar a estabilizar os pinos de entrada. Além disso, verifique se a fonte de alimentação é estável e pode fornecer a corrente necessária para todos os dispositivos conectados.
Recursos
- [ZIP] Arquivo Eagle
- [PDF] Datasheet - MCP23017
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 a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.