SPI mit I2C vernbinden

Gast #1204269
Lesenswert?

Franzosen und Engländer verstehen sich in ihrer Muttersprache auch etwas 
schwer, will sagen sind einfach ganz verschiedene Protokolle.

SDA und SCL kannst Du bei den meisten Controllern auch als normale 
Portpins verwenden, Software dazu, fertig.
Gast #1204279
Lesenswert?

Das meinte ich nicht.
Der SPI hat einen Clock und taktet 8 bzw. 16 Bit in den Eingangsbuffer 
eines SPI-Bausteins. Jetzt müssten diese  Bits paralle in den 
Eingangsbuffer meiner I2C Hardware getaktet werden. Das Protokoll sei 
mal da hingestellt.
Gast #1204300
Lesenswert?

Der SPI-Bus besteht bereits. d.H. ein Microcontroller sendet Daten an 
einen SPI-Baustein.

Diese Daten möchte ich mit einem 2ten Microcontoller(PC) mithören.
Leider hat der keine SPI-Hardeware sondern nur I2C.
Ich würde das /CS des SPI als Trigger verwenden, um zu wissen das Daten 
auf dem SPI-Bus gesendet werden und ab wann sie gültig sind.

Was mir unklar ist, ob die I2C Hardware so verwendet werden kann.
Gast #1204306
Lesenswert?

Nein, oder toastest Du Brötchen mit deinem Mixer?
Für SPI brauchst Du i.d.R. keine spezielle Hardware, wenn Du einen 
Interrupt zur verfügung hast.
Das mithören erfolgt dann einfach über 2 bzw. 3 Port-Pins. Also vergiss 
I2C
Gast #1204318
Lesenswert?

Was mir unklar ist, ob die I2C Hardware so verwendet werden kann.

theoretisch könnte es gehen, aber es wird schwierig werden und mit viel 
fummelei verbunden. du müsstest irgendwie deine hardware dazu bewegen, 
die start/stop conditions, iic-adressbytes,clock-strecthing usw. zu 
ignorieren. am besten, du nimmst normale i/o-leitungen. lass es besser 
sein mit dem iic.
Gast #1204327
Lesenswert?

Wenn der Mixer so ähnlich aussehen würde wie der Toaster..........

Klar so würde ich es auch machen , falls man Zugriff auf Portpins und 
Interupts hat. Hab ich aber nicht.
Was ich habe ist eine I2C Hardware, doch leider kein Echtzeit Zugriff 
auf Portpins.

Darum diese Idee.
Gast #1204341
Lesenswert?

> Was ich habe ist eine I2C Hardware, doch leider kein Echtzeit Zugriff
> auf Portpins.
was issn das für ne hardware? vielleicht kann man sie umkonfigurieren, 
also sda/scl als normale ports betreiben.
Gast #1204498
Lesenswert?

Vielleicht könntest Du einen kleinen uC (z.B. 8 pin PIC oder Attiny) als 
SPI-I2C-Wandler programmieren. Auf der einen Seite SPI rein, auf der 
anderen I2C raus. Die Wandlung dann per Software vornehmen. Als 
Alternative könnte man eventuell auch auf Hardware, z.B: USART 
zurückgreifen.

Gruss
Mike
#1204526
Lesenswert?

Man sollte auch noch beachten, das I2C meist nur bis 400Khz betrieben 
wird,
und der SPI-Bus mal leicht über 40Mhz hoch gehen kann.

Also sollte der Puffer im externen Interface groß genug sein.
In echter Echtzeit wird es aber wohl kaum möglich sein die Daten zu 
lesen,
ohne einen großteil zu verlieren!

DBD
 Olli

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren