www.mikrocontroller.net

Forum: Compiler & IDEs ISP und I²C am Tiny2313


Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute,

bei meinem Projekt möchte ich die I²C Schnittstelle des Tiny nutzen und
das ganze über ISP programmieren. Nun liegt aber der I²C Bus mit auf den
ISP Pins (alles auf den USI Pins). Dadurch habe ich beim proggen 4,7k
PullUps auf MOSI und SCK und natürlich das EEPROM am Bus.

Kann das überhaupt funktionieren und wie groß ist das Risiko das ich
Proc und/oder EEPROM verbrate, wenn ich es einfach mal probiere?

Da ich auch einen seriellen ADC einsetze, könnte ich auch den an die
Hardware USI hängen und das I²C in Software realisieren, ob das besser
wäre?


Danke

Dirk

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falls es für jemanden von Interesse ist:

Das ISP wird durch die PullUps und das EEPROM nicht gestört. Ob das
EEPROM vom ISP beschädigt wird kann ich noch nicht sagen, weil es nicht
so recht mit dem USI klappen will...

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Update 2:

Von der Verdrahtung her gibt es keine Probleme die Teile so zusammen zu
löten. Alles was passiert ist, dass der I2C Bus nicht funktioniert,
solange ein Programmiergerät angeschlossen ist.

I²C funktioniert jetzt auch, aber nicht per USI! Die
Hardware-Schnittstelle habe ich nicht zum laufen bekommen und bin auf
die Lib von P. Fleury ausgewichen.


Also bleibt eine Frage:

Wer hat einen funktionierenden Code für TWI über das USI des
Tiny2313!?


Grüße

Dirk

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn das USI das gleiche, wie beim Tiny26 ist:

Es ist quasi zu nichts richtig zu gebrauchen, weder als I2C noch als
SPI.

Single-Master I2C ist in Software viel einfacher.
Für Multi-Master oder Slave I2C nimmt man den Mega8.


Peter

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das USI wird im Tiny26, Tiny2313 und mega169 verwendet.

Ich hatte halt gehofft dadurch Platz im Flash zu sparen...

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@peter: Was stört dich am SPI via USI? Ich benutze es für ein Nokia 3310
Display am Tiny2313, ohne Probleme.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@A.K.

es bringt keinerlei Nutzen.
Der Code ist genauso groß, als wenn man es komplett in Software macht.


Peter

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Grösse ja, aber Tempo? Ich möchte mal sehen, wie Du SPI per Software mit
Bitrate Clk/2 realisierst. Bei I2C kein Thema, bei SPI bisweilen schon.

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kenne das Beispiel.
Aber 16 mal "out USICR,r16" hintereinander zu schreiben, ist
irgendwie nicht mein Verständnis von effizienter Programmierung.


Ich wüßte jetzt auch keine Anwendung, wo die SPI-Geschwindigkeit sich
merkbar auf die Gesamtgeschwindigkeit auswirkt.


Wenn man etwas optimieren will, muß man zuerst ermitteln, wieviel der
CPU-Zeit es überhaupt verbraucht.
Es macht z.B. keinen Sinn eine Routine in der Geshwindigkeit zu
verdoppeln, wenn das nur eine Änderung von 1% auf 0,5% CPU-Zeit
bewirkt.
Die frei werdenden 0,5% kann man dann höchstens in der Pfeife rauchen.


Peter

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.