Forum: Mikrocontroller und Digitale Elektronik I2C-Bus /TWI


von Blue -. (bluesky)


Lesenswert?

Hallo,
ich muß für die Schule ein Projekt machen, es handeltsich um ein 
Elektroauto.
Ich soll ein I2C_Bus aufbauen, über ein Mainprozessor soll ein I2C-Bus 
aufgebaut werden an dem dan ein Funkmodul ein Display ist und folgende 
Bus Knoten ein für die Auswertung der Sensorsignale ein für die 
Energieversorgung und ein für die Ansteuerung der Antriebsmotoren und 
den Motor für die Lenkung.
Ich habe mir schon den Controller von Atmel AT89c51ID2 rausgesucht da er 
einen internen Bus hat.
Nun meine frage wie mache ich das mit den verschiedenden Knoten ich weiß 
das der Prozesor mit eim Master arbeiten muß und der Knoten zum 
ansteuern der Motoren auch ein Master sein muß da er die Sensorsignale 
empfangen muß und auch zurück senden muß wenn das Auto nicht mehr weiter 
fahren kann. Benötige ich für den aufbau auch noch Fifo's.

Ich würd mich freuen wenn mir da einer weiter helfen kann, da ich mich 
nicht so mit Microcontroller auskenne.

Gruß Bianca

Ps. Notfalls könnt Ihr mir auch ne E-Mail senden.

von Matthias (Gast)


Lesenswert?

...sucht da er einen internen Bus hat....

Welcher Controller hat denn keinen internen Bus?

Sollen die verschiedenen Knoten (Sp.vers. Lenkung, Antrieb..) alle über 
I2C miteinander verbunden sein? Oder wie meinst du das?

von Blue -. (bluesky)


Lesenswert?

Ja die verschiedenen Knoten sollen alle über einen Bus verbunden sein.
Da ich nur für den Controller mit der Bus-Steuerung zuständig bin und 
andere Gruppen für die Lenkung, Antrieb und Spannungsversorgung 
zuständig sind. Es soll halt alles hinterher miteinander zusammen 
geschaltet werden.
Soweit ich weiß gibt es schon einige Controller die Hardware Seitig 
keinen I2C-Bus haben.

von Rahul, der Trollige (Gast)


Lesenswert?

>Soweit ich weiß gibt es schon einige Controller die Hardware Seitig
>keinen I2C-Bus haben.

Das ist richtig. Das ist dann aber kein interner, sondern ein 
integrierter I²C-Bus bzw. eine integrierte I²C-Schnittstelle.

von Jörg B. (manos)


Lesenswert?

Ist 8051 Voraussetzung oder willkürlich gewählt? Dass der kein PDIP ist 
ist ja wahrscheinlich bekannt (oder gewollt).

Wie viel I/O's benötigt der Zentrale Prozessor/was werden seine Aufgaben 
sein außer I2C? Muss der µC Analogwerte auswerten können oder machen das 
andere Knoten (Module oder Baugruppen würde mir als Bezeichnung besser 
gefallen)?

Edit: Die Standard-Empfehlung geht hier meist in Richtung Mega8 - sofern 
er reicht.

von Blue -. (bluesky)


Lesenswert?

Also den Atmel Baustein habe ich willkürlich gewählt da er einen 
integrierten I2C-Bus hat und ich so die Bus-Controller an den Knoten 
sparen.
Die ich sonst so gemacht hätte:


            _____!__________^__
                   v          !  !
                 Fifo       Fifo !
                   !          !  !
             ms----!----------!  !
              !    !             !
              !---I2C            !
           ______!_____________!
                   !
                  I2C
Allso über die I/0 habe ich mir noch keine Gedanken gemacht und am 
Mikrocontroller sollen später noch ein Funkmodul und ein Display dran 
kommen.
Zu den Knoten kann ich nicht mehr sagen weil die Schulen selber noch am 
planen sind. Mir würde da schon eine Grundschaltung reichen die ich 
nehmen kann.
Aber wie gesagt für mich ist das alles Neuland.

von Jörg B. (manos)


Lesenswert?

Das Diagramm macht mir irgendwie Kopfzerbrechen... was machst Du mit den 
Fifo's und wofür steht das ms (Millisekunden werden es ja wohl nicht 
sein... oder)?

Der Mega8 hat übrigens auch eine I2C-Schnittstelle. Wie kommuniziert das 
Funkmodul (Seriell, SPI oder I2C) und wie das Display (I2C oder 
4/8Bit-Mode)?

Bist Du auch für die µC's auf den anderen "Knoten" zuständig oder nur 
für den "Mainprozessor"?

von Matthias (Gast)


Lesenswert?

Aber wie gesagt für mich ist das alles Neuland...

Will dir ja nicht zu nahe treten, aber ich glaube nicht, dass sowas ein 
geeigneter Einstieg ist, zumal viele dranrumbasteln und wahrsch keiner 
richtig ahnung hat...

Aber will dir nicht den Mut nehmen..

Zähle mal auf, was an "deinen" controller noch alles an Sensoren/Aktoren 
dran soll, außer dem I2C bus...

von bluesky (Gast)


Lesenswert?

An Jörg:
Mein Lehrer hat gesagt ich muß Fifo's einbauen bin aber noch am lesen 
für was. ms=µC. Funkmodul und Display sollen auch über den I2C Bus 
gesteuert werden. Bin nur für den Mainprozessor zuständig.

Zähle mal auf...

Also die Sensoren und Motoren haben eine eigene Elektronik die dann über 
den Mainprozessor kommunizieren sollen. Es soll halt nur alles über den 
Bus ausgetauscht werden.





von Jörg B. (manos)


Lesenswert?

Nun, wenn alle Kommunikation (zum Display, Funkmodul etc.) über I2C 
laufen soll dann könnte auch schon ein 8Pin µC als Hauptprozessor 
reichen (z.B. Tiny85) ^^

Fifo kenne ich ansonsten nur in Bezug auf die serielle Schnittstelle bei 
der die Daten einfach erstmal einlaufen. Da I2C aber immer mit Quittung 
arbeitet bin ich mit nicht sicher ob man das darauf anwenden kann.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.