Korrigierte "VirtualWire" Library für Attiny84 / 85

Gast #4171846
Hallo,

da der Autor den Code nicht mehr weiter pflegt pinne ich es hier mal 
rein. In der beliebten VirtualWire ist ein Fehler was den Attiny84 in 
die Botanik schickt. Die Lösung habe ich in irgendeinem Forum tief 
vergraben gefunden und zitiere sie daher hier

Quelle: GPL_v2 Lizenz
http://www.airspayce.com/mikem/arduino/VirtualWire/index.html

In der VitualWire.cpp muss direkt nach dem #include .....

#undef TIMER_VECTOR
#ifdef _AVR_ATtiny85_
# define TIMER_VECTOR TIM0_COMPA_vect
#elif defined(_AVR_ATtiny84_) || defined(_AVR_ATtiny24_) || 
defined(_AVR_ATtiny44_)
# define TIMER_VECTOR  TIM1_COMPA_vect
#else // Assume Arduino Uno (328p or similar)
# define TIMER_VECTOR TIMER1_COMPA_vect
#endif // _AVR_ATtiny85_

später im Code muss dann ca ab zeile 580

// This is the interrupt service routine called when timer1 overflows
// Its job is to output the next bit from the transmitter (every 8 
calls)
// and to call the PLL code if the receiver is enabled
//ISR(SIG_OUTPUT_COMPARE1A)
#if defined (ARDUINO) // Arduino specific

SIGNAL(TIMER_VECTOR)  // FIXED !!!

stehen, da der Autor TIM1_COMPA und TIMER1_COMPA verwechselt hat. Nettes 
Beispiel dafür, dass viele Codes im Netz gar nicht für alle Anwendungen 
getestet wurden.
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 11 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.