mikrocontroller.net

Forum: FPGA, VHDL & Co. Bascom RC5 Code senden


Autor: Stefan R. (lenox)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,
ich arbeite gerade an einem größerem Projekt und benötige dafür eine IR 
Fernsteuerung die ein vorgegebenes RC5Signal bei betätigung eines 
Tasters Senden.
Als Microcontrolelr verwende ich den Atiny13 von Atmel.
Die IR Dioden ist über einen Transistor (gegen GND) mit dem AVR 
verbunden.

In Bascom gibt es eine Fkt sendrc, die allerdings den Timer1 benötigt, 
den aber der tiny13 nicht hat. Also muss ich mir selber was 
zusammenbasteln, über den verfügbaren 8-Bit Timer0.

Ich habe mir den RC5 Aufbau schon angeguckt, und schon versucht die 
ersten 3 Bits zu senden, aber die IR Diode leuchtet in einen so 
niedrigen Intervall das man es noch über ein Multimeter sehen kann, muss 
also irgentwas falsch gecodet sein!

Hier ist der Code den ich bsi jetzt geschrieben hab (ohne Taster 
abfrage)

$regfile = "ATtiny13.dat"
$crystal = 9600000
$hwstack = 32
$swstack = 8
$framesize = 16

Config Portb.0 = Output                                     'LED
Config Portb.4 = Input                                      'Schalter 
gegen GND
Portb.4 = 1                                                 'Pullup

Schalter Alias Portb.4

Config Timer0 = Timer , Prescale = 8
On Timer0 Timer_irq
Const Timervorgabe = 256 - 33

Enable Timer0
Enable Interrupts

Dim I As Byte
I = 0

Do

Loop

Timer_irq:

 If I < 33 Then                                             '1
  Portb.0 = 0
 End If
 If I > 32 And I < 65 Then
  Portb.0 = 1
 End If

 If I > 64 And I < 97 Then                                  '2
  Portb.0 = 0
 End If
 If I > 96 And I < 129 Then
  Portb.0 = 1
 End If

 If I > 128 And I < 161 Then                                '3
  Portb.0 = 1
 End If
 If I > 160 And I < 193 Then
  Portb.0 = 0
 End If

 If I = 193 Then
 I = 0
 Else
 I = I + 1
 End If

Return


Ich wäre echt sehr dankbar wenn ihr mir helfen könntet.

PS: Wenn jemand zufällig einen passenden C Code hat den ich nur noch 
flashen müsste würde mir das auch helfen.

Mfg
Stefan

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]
  • [vhdl]VHDL-Code[/vhdl]
  • [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.