mikrocontroller.net

Forum: FPGA, VHDL & Co. IIC mit MicroBlaze


Autor: TechInfo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ist es möglich einen IIC-Bus mit dem MicroBlaze-Softcore anzusteuern? 
Und wenn ja, welche Bedingungen müssen dafür geschaffen werden?

Gruß

TechInfo

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@TechInfo

>ist es möglich einen IIC-Bus mit dem MicroBlaze-Softcore anzusteuern?

Sicher, das kann so ziemlich jeder uC.

>Und wenn ja, welche Bedingungen müssen dafür geschaffen werden?

Keine nennenswerten. Du brauchst ein FPGA + Microblaze Developer Kit.

MFG
Falk

Autor: TechInfo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Dir. Also man braucht kein zusätzliches IP? Im Datenblatt vom 
MicroBlaze steht nichts von einer I2C-Unterstützung. Da es I2C-Cores von 
Xilinx und anderen gibt, dachte ich so einen müßte man noch einfügen.

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sehe ich genauso, nach meiner Erfahrung ist der uB ein 
Mikrocontroller-Core, der keinen IIC im Kern hat. Wahrscheinlich nicht 
nur wegen der Größe sondern auch wegen den Rechten an IIC von Philips. 
IM EDK sind einige anderen Cores vorhanden, die man an den Bus des uB 
klemmt. Möglicherweise ist da auch schon ein IIC Modul dabei, das Du 
einfach in das Design klickst. Oder du ziehst Dir einen IIC aus dem 
Internet, z.B. bei www.opencores.org liegt einer.

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im EDK 8.2 ist der I2C Core jedoch gesperrt, das heisst man muß Ihn 
bezahlen.
Könnte auch teuer werden.

Grüße
Klaus

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für die meisten Anwendung reicht ein rein softwarebasierter I2C Treiber. 
Dann ist die CPU zwar lange Zeit mit Warten beschäftigt, aber was solls.

MFG
Falk

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Für die meisten Anwendung reicht ein rein softwarebasierter I2C Treiber.

Sollte man im FPGA nicht machen.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@FPGAküchle

>>Für die meisten Anwendung reicht ein rein softwarebasierter I2C Treiber.
>Sollte man im FPGA nicht machen.

Warum? Wegen des Speicherbedarfs?

MfG
Falk

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
falls möglich mache ich persönlich Kommunikation, wie II2 in Hardware. 
Wegen definierten Antwortzeiten und dem geringeren Risko das daten halb 
im Bus stecken bleiben. Nicht das die Verbindung irgendwo stehenbleibt 
und schwer neu aufsetzbar ist. Das ist einem extra Hardware modul schön 
gekapselt, da muss ich micht nicht mit zu hoher IRQ Last oder Speicher 
voll problemem rumschlagen. Und natürlich spare ich mir den 
Programmcode. Wie bemerkt ist der programmspeicher für den uB 
beschränkt. Also falls man die Hardware hat (wie im FPGA) sollte man das 
in diese verlagern. Ist robuster hate geringere Latenz, und der uc hat 
mehr zeit seine eigetliche Arbeit zu tun.

Autor: TechInfo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antworten.

Wie sieht es denn mit einer RS232-Ansteuerung beim MicroBlaze aus? 
Braucht man da auch einen zusätzlichen Core?

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mE ist sowas im EDK. Ist sehr beliebt, all uB Implementierungen die ich 
kenne haben RS232. Kann man easy per Seriallen kabel und terminalemu mit 
dem Prozessorkerlchen kommunizieren.

Autor: TechInfo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann wäre das wohl meine erste Wahl.

Hast du noch mehr Infos zur Terminal-Emulation? Wie baut man sowas ein?

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: TechInfo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Werde jetzt aus Board-Design-Gründen doch kein RS232 einsetzen können. 
Also werde ich mich wohl an einen I2C-Treiber ranwagen. Hat da jemand 
zusätzliche Infos?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.