www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bascom Hardware I2C-Slave


Autor: peter conrad (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,


ich bin noch ziemlicher Anfänger in Sachen MC und AVR.  In BASCOM-Basic
komme ich schon einigermassen klar. In ASM schaffe ich es allerdings
gerademal 'ne LED blinken zu lassen. Aus diesem Grunde möchte ich
meine beiden Mega8 mit Hilfe von Bascom überreden miteinander zu
kommunizieren.
Bei meiner Suche hier im Forum und eifriger Googelei fand ich
eigentlich nichts handfestes ausser der Bascom Softwareimplementierung
eines I²C-Slaves. Fast überall stand dann noch geschrieben
(sinngemäss):das lohnt nur für "kleine" AVR's denn die anderen haben
ja Hardware-TWI. Nur, darauf wie man dies als I²C-Slave nutzt wurde NIE
weiter angerissen.
Gibt es da irgendwo im Inet 'ne Library oder ein Programmbeispiel das
ich bisher übersehen habe? Ich bin für jeden Tip dankbar.

Meine Überlegungen zum Ablauf wären folgende:
-Warten auf Byte vom Master
-Überprüfen ob für diesen Slave relevant
-Daten auswerten
Ist das ansatzweise richtig?

MFG
Peter

Autor: ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin,

schon mal bei http://www.roboternetz.de versucht?
da sind viele die mit bascom basteln...

Autor: Einer der Bernds (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> -Warten auf Byte vom Master
> -Überprüfen ob für diesen Slave relevant
> -Daten auswerten
> Ist das ansatzweise richtig?

Ja.

Autor: Messfux (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Serielle Schnittstelle, müßte der Mega 8 haben?.

Gruß

Messfux

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
I2C-Slave in Software ist Nonsens, schafft der AVR nicht, zumindest
nicht bei 100kHz.

Man braucht unbedingt das Hardware-TWI !

Und da sind doch die Ablaufdiagramme im Datenblatt wunderschön
beschrieben (Slave-Receiver, Slave-Transmitter), was will man mehr.

Einfach im TWI-Interrupt das Statusbyte auslesen und genau nach
Ablaufdiagramm handeln.


Peter

Autor: Kai Ludwig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen.

!!! Nix "nonsense" !!!

Der AT90S2313 mit 10 MHz Takt schafft 50 KHz SCL sauber und kann dabei
parallel und OHNE Jitter Servos steuern, PWM machen oder Spannungen
messen.

=> http://www.talentraspel.de/portal/index.php?id=219

Wenn man nun einfach den Tiny2313 mit 20MHz nimmt, klappt es auch mit
20 MHz.


Viel Spass mit meiner Software,
Kai Ludwig.

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]
  • [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.