#include <avr/io.h>
#include "asuro.h"
#include "rc5.h"
gehe zum Quellcode dieser Datei
|
void | IsrRC5 (void) |
| RC5 interrupt service routine
called by timer overflow isr ever 27,7 micro seconds.
|
|
uint16_t | ReadRC5 (void) |
| Read last received RC5 Data.
|
|
void | InitRC5 (void) |
| Initialize the RC5 Receiver.
|
|
DDR of Port D
Definiert in Zeile 61 der Datei rc5.c.
#define IR_PAUSE_SAMPLES 250 |
Startbit ist erst nach 200 Samples ohne
Definiert in Zeile 53 der Datei rc5.c.
Pin 0
Definiert in Zeile 63 der Datei rc5.c.
Port D input
Definiert in Zeile 62 der Datei rc5.c.
Port D
Definiert in Zeile 60 der Datei rc5.c.
#define IR_SAMPLES_PER_BIT 8 |
/file rc5.c /brief Funktionen fuer die Dekodierung von RC5-Fernbedienungs-Codes /author Benjamin Benz (bbe@h.nosp@m.eise.nosp@m..de),
m.a.r.v.i.n
/version V001 - 20.12.2005 - Benjamin Benz (bbe@h.nosp@m.eise.nosp@m..de)
Version fuer den c't-Bot /version V002 - 11.02.2007 - m.a.r.v.i.n
portiert fuer den ASURO /version V003 - 22.01.2008 - m.a.r.v.i.n
Ovr2IntFunc Variable als Zeiger auf die Funktion IsrRC5
Wird von der Timer Overflow Interrupt Funtkion aus angesprungen. 8 Samples per Bit
Definiert in Zeile 49 der Datei rc5.c.
#define IR_SAMPLES_PER_BIT_EARLY 6 |
Flanke fruehestens nach 7 Samples
Definiert in Zeile 50 der Datei rc5.c.
#define IR_SAMPLES_PER_BIT_LATE 10 |
Flanke spaetestens nach 9 Samples
Definiert in Zeile 51 der Datei rc5.c.
#define IR_SAMPLES_PER_BIT_MIN 3 |
Flanke vor 3 Samples -> paket verwerfen
Definiert in Zeile 52 der Datei rc5.c.
Initialize the RC5 Receiver.
Init IR-System
Definiert in Zeile 185 der Datei rc5.c.
RC5 interrupt service routine
called by timer overflow isr ever 27,7 micro seconds.
Interrupt Serviceroutine wird alle 27.7us aufgerufen
Definiert in Zeile 79 der Datei rc5.c.
{
uint8_t sample = 1;
{
{
sample = 0;
}
if (RC5bittimer<255)
{
RC5bittimer++;
}
if ( RC5lastsample != sample)
{
{
RC5bitcount=0;
}
else
{
if (RC5bitcount==0)
{
{
RC5data_tmp = 1;
RC5bitcount++;
}
else
{
RC5data_tmp = 0;
}
RC5bittimer = 0;
}
else
{
{
{
RC5data_tmp = (RC5data_tmp<<1) | sample;
RC5bitcount++;
}
else
{
RC5bitcount = 0;
}
RC5bittimer = 0;
}
}
}
}
else
{
{
if (RC5bitcount==14)
{
}
RC5bitcount = 0;
}
}
RC5lastsample = sample;
}
}
uint16_t ReadRC5 |
( |
void |
| ) |
|
Read last received RC5 Data.
IR-Daten lesen
- Rückgabe
- wert von ir_data, loescht anschliessend ir_data
Definiert in Zeile 175 der Datei rc5.c.
volatile uint8_t enableRC5 = 0 |
schaltet die RC5 Abfrage ein/aus
Definiert in Zeile 73 der Datei rc5.c.
volatile uint16_t RC5data = 0 |
letztes komplett gelesenes RC5-paket
Definiert in Zeile 72 der Datei rc5.c.