38khz erzeugen mit Attiny2313

Gast #1175551
Lesenswert?
• ▲
▼
Hi,

benötige eure Hilfe um einen Pin zu Toggeln da ich für einen IR sender 
eine Trägerfrequenz von 38kHz erzeugen muss. Mein Problem ist aber das 
ich aus dem Datenblatt nicht schlau werde. Dabei nutze ich einen Attiny 
2313 @ 16MHz Tackt. Ich weiss das ich einen der Timer im CTC Modus dazu 
nutzen kann , blicke aber nicht durch wie ich die Werte für die Register 
berechnen muss und welche ich wie setzen muss.

Bin für jede Hilfe dankbar

MFG

Flo
Gast #1175570
Lesenswert?
• ▲
▼
Hier für OC1A

//TIMER1 initialize - prescale:1
// WGM: 4) CTC, TOP=OCRnA
// desired value: 76KHz
// actual value: 76,190KHz (0,2%)
void timer1_init(void)
{
 TCCR1B = 0x00; //stop timer
 TCNT1H = 0xFF; //set count value
 TCNT1L = 0x2F;
 OCR1AH  = 0x00; //set compare value
 OCR1AL  = 0xD1;
 TCCR1A = 0x40;
 TCCR1B = 0x09; //start Timer
}

Für IR-Sender einfach Timer nach kodierung ein/ausschalten.

gruß hans
Persönliche Seite #1175647
Lesenswert?
• ▲
▼
Florian wrote:

> So habe das ganze mal angeklemmt aber sollte die ir Diode nicht nur
> aktiv sein wenn die Uart sendet?

Nö bzw. es kommt auf den Anschluss an und was gesendet wird.

Wenn sie mit der Anode an OC1A angeschlossen ist, leuchtet die LED mit 
38 KHz, wenn TX ein Nullbit ausgibt.

Wenn sie mit der Anode an Tx angeschlossen ist, leuchtet sie mit 38 KHz, 
wenn die UART initialisiert ist und TX inaktiv ist oder wenn TX aktiv 
ist und ein Einsbit ausgibt.

Wenn die UART nicht initialisiert ist, also der Pin an dem TX genutzt 
werden kann, und ein I/O Pin auf Eingang ist, dann leuchtet die LED u.U. 
ziemlich schwach, aber auch mit 38 KHz.
Gast #1175654
Lesenswert?
• ▲
▼
Ok danke das hab dann verstanden.aber es klappt nicht wei gedacht wollte 
eigentlich das Asuro interface nachbauen um damit von einem tiny die 
Uart an einen mega 32 zu senden aber es kommt meistens nur ein 
leerzeichen an.wen überhautp.als empfänger nutze ich einen Tsop 1738 
dessen ausgang am rx des 32s hängt.

Antwort schreiben

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.

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.