mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Simple, timerlose Datenübertrag zum PC mit ATTiny13 und STK 500


Autor: Peter I. (extasic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Der ATTiny hat nun ja leider nur einen einzigen Timer. Den benötige ich 
bereits, und kann ihn deshalb leider nicht für die reguläre UART 
Kommunikation benutzen (dort wird er doch benötigt, oder?)

Trotzdem möchte ich Messdaten vom ATTiny an den Computer senden. 
Möglicherweise kann ich dazu den zweiten RS232 Anschluss vom STK500 
benutzen? Ich benötige nur eine unidirektionale Verbindung vom ATTiny 
zum Computer. Was ist die einfachste bzw. sinnvollste Lösung (neben der, 
einen anderen µC zu benutzen)?

Habt ihr irgendwelche Tipps für mich?

Danke im Voraus!

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter I. wrote:
> Der ATTiny hat nun ja leider nur einen einzigen Timer. Den benötige ich
> bereits, und kann ihn deshalb leider nicht für die reguläre UART
> Kommunikation benutzen (dort wird er doch benötigt, oder?)

Fast immer sind es Anfänger, die denken, daß ein Timer nur eine einzige 
Sache machen kann.
Limitierend ist aber nur die Interruptrate, d.h. wieviel Zyklen zur 
Verfügung stehen.

Aber es geht auch ohne Timer, dann aber nur in Assembler, z.B. in meinem 
Bootloader ist eine Routine.
Dann muß man aber alle Interrupts solange abschalten, sonst stimmen die 
Delays nicht mehr.

ATtiny13 ist aber als UART generell schlecht, da man keinen Quarz 
anschließen kann.
In meinem Bootloader habe ich daher ne Baudratenerkennung zur 
Taktanpassung.


Peter

Autor: Peter I. (extasic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mein Problem ist aber, dass ich, da ich C verwende, nicht sehen kann, 
wieviele "Taktzyklen" in meiner Interruptroutine verstreichen (oder?).

Mir geht es wirklich nur um eine simple Übertragunsroutine um Bytes zu 
verschicken und auf dem Computer irgendwie zu visualisieren, ohne meine 
Timerfunktionen zu verwenden (die glücklicherweise gerade funktionieren 
;) )

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann nimm einen Tiny 2313, pack einen Quarz dran und gut ist. Anfänger 
sollten mit einfachen Dingen ANFANGEN . . .

Autor: Justus Skorps (jussa)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter I. wrote:
> Mein Problem ist aber, dass ich, da ich C verwende, nicht sehen kann,
> wieviele "Taktzyklen" in meiner Interruptroutine verstreichen (oder?).
>

schau dir den erstellten assembler code an und schau im Datenblatt nach, 
wie lange jeder Befehl braucht...

Autor: Dooferuhu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Synchrone, serielle Datenübertragung mit 2 Pins.

Autor: Peter I. (extasic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie genau meinst Du das?

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.