collapse

* Posts Recentes

Contas para saber a duração das baterias. por jm_araujo
[Hoje às 01:29]


Máquina de soldar a fio sem gás LIDL por Hugu
[16 de Agosto de 2019, 18:28]


Livros opensource de electrónica, transístores e OpAmps. por blabla
[14 de Agosto de 2019, 19:45]


Hugu por jm_araujo
[14 de Agosto de 2019, 00:50]


Microfone Canon por almamater
[10 de Agosto de 2019, 07:56]


Chave de Impacto Manual por jm_araujo
[08 de Agosto de 2019, 23:45]


Compra Colectiva Mouser N3-2018 (limite ~28 Julho 2019) [update] por Hugu
[08 de Agosto de 2019, 15:32]


Ajuda num componente certo por dennis_boy
[02 de Agosto de 2019, 21:46]


Bucha Berbequim por SerraCabo
[25 de Julho de 2019, 00:30]


Fabricantes de PCB e Assemblage (produção em massa) por senso
[18 de Julho de 2019, 16:15]

Autor Tópico: [Arduino] Expandir o Numero de Entradas e Saidas com o MCP23S08  (Lida 12291 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline Sérgio_Sena

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 1.646
    • Electronic Gear for Musicians
Re: [Arduino] Expandir o Numero de Entradas e Saidas com o MCP23S08
« Responder #15 em: 18 de Junho de 2010, 22:03 »
Uma duvida, será que consigo colocar este chip MCP23008 a uma distancia de +/- 5 metros do Arduino?

COnsegues, mas vais ter que reduzir a velocidade de comunicação. Se não precisares de velocidade na comutação das portas de saida ou leitura das entradas, então usa o mais devagar possivel.
Assim tens sucesso.

E as resistências para o barramento I2C, calcula-as para contabilizar a resistência dos cabos no total e a velocidade de comutação.

Não tens que te preocupar com ecos de sinal, porque a velocidade é lenta. Se usares velocidades altas para essas distâncias, o facto de facto de serem sinais não-balanceados, os ecos do sinal voltam param o micro e é uma arrelia.



Offline TigPT

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 5.348
    • Tiago Rodrigues
Re: [Arduino] Expandir o Numero de Entradas e Saidas com o MCP23S08
« Responder #16 em: 19 de Junho de 2010, 17:52 »
Como já foi muitas vezes discutida a questão dos samples. Normalmente, para e-mails de dominios privados, não se paga portes. Pessoalmente, já deixei de pedir samples à muitos meses.. Mas quando pedia, nunca tive que pagar nada.

Offline dio123

  • Mini Robot
  • *
  • Mensagens: 946
Re: [Arduino] Expandir o Numero de Entradas e Saidas com o MCP23S08
« Responder #17 em: 15 de Março de 2013, 16:57 »
estou com dificuldade em controlar as portas individualmente.
Queria ligar 1 porta e as outras ficarem desligadas, mas nao estou a conseguir.
nao consigo perceber qual a sequencia das portas porque  Wire.write(0x03);  as portas GP0 e GP1 ficam desligadas nas 0x04 a GP2 fica desligada.
No datasheet nao consigo perceber. Consegui definir como input e ouput e ler os inputs.
 
o codigo que estou a usar.
Citar

#include "Wire.h"
void setup() {
  Wire.begin();
}

void loop(){
  Wire.beginTransmission(0x20);
  Wire.write(0x20);
 Wire.write(0x03); // GPIOA
 Wire.endTransmission();
}

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.612
  • Helpdesk do sitio
Re: [Arduino] Expandir o Numero de Entradas e Saidas com o MCP23S08
« Responder #18 em: 15 de Março de 2013, 17:23 »
0x03 = 0b0000 0011
0x04 = 0b0000 0100

Perfeitamente normal, se usases os pinos do atmega directamente já estarias habituado a usar os pinos/portos como esse port-expander espera que seja usado.
Muitos links aqui:
http://code.rancidbacon.com/LearningAboutArduinoMCP23S08

E deves estar a usar o MCP23008 e não o MCP23S08, porque o primeiro fala por i2c, o segundo é via SPI.
Avr fanboy