Wpis z mikrobloga

Mirki! Potrzebuję trochę pomocy z MCP23017(albo chociaż jakikolwiek inny expander portów) i arduino. Jest ktoś kto ogarnia i jest w stanie mi odpowiedzieć na kilka prostych pytań?


2. Jeden expander jeszcze ok, ale co jeżeli muszę podłączyć aż 3?


3. Widziałem w MCP23017 porty INT A i INT B(to są te od przerwań, tak?). W takim razie jak wygląda przerwanie podłączone do expandera zamiast do µC? Przecież jest on podłączany do analoga, a nie pinu od przerwań.


4. Ogólna pomoc adresami, ustalaniem stanów itd. będzie mi potrzebna


#kiciochpyta #elektronika #arduino #expander #ekspander #porty
  • 24
@Analityk: (#)

Ok, powoli zaczynam ogarniać. Jest jedna kwestia. Mówisz mi tutaj na prawdę o wielu rzeczach, które muszę w komunikacji zrobić i wysyłać itd, a jak patrzę na kod np. ten:


int addr1 = 0b00100000;


int addr2 = 0b00100001;




// Set the data direction register for port A to all outputs


Wire.beginTransmission (addr1);


Wire.write (0x00); // IO direction register port A


Wire.write (0x00); // set all as outputs


Wire.endTransmission ();
// Turn on pullup resistors for first five inputs of port B


Wire.beginTransmission (addr1);


Wire.write (0x0D); // Pullup resister register for port B


Wire.write (0x1F); //


Wire.endTransmission ();

@Wyrewolwerowanyrewolwer: Sprawdź dokładnie jaką masz kostkę, kiedyś spędziłem 3 dni na wkurzaniu się, że ekspander mi nie działa po czym zauważyłem, że po symbolu jest jakaś literka - okazało się, że moja kostka ma trochę inny adres niż ten na rysunkach w DS
kolego jak w końcu opanujesz sterowanie tymi MCP23017 to daj znać jak to idzie, sam posiadam 10 sztuk MCP23017-E/SP i potrzebuję wysterować jak najwięcej przekaźników.

Podłącze max 8 sztuk.

With the 23017, the first 4 bits of the address are hard-coded. The last 3 bits are set by a trio of input pins. Because of this, you can have up to 8 different 23017s running on the same serial bus, each controlled