-
Thread
ATmega328/Arduino und weiter?
Martin schrieb im Beitrag #7503848: > ch verwende bereits einen portexpander, einen MCP23017 über den ich > drei StausLED ansteuere. > Ich habe keine ahnung ob ich darüber auch ein signal des anemometers > (ein kleiner motor, der beim drehen eine spannung erzeugt) abfragen > kann,
signal vom regensensor, der über eine komparatorschaltung > arbeitet. > mein verständnis & wissen zum MCP23017 ist bisher: spannung EIN, > spannung AUS. Der MCP23017 hat 16 GPIOs, da geht also deutlich mehr als 3 LEDs. Jeden der 16 Pins kann man als digitalen Ein- oder Ausgang konfigurieren - ganz
-
Thread
ISP / I2C Relay Driver IC wird gesucht, (Alternative zu PCF8574 + ULN2803A.)
Der MCP23017 ist ein I2C IO-Expander mit 16 Ausgängen. Damit hättest du nur 3 ICs. Treiber wie den ULN2803 wirst du sowieso brauchen, um die nötige Leistung sicherzustellen. Gegenüber dem PCF8574 ist allerdings beim MCP23017 die Software zum ansteuern aufwendiger. Mit PCF8574 bräuchtest du übrigens auch noch Inverter (74HC540), da sie mit Open Drain und invertierter Logik arbeiten.
-
Thread
12 Volt 0,6 Ampere mit Raspberry und Mosfet schalten
Michael T. schrieb im Beitrag #4179026: > Kann die so funktionieren? Nein! Der MCP23017 möchte auch noch eine Verbindung der Versorgungsspannung zu GND. Der MCP23017 möchte noch einen 100nF Kondensator ganz nahe an der Versorgung. Eine Freilaufdiode direkt am Relais feht!
-
Thread
MCP23008 Taster entprellen
den interrupt Ausgang des MCP23008 genutzt, um diesen als "Taster" an die Enptrell-routine zu übergeben (Der Interrupt Ausgang wird gesetzt, wenn am MCP ein Eingang gesetzt wurde und bleibt solange, bis der MCP abgefragt wurde).
Ich nutze bei einem Projekt den MCP23017, ist ja im Prinzip das selbe, nur in 16 Bit. Zwei davon werden im 10ms Raster abgefragt. Das geht ohne Probleme. An der Zeit kanns nicht liegen. Oder läuft dein uC auf einem extrem niedrigen Takt
-
Thread
Gibt es so einen Chip?
Meter. Gibt es eine Art Chip mit z.b. 10-20 I/O > wo das Bussystem schon integriert ist? Der MCP23017 hat 16 IOs - diese können wahlweise als Eingänge oder Ausgänge konfiguriert werden. Als Bussystem hat er I²C integriert (auch I2C/TWI o. ä. genannt). D. h. bei 20-30 Signalen bräuchtest du auf der einen Seite zwei MCP23017 als Eingänge und auf der anderen Seite zwei als Ausgänge. Dazu bräuchtest du einen µC (oder einen Arduino, Raspberry PI oder was du sonst hast oder magst), der die Kommunikation über den I2C-Bus
-
Thread
24V Schalter an 5V Mikrocontroller
dann in etwa so aus? Um die Eingänge meines Mikrocontrollers zu erweitern würde ich gerne eienen MCP23017 IO Port Extender verwenden. Dieser hätte bereits interne 100k Pull Up Wiederstände und würde deswegen gut passen. Ist der MCP23017 ansonsten auch gut geeignet für mein Vorhaben? (wegen der Störspannungen
-
Thread
MCP23S17 (RPi) per Python schalten
fertig: http://elinux.org/RPi_SPI Es gibt sogar im Linuxkernel einen Treiber für den Expander: > * MCP23S08 SPI/I2C GPIO gpio expander driver > * > * The inputs and outputs of the mcp23s08, mcp23s17, mcp23008 and mcp23017 are > * supported. https://github.com/torvalds/linux/blob/master/drivers/gpio/gpio-mcp23s08.c (allerdings weis ich nicht, wie man den benutzt..) [EDIT] Es gibt auch eine fertige Python-Bibliothek: http://wiringpi.com/extensions/spi-mcp23s08-mcp23s17/
-
Thread
Vorschläge für ein ATXMega128A1 Entwicklungsboard
Stiftleiste - Alle nicht belegten I/O Pins auf Stiftleisten ausgeführt - Ein bis zwei I/O Expander (MCP23017) - 2 bis 4 LED's und Taster - Ein Port über Darlington Stufe, +5Volt sicher - +3.3Volt Spannungsversorgung, max. 500mA über USB und bis max. 2A über externe Spannnungsquelle - +3.7Volt Li-Ion
USB-Geräteklassen zu implementieren, als eine serielle Schnittstelle. > - Ein bis zwei I/O Expander (MCP23017) Würde ich bei einem µC mit so vielen Pins nicht standardmäßig vorsehen. Wer wirklich mehr braucht, kann die Extender doch auch extern anschließen.
-
Thread
Porterweiterung
Chips gibts auch als 20Bit Variante und laufen unter dem namen MCP23016(IIC),MCP23S17(SPI),MCP23017. http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=11034&mid=11&lang=en&pageId=79 also ich muss sagen, das Bauteil gefällt mir. Es ist fast so einfach
@Schoaschi: Wo bekomme ich in Deutschland den MCP23008 bzw. MCP23016/17? mfg AVRWalli
-
Thread
STM32F103 I2C HAL_BUSY
444431. - STM32F103C8T6 (bluepill) - STMcubeMX mit HAL - I2C in Master-Mode zur Ansteuerung eines MCP23017 (1K2 pullups) Derzeit versuche ich lediglich nach der Initialisierung des I2C1 ein [c]HAL_I2C_Master_Transmit(&hi2c1, nDevAddress, pData, 2, 100);[/c] Der MCP23017 ist nicht angeschlossen
-
Thread
ESP8266 -> shelly3em Programmierhilfe?
wenige Ausgänge hat. Dann klemme ich mir meist einen Atmel/Arduino als I2C Slave da dran. Oder einen MCP23017. Oder, oder ... Ein Tiny85 hat 6 IO Pins. Geht also! Auch UART wäre machbar.
Ausgänge hat. > Dann klemme ich mir meist einen Atmel/Arduino als I2C Slave da dran. > Oder einen MCP23017. Oder, oder ... > > Ein Tiny85 hat 6 IO Pins. > Geht also! > > Auch UART wäre machbar. Ich will den Reset nicht gebrauchen. Vlt teste ich's erst mal mit der Seriellen und nur 3 OUTPUT
-
Thread
Elektroheizung automatisieren
es dann die ganzen Port Expander über SPI/I2C? Digitale eingänge erwünscht? 16 port i2C Expander MCP23017 (ca 1,10€)..mehr Ausgänge? auch MCP23017 über I2C dazu 8 Port Relais-Board..Mehrere Temp-Fühler? kein Thema! 1-Wire DS18B20 Temp Sensoren!! (2€)..Analoge 0-10V ein/ausgänge...gibt dafür auch jeweils
-
Thread
I2C Unterschied einfacher LCD
gebunden. Noch eine Option: statt 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
Maxim B. schrieb im Beitrag #5966790: > Lieber MCP23008, PCF8574 kann nur 100 kbit. :-)) Mein MCP23S17 steuert ein 128x64 GLCD mit 8MHz SPI clock vom BluePill aus befeuert. Bis auf das E alle LCD IOs am MCP, Updatezeit komplettes LCD < 7ms.
-
Thread
Treiber 100mA mit Tri-State einzeln Steuerbar gesucht
nicht 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
-
Thread
keinen Bock auf level-shifting
@Stefan: MCP23017 sieht gut aus. Probiere ich. Ist sogar 16bit. Danke
Helge S. schrieb im Beitrag #7037374: > @Stefan: MCP23017 sieht gut aus. Probiere ich. Ist sogar 16bit. > Danke Ist nicht verfügbar. Musst dich bei TI und NXP umsehen.
-
Thread
[V] PIC Mikrocontroller-Lehrsystem u. Einzelplatinen
21,55€) * LC-Display 4x40 (~45€) * LM75 I2C Platine (17,85€) * 2x DS1621 I2C Platine (17,85€) * MCP23017 I2C Platine (23,50€) * LED Punktmatrix 5x7 (unbekannt, Schätzung, 20€) * 7-Segment Platine (unbekannt, Schätzung, 5€) * MCP23017 I2C Platine (23,50€) * PCF8591 I2C Platine (23,50€) * AT45DB011
-
Thread
i2c i/o exp. mcp23016 "spinnt"
Ich hab gesehen das Microchip den inzwischen auch abgekündigt hat. Kennt jemand den Grund ? Der MCP braucht auch einen eigenen RC-Oszillator ist das in Wirklichkeit vielleicht ein PIC (Pinout könnte passen...) ausserdem "hält" der MCP den Takt fest wenn er arbeitet, wenn ich das im Datenblatt richtig
Also, ich denke der aktuelle Baustein wird der MCP23017 sein. Am I2C-Bus ist es dem Slave möglich, den Takt zu verzögern, wenn vom Slave gelesen wird. Das muß der Master aber wissen und berücksichtigen.
-
Thread
Ausgang zur Steuerung eines Relais kurzschlussfest designen
der 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.
Beitrag #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
raspberry pi uart variable
rein kopiert) Welchen Fehler mache ich? Danke, Matze [c] #include "wiringPi.h" #include "mcp23017.h" #include "lcd.h" #include "wiringSerial.h" int i2c_adress = 0x20; int i; int lcd; int uart; int *uart_pointer2; uint8_t *uart_pointer; uint8_t cnt; int uart_read; int main (void) { mcp23017Setup (pin_base, i2c_adress); lcd = lcdInit(2,16,4,RS,EN,DB4,DB5,DB6,DB7,0,0,0,0); lcdHome(lcd); lcdClear(lcd); cnt = 1; for (i=0;i<16;i++){ pinMode(pin_base + i, OUTPUT
-
Thread
Mehrfach Optokoppler in möglichst kompakter Bauform gesucht
überflüssig zu sein. Nachdem ich das nun noch mal überdacht habe, sieht das Konzept nun so aus: Ein MCP23017 soll acht Ausgänge (P-Mosfets) schalten. Diese sollen galvanisch voneinander getrennt sein. Dazu würde ich nun beispielsweise den LTV847 https://www.reichelt.de/LTV-847/3/index.html?&ACTION=3&LA
scheint in der Tat überflüssig zu > sein. Aha. Frank S. schrieb im Beitrag #4627384: > Ein MCP23017 soll acht Ausgänge (P-Mosfets) schalten. Scheinbar also deutlich mehr strom als 20mA. Welche Spannung ist denn zu isolieren für deine galvanische Trennung ? Wie wäre denn ein AQS221FR2S
-
Thread
Fehler im Code?
Hallo, ich hatte die Tage schon mal wegen Interruptproblemen beim MCP23017 gefragt, aber keine antworten erhalten, daher habe ich mich nochmal hingesetzt und den code auf das m.e. wesentliche reduziert: [c]#include <Wire.h> #define Mcp_Reg_IODIRA 0x00 //
); inputStateB = readiicbyte(mcp, Mcp_Reg_INTCAPB); inputStateA = readiicbyte(mcp, Mcp_Reg_GPIOA); inputStateB = readiicbyte(mcp, Mcp_Reg_GPIOB); inputStateA = readiicbyte(mcp, Mcp_Reg_OLLATA); inputStateB = readiicbyte
-
Thread
Heimautomation mit Raspberry PI - Einige Fragen zur Schaltung (Strommessung, Funk-Sensoren etc.)
) * Echtzeituhr (Bereits Erledigt) * IO-Erweiterung: Taster, Reed-Kontakte, 2 Status-LEDs über MCP23017 via i2c (Wie anschließen?) * Temperatur- und Luftfeuchte-Sensor * Lichtsensor (Ist es denn auch wirklich Dunkel und soll ich das Licht anmachen?) * Bewegungsmelder am MCP23... (Gibt schaltkontakt
für Schalterdosen (433MHz) * Ansteuerung der Schalter direkt am GPIO des PIs * Ansteuerung des MCP23017 (Denke bekomme ich heute fertig) Folgende Fragen tun sich mir nun auf, da ich eher aus dem Software-Bereich als aus der Hardware komme: Bevor ich was kaputt mache frage ich bei folgenden Themen
-
Thread
hd44780 LCD, Gpio, i2c, lib, Funktionenkonflickt
die Teilaufgaben. Zb. das SainsMart RGB-LCD-Keypad hat ja ein normales hd44780 display und einen MCP23017 I2C Gpio. So besteht die Hardware aus mehreren Objekten die alle nur genau ihren Teil beitragen und direkt miteinander kommunizieren. Dabei weiss das MCP23017 Objekt nicht, was es steuert. Und
-
Thread
Liste von I2C Bausteinen
Temp-Sensor :DS1621 UKW-Stereo-Radio :TEA5767 Doch es gibt noch viele andere interessante Bausteine wie MCP23017 :16Bit IO-Expander mit Interruptfähigkeit 24AA64 :64K-Bit EEPROM Wenn man nach einer Liste der I2C-Bausteine sucht, findet man Listen mit eher wenig alten Chips. In denen meine Chips schonmal
DS1621 > UKW-Stereo-Radio :TEA5767 > > Doch es gibt noch viele andere interessante Bausteine wie > MCP23017 :16Bit IO-Expander mit Interruptfähigkeit > 24AA64 :64K-Bit EEPROM > > Wenn man nach einer Liste der I2C-Bausteine sucht, findet man Listen mit > eher wenig alten Chips. > In denen meine
-
Thread
Fragen zu ULN2803A
Hallo, Ich habe einen MCP23017 welcher mir 2x ULN2803A schalten soll... zwischen dem MCP und dem ULN würde ich gerne für jeden Ausgang eine LED parallel schalten, welche mir den Status anzeigt. Nur weiß ich leider nicht ob
Der ULN kommt mit etwa 2mA aus. Die 25mA des MCP sind aber maximum, also nicht ausreizen. Das Eltako braucht 5-6W Steuerleistung.
-
Thread
[V] verschiedene ICs
Comperator (8 SOIC) 1x LM317KCS Linearregler (1,5A) 2x LTC01CCS5 OP-Amplifier (TSOT23-5) 2x MCP23017-E/SP 12C Expander (https://www.conrad.de/de/p/microchip-technology-mcp23017-e-sp-schnittstellen-ic-e-a-erweiterungen-por-i-c-1-7-mhz-spdip-28-651440.html?insert_kz=VQ&hk=SEM&WT.mc_id=google_pla
-
Thread
Prüfplatine für 400++ I/Os
sowas wie PCA9698: 40 Tri-State IOs pro Tschipp, 64 mögliche Adressen (theoretisch 2560 IOs). Die MCP23017 von oben können nur 8 Adressen zu je 16 IOs (i.e. 128 IOs). Für mehr brauchts dann mehr I2C-Busse oder -Multiplexer. Wie auch die anderen schon darauf hingewiesen haben brauchts aber so oder
sowas wie PCA9698: 40 Tri-State IOs pro > Tschipp, 64 mögliche Adressen (theoretisch 2560 IOs). Die MCP23017 von > oben können nur 8 Adressen zu je 16 IOs (i.e. 128 IOs). beides nicht lieferbar
-
Thread
Benötige "Portbausteine" (8255)
Inzwischen gibt es auch "intelligente" Schieberegister von Microchip: MCP23008 (18Pin, 8Bit) und MCP23017 (28Pin, 16Bit) mit I2C Anschluss und MCP23S008 bzw MCP23S017 mit SPI Anschluss.
-
Thread
MSP430 I2C Ansteuerung - Veratändnis Probleme
auseinandergesetzt und entstanden ist der Code, den ich im Anhang angehängt habe. Angesteuert wird wieder der MCP23017, der mit dem Atmega328P ohne Probleme läuft. Folgende Probleme habe ich bisher erkennen aber nicht lösen können. 1) Ich habe keinen externen Takt. Ich weiß nicht und konnte bisher nicht herausfinden
UCB0CTL1 |= UCTXSTP; }[/Code] Aufgerufen wird sie in der Main() so: z.B. für die Port Richtungen - MCP23017_DDRA(0x00); Und diese Funktion enthält das hier: I2C_Send_Data(IODIRA); I2C_Send_Data(DDR_A);
-
Thread
MCP23S18 I/O Expander
letzten 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
Andersrum: Der Highpegel vom BluePill langt dem MCP nicht als Eins wenn er an fetten 5V hängt.
-
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
überein 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.
-
Thread
I²C-Expander MCP23008 verliert ständig seine ID
vom PCA und steuern die Beleuchtung. Die blaue Seite ist die, auf die man von oben draufguckt. Der MCP ist gespiegelt, weil er auf der anderen Seite sitzt!
Ich habe 2 x MCP23017 auf einem Shield (kostet 12 GBP als Bausatz von ModMyPi-Shop in UK), das auf dem Raspi sitzt und mit 3 V betrieben wird (120V???) . Es gab keinerlei (elektrische) Probleme, die MCP's erscheinen
-
Thread
Problem MCP23S17 und avr-gcc
mcp_write(0, MCP_IODIRB, 0xff); // GPIOB Eingang mcp_write(0, MCP_GPPUA, 0xff); // PullUp aktiv // MCP23S17 #2 mcp_write(1, MCP_IOCONA, 0x28); // default: BANK = 0, MCP_SEQOP = 1, MCP_HAEN =
Hardware Adresse, welche einstellbar über A0 - A2 ist, genutzt werden. Deshalb CS zusammen. [c] mcp_write(1, MCP_IOCONA, 0x28); // default: BANK = 0, MCP_SEQOP = 1, MCP_HAEN = 1[/c] [quote] bit 3 HAEN: Hardware Address Enable bit (MCP23S17 only). Address pins are always enabled on MCP23017. 1
-
Thread
8Bit Datenleitung auf 2 Ports splitten, für LCD, bidirektional
mit 100 Pins. Nur halt nicht im DIL-Gehäuse. Alternative: I2C Port Extender wie z.B. Microchip MCP23017. Dann hast Du 16 weitere Pins. fchk
Pins. Nur halt nicht im DIL-Gehäuse. > > > > Alternative: I2C Port Extender wie z.B. Microchip MCP23017. Dann hast Du > > 16 weitere Pins. > > > > fchk Danke, I2C Erweiterung mit 16 Ausgängen wäre meine Lösung als nächstes. Jetzt kenn ich zumindest die Bausteinbezeichnung für 16 Bit
-
Thread
STM32: I2C mit DMA und HAL
Hi, hab es gerade mal mit 'nem MCP23017 durchgespielt. Hast du innerhalb CubeMX den "I2Cx global Interrupt..." unter "NVIC Settings" für die entsprechende I2C Schnittstelle aktiviert? Der muss aktiviert sein damit der Zugriff auch
aktiviert hatte. (Siehe Anhang) Hab mal den Quelltext der main.c meines Versuches (STM32F3 Discovery + MCP23017) auf http://pastebin.com/7GszET42 bereitgestellt. Gruß, Sebastian
-
Thread
64 Eingänge für Arduino
zum PCF8574 für 8x passt PCF8574a ebenfalls 8x 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
Attiny 841 mit SPI ein Display ansteuern
Morgen Es gibt ja vom gleichen Hersteller den MCP23 S 17 und den MCP 23017. Einer ist für SPI und der andere für I2C Bus. Wenn ich die Pins vergleiche gibt es viele übereinstimmungen. Das bezieht sich ja auch auf die Register. Sehe ich das richtig?
Signal vom Master an den Slave) SCK Clocksignal (fuer die Daten) CS = Chip Select (wenn mehrere MCP am SPI hängen wird per CS ausgewählt, wer die Daten empfangen/liefern soll). A0 .. A2 = Adresseinstellung MCP - damit kann man bis zu 8 MCP23S17 mit nur einem CS haben. Die Register sind die gleichen
-
Thread
Hausautomatisierung ohne Funk | Einsteigerfragen | Grundsätzliches
über dessen GPIO, I2C, SPI, sonstwas-Ports deine eltakos mit 12Volt zu steuern. Bei mir sind es 2x MCP23017 mit ULN2003. Des weiteren Kram hab ich gleich mit an I2C gehangen. (weitere 2x MCP23017, und ADCs für Wetter, Licht, PIR...). Wenn der Selbatbau der Raspi HW dir nicht liegt, schua einfach, was