-
Thread
ATMega32 liest über I2C-Bus die Eingänge vom MCP23017
mit mikroPascal einen ATMega32 zu programmieren, das er über den I2C-Bus die Eingänge (PortB) des MCP23017 ausliest und an den Ausgängen (PortA) des MCP23017 die gelesenen Daten wieder ausgibt. Das ausgeben an Port A funktioniert, das lesen und anschließende ausgeben leider nicht. Programm (Skizze
-
Thread
24 V Inputs auf seriell etc.
Ich nutze für die Steuerung von Licht/Jalousien usw. selbst entwickelte Module auf der Basis des MCP23017. Der kann 16-IOs (Input oder Output) und kommuniziert über I2C (bei mir 3,3 V). So ein Modul ist auf der Hutschiene 100 mm lang und knapp 80 mm hoch. Da packe ich dann z. B. 16 Eingänge mit Optokoppler
, die digitalen Input gehen bis 24V. Und das Ding hat ein I2C mit dem Du kommunizieren kannst (MCP23017SS). Da braucht es keinen Arduino dazu.
-
Thread
Gemeinsamer IO Pin für Ein und Ausgang
> Denn Hintergrund ist auch ein > wenig, dass ich die Anzahl Port Expander begrenzen will. Der MCP23017 > hat zwar immerhin 3 Pins zum setzen der Adresse. Aber es beschränkt mich > dann doch auf 8 Stück. Was dann für 16 IOs auf 4x16 anstelle von 8x16 > beschränken würde. Der CY8C9540A hat 32 I
Hallo, na wenn die Reise jetzt die Richtung wechselt, biste mit einem MCP23017 (I2C) oder MCP23S17 (SPI) flexibler. jeweils 16 I/Os frei konfigurierbar, Input, Input + Pullup, Output
-
Thread
MCP23S18 I/O Expander
Seiten erklärt. Klar, da muss man sich durchbeißen. Die Register sind ebenfalls gleich zu meinem MCP23017 (I2C). So sieht der Auszug meiner Klasse für Ausgänge aus. Die Methoden readOneRegister und writeOneRegister sind nur die I2C Transfer Funktionen. Musste nur durch SPI Transfer Funktionen ersetzen
-
Thread
Daten aus I2C zum PC, grosse Distanz
LongRange-I2C (also PCA9600+CAN-Transceiver+Steuerung der Flankensteilheit) auf Modulen mit den MCP23017 und 16 Eingängen mit OKs bzw. 32 Ausgängen schon seit Jahren - das funktioniert prächtig. Den Schaltungsteil, der aus I2C den LongRange-I2C macht, habe ich (zusammen mit einem Spannungsregler) jetzt
-
Thread
TIL311 Ansteuerung - mal eben drüber schauen?
Chips einzusparen bräuchte man mehr Ports vom uC. Edit: Die 2 74HCT595 könnten durch einen MCP23017 bzw. MCP23S17 ersetzt werden. http://ww1.microchip.com/downloads/en/DeviceDoc/20001952C.pdf
#6102624: > Naja, indem man die massig freien A-Ports dazu nimmt. 6 Ports = 6 CE > Leitungen. Den MCP23017 habe ich schon verwendet, der braucht halt > I2C. Aber das kann der Pro Mini doch. Benötigt nur 2 Ports am uC. Ansonsten den auch erwähnten MCP23S17.
-
Thread
Raspberry Pi 3 + Windows 10 ioT + I2C
Touch-Schaltpult. Als Grundlage hierzu dient ein Raspberry Pi3 mit Windows 10 IoT Core, es sollen über I2C 8 MCP23017 angesteuert werden, die die Relais für die Weichen und Schienen-Stromversorgung schalten sollen. Zum entwickeln habe Ich mich für C# entschieden aufgrund der einfachen Handhabung der GUI. Die GUI
Ich werde nochmal mit meinem Vater die Hardware durchchecken und mal nen test mit nem einzelnen MCP23017 durchführen. Trotzdem danke für eure Tatkräftige Unterstützung. Grüße Olli.
-
Thread
Zusatzplatine mit 4x4 Leucht-Tastern für Arduino-Neueinsteiger
entwickelt. Diesmal habe ich eure Verbesserungsvorschläge berücksichtigt. Dank der Verwendung des MCP23017 werden jetzt nur noch vier Kabel benötigt: +5V, GND, SDA und SCL. Das vereinfacht die Verdrahtung ungemein. Siehe Foto. Die Abmessungen der Platine: 88 x 88 mm. Die Abmessungen der Leuchtkappen
wo die Vf,min = 2.7V ist. Siehe Datenblatt zur LWT673-Serie von OSRAM. Und am I/O-Ausgang des MCP23017 z.B. am Pin21 = GPA0 steht von der angelegten Vdd = 5V nur noch 4.4 V zur Verfügung. D.h. der Strom ist in Wirklichkeit: I = (4.4V - 2.8V) / 150 Ohm = 10.7 mA bzw. pro LED nur 5.35 mA. Also
-
Thread
Praspberry Pi GPIO Erweiterung
Dürfte ein paar Boards mit dem MCP23017 geben. Ein paar 74HC594 würden es auch tun, aber du willst ja nichts eigenes.
Deutschland, das sollte für geschäftliche Bestellung reichen: https://eckstein-shop.de/navi.php?qs=MCP23017 WaveShare MCP23017 IO Expansion Board, Expands 16 I/O Pins 3,99 € Adafruit GPIO Expander Bonnet - 16 Additional I O over I2C 10,56 € https://www.watterott.com/ könnte auch was haben
-
Thread
Kabelbaum Prüfgerät
Sollte Interesse bestehen kann ich den hex für ein arduino (328) einstellen mit i2c mcp23017 , 2x Led, 2x Taster, 1x piezo . Ui ist für 64 Kanäle gemacht, funktioniert natürlich auch von 8 bis 128 wobei es dann aber einige Verschiebungen gibt.
-
Thread
[V] Vorverstärker aus Prototypenbau
Möglichkeiten für den Anschluss von Motorpotis (Volume und Balance) 3. ein Board für die Ansteuerung eines MCP23017 (nur für Outputs) 4. ein Board mit 8 Meder Relais für die Eingänge 5. ein Board für die Mutingschaltung mit Meder Relais 6. alle Eingänge- / der Ausgang sind mit Chinchbuchsen von Neutrik 7. Die
-
Thread
AVR - Hilfe bei Schematics prüfung?
adressierbar, interessant. Habe ich so noch > nicht gesehen. Nein, sehe ich nicht so, bzw. nur beim MCP23017 (I2C). Der TO verwendet MCP23S17 (SPI), da haben A0-A2 keine Bedeutung - wie auch? Der TO braucht getrennte /CS-Leitungen. leo
interessant. Habe ich so noch >> nicht gesehen. > > Nein, sehe ich nicht so, bzw. nur beim MCP23017 (I2C). Der TO verwendet > MCP23S17 (SPI), da haben A0-A2 keine Bedeutung - wie auch? > Der TO braucht getrennte /CS-Leitungen. > > leo Laut DB ist SPI-Betrieb eher als I2C-over-SPI anzusehen
-
Thread
32 Relais am Raspi um 5 Volt bei 3 Ampere zu schalten
datasheet.lcsc.com/szlcsc/Ningbo-Keke-New-Era-Appliance-HK3FF-DC24V-SHG_C98127.pdf Datenblatt MCP23017: http://ww1.microchip.com/downloads/en/devicedoc/20001952c.pdf Auf den Rest müsstest du selber kommen ;) (Spoiler: Nein, das Expansion Board kann keine 2.3A treiben, wenn alle Relais an sein
Also klappt es nicht, weil der 32-Port-Expander pro Port nur 25 mA Genau, denn der verbaute MCP23017 kann pro Port maximal 25mA und insgesamt nur 125mA / 150mA treiben.
-
Thread
I2C Unterschied einfacher LCD
I2c_Porterweiterung SPI-Porterweiterung zu nehmen. So sind z.B. MCP23008 und MCP23S08, genau wie auch MCP23017 und MCP23S17, beinahe identisch, nur bei ersten (ohne S) I2C, bei den zweiten (mit S) SPI-Interface. Mit SPI geht es deutlich schneller, als mit I2C. Jörg R. schrieb im Beitrag #5966787: > Nimm
-
Thread
64 Eingänge für Arduino
wegen anderer Basisadresse und dann gibt es noch MCP https://www.nikolaus-lueneburg.de/2015/11/mcp23017-i2c-io-port-expander/
der Richtung hilft dir weiter: https://www.ramser-elektro.at/shop/module-sensoren-adapter-und-co/mcp23017-i2c-16bit-i-o-port-erweiterung/ 4 davon und du haben fertig.
-
Thread
MCP23017 instabil
die einzelnen Ausgänge des Stufentransformators 'verbindet'. Diese Relaiskarte wird durch einen MCP23017 Port-Expander gesteuert, welcher wiederum vom Raspberry durch i2c angesprochen wird. Mein Problem ist nun: Nach mehrfachen Schalten des Systems, schmiert der MCP23017 ab. Soll heißen, die Ausgänge
Der MCP23017 läuft bei mir überall 100% verlässlich. Bestimmt ist die Stromversorgung des MCP23017 ungenügend.
-
Thread
Relaiskarte am raspberry
ich hier 5V vom Raspberry anschließen soll oder 3,3V da die Ausgangsspannung an den Ausgängen des MCP23017 auch 3,3V betragen. Wäre um jede Hilfe sehr dankbar.
5V vom Raspberry > anschließen soll oder 3,3V da die Ausgangsspannung an den Ausgängen des > MCP23017 auch 3,3V betragen. Guck dir das Schaltbild von deiner Relaiskarte an bzw. zeige es hier.
-
Thread
Treiber 100mA mit Tri-State einzeln Steuerbar gesucht
abschaltet? NCV7708 - sieht z.Z. am besten aus, ein Muster ist bestellt, dauert aber ... MCP23017 - auch schöner Schaltkreis, aber der Ausgangsstrom ist nicht für 85mA geeignet Die Schaltung in der Anlage würde vollkommen ausreichen, jedoch belegt sie zu viel Platz auf der Leiterplatte.
H-Brücken heißen Halbbbrücken. Im Englischen ist das etwas besser, da heißt es half / full bridge. > MCP23017 - auch schöner Schaltkreis, aber der Ausgangsstrom ist nicht > für 85mA geeignet Deine 100mA sind nur kurze Pulse, da kann man die ICs durchaus auch mal ordentlich überlasten. Entscheidend ist
-
Thread
24V Ausgänge mit MCP23017 und UDN2987
schaltet zwar gegen GND, aber das sollte kein Problem sein. TPIC6B595 gingen auch und würde den MCP23017 überflüssig machen. Die Ansteuerung wäre allerdings nicht per I2C, aber auch seriell. http://www.ti.com/lit/ds/symlink/tpic6b595.pdf
4.3V beim MCP23017 an...
-
Thread
MCP23017 Schaltung mit Optokoppler 5V-48v
Problem bzw. eigentlich auch eine Lösung, finde diese aber sehr aufwendig. Ich möchte über den MCP23017 Eingangssignale erkennen, zb. Taster, Impulse von Zählern (meist als open Collector) usw. Nun habe ich mir folgendes gedacht. 1. Welchen Spannungsbereich -> 5V-48V 2. Welche Arten der Beschaltung
Bastian schrieb im Beitrag #5781894: > Ich möchte über den MCP23017 Eingangssignale erkennen, zb. Taster, > Impulse von Zählern (meist als open Collector) usw. In welchen Spannungsbereichen soll die Schaltung "an" oder "aus" erkennen? Wie stark können die Eingangssignale
-
Thread
mcp23017 und udn2981 für 2x 8 channel solid state relay
Raspberry Pi 3 über i2c betreiben. Hierzu habe ich mich kundig gemacht, dass der Portexpander MCP23017 eine gute Lösung ist in Verbindung mit Leistungsverstärkern - ich habe hierzu den UDN2981 gewählt (obwohl es hier im Forum einen thread gibt, wo stattdessen ein ULN empfohlen wird, aber ganz klar
Aber richtig: Der Raspberry Pi verwendet 3,3V für i2c, das habe ich bereits korrigiert. Den MCP23017 betreibe ich trotzdem mit 5V, was hoffentlich kein Problem sein sollte, denn der ist ja getrennt, wenn ich das richtig verstehe. Die UDNs wären demnach überflüssig? Aber die geben doch nur knapp
-
Thread
Ausgang zur Steuerung eines Relais kurzschlussfest designen
uC resettet wird? Hättest Du richtig gelesen, dann wüsstest Du, dass ich zum ansteuern einen MCP23017 verwende, der seine Eingänge beim PowerOn/Reset als Eingänge setzt und diese dann bis zu Konfiguration hochohmig sind. Über den PullUp wird ein einschalten vermieden.
#5778517: > Hättest Du richtig gelesen, dann wüsstest Du, dass ich zum ansteuern > einen MCP23017 verwende, der seine Eingänge beim PowerOn/Reset als > Eingänge setzt und diese dann bis zu Konfiguration hochohmig sind. Über > den PullUp wird ein einschalten vermieden. Ich meinte natürlich
-
Thread
I2C-ADC: Meßwert mit zwei statt einem Byte abholen
return retVal; } [/c] Aufruf in main ähnlich wie hier: [c] char pinStatus = 0; mcp23017.readReg(0x12,pinStatus); //read the GPIOA register // pinStatus kommt gefüllt zurück if( (pinStatus & 0b10000000) == 0){ // mach irgendwas... } [/c] Wenn ich das
-
Thread
ATMEGA32U4 Schaltplan
Du solltest Dir *dringend* noch mal die Stromversorgungsanschlüsse der MCP23017 ansehen. So, wie Du sie gezeichnet hast, werden die MCP23017 sehr schnell warm und werden die Funktion verweigern.
Τ. F. schrieb: >> Du solltest Dir dringend noch mal die Stromversorgungsanschlüsse >> der >> MCP23017 ansehen. >> >> So, wie Du sie gezeichnet hast, werden die MCP23017 sehr schnell warm >> und werden die Funktion verweigern. > > Danke, aber verrätst du mir auch noch, wonach ich suchen muss?
-
Thread
Wassertank Füllstandsmessung
Alu-Flachmaterial, bringst die Schwimmerschalter auf nen Arduino (entweder direkt oder via I/O-Expander, zB MCP23017) und die Sache ist gegessen. Schwimmerschalter: https://www.aliexpress.com/item/1pcs-Tank-Pool-Horizontal-Water-Level-Switch-Liquid-Level-Sensor-Liquid-PP-Plastic-Ball-Float-Switch/32817243366.html
-
Thread
Array of struct initialisieren
alten Projekt war jede LED ein Bit im bit-bandind Bereich, da war das easy. Hier hängen sie am MCP 23017 dran. [c] typedef struct { uint8_t wid; uint8_t led[5]; } led_t; /* Wolken und Nebel */ led_t wcond[60] = { 800, { LED_GRN } }, /* Clear */
-
Thread
Entscheidungshilfe für uC bei Gartenbewässerungsprojekt
Einbindung von 1"-OLED-Display via I2C - Einbindung von Drehencoder - Ggf. Port-Expander mit MCP23017 (I2C) - Konnektivität über WLAN oder Ethernet - Kommunikation via MQTT - Stromversorgung via Netzteil - Verwendung von Arduino-Devboards - Realisierung als Arduino-Projekt Datenaustausch erfolgt
-
Thread
Laderegler für gleichzeitiges Laden von Lithium-Akkus mit Solarpanel und Windrad benötigt
Folgende Komponeneten hätte ich: ADC: 74HC595 DAC: 74HC165 Digital-Port-Erweiterung: MCP23017 mit I2C, funktioniert derzeit noch nicht Analog-Port-Erweiterung: 2x ADS1115 Strommesser: 2x ACS712 (1x5A und 1x20A) Spannungs- und Strommesser: 2x INA219 2x INA3221
Komponeneten hätte ich: > ADC: > 74HC595 > > DAC: > 74HC165 > Digital-Port-Erweiterung: > MCP23017 mit I2C, funktioniert derzeit noch nicht > Sehr gut: ADS1115 ist mein Liebling > Analog-Port-Erweiterung: > 2x ADS1115 Damit lässt sich was anfangen, versuche ich es zu verwenden >
-
Artikel
Datei:MCP23017.pdf
Beschreibung einer Adapterplatine zur Nutzung mit MCP23017 und max. zwei uln2803a
-
Thread
Viele Kippschalter (ca. 40) auslesen / Mikrocontroller wake-up
/A nehmen, … > Das sieht doch eigentlich ganz gut aus! Es gibt noch Alternativen, z.B. drei MCP23017. Interruptausgang bei Änderung hätte der auch. Preise und Stromverbrauch unterscheiden sich minimal. Ich weiß nicht, worauf es Dir ankommt. Vielleicht macht auch das PCB-Routing einen Unterswchied
richtig verstehe … Ich fürchte, nicht 100%ig: Alle Vorteile liegen meines Erachtens bei PCF8574/MCP23017 Portexpandern: * Super schnell trotz * minimalem Stromvervbauch bei * wenigen Port-Pins am µC. Die IRQ#-Ausgänge der Portexpander kannst Du alle an den gleichen PCINT Pin change IRQ hängen.
-
Thread
LED- Schaltung
Ich meinte eher so etwas: https://www.microchip.com/wwwproducts/en/MCP23017
-
Thread
MCP23017 und Arduino Nano
Ich habe momentan 7 MCP23017 an einem Arduino Nano (für einen RGB-LED-Würfel).Das Problem was ich nun habe ist, dass anfangs bei den ersten Tests alles lief. Nun können zwei MCP23017 nicht mehr angesprochen werden. Auf einem
Name schrieb im Beitrag #5673024: > Ich habe momentan 7 MCP23017 an einem Arduino Nano (für einen > RGB-LED-Würfel).Das Problem was ich nun habe ist, dass anfangs bei den > ersten Tests alles lief. Nun können zwei MCP23017 nicht mehr > angesprochen werden. Auf
-
Thread
Arduino MCP23017.h MCP23017.cpp
with a MCP23017 at the specified address. */ MCP23017(uint8_t address); ~MCP23017(); #ifdef _DEBUG void debug(); #endif[/c] MCP23017.cpp [c] include "MCP23017.h" MCP23017::MCP23017(uint8_t address) { _deviceAddr = address; } MCP23017::~MCP23017() {} void MCP23017::init() [/c]
-
Thread
ESP8266 - GPIO Pins erweitern
Nee, ich finde den nicht gut! Die Aufschrift, schwer zu lesen. Und überhaupt! Ich mag den MCP23017 viel lieber.
Hallo, Arduino Fanboy D. schrieb im Beitrag #5606981: > Ich mag den MCP23017 viel lieber. mir ist der MCP23S17 noch lieber, 10MHz SPI-Clock ist etwas schneller und die Adressierung für max. 8 Stück kaskadiert geht auch mit SPI ohne zusätzliche IOs. Gruß aus Berlin