remote.h File Reference

Interface: LEGO Infrared Remote Control. More...

#include <config.h>
Include dependency graph for remote.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define LR_TIMEOUT   100
 timeout value in mSec More...
 
#define LRKEY_M1   0x1
 The message #1 key. More...
 
#define LRKEY_M2   0x2
 The message #2 key. More...
 
#define LRKEY_M3   0x4
 The message #3 key. More...
 
#define LRKEY_A1   0x8
 Motor-A forward (up) More...
 
#define LRKEY_B1   0x10
 Motor-B forward (up) More...
 
#define LRKEY_C1   0x20
 Motor-C forward (up) More...
 
#define LRKEY_A2   0x40
 Motor-A reverse (down) More...
 
#define LRKEY_B2   0x80
 Motor-B reverse (down) More...
 
#define LRKEY_C2   0x100
 Motor-C reverse (down) More...
 
#define LRKEY_P1   0x200
 Run Program 1. More...
 
#define LRKEY_P2   0x400
 Run Program 2. More...
 
#define LRKEY_P3   0x800
 Run Program 3. More...
 
#define LRKEY_P4   0x1000
 Run Program 4. More...
 
#define LRKEY_P5   0x2000
 Run Program 5. More...
 
#define LRKEY_STOP   0x4000
 Stop key. More...
 
#define LRKEY_BEEP   0x8000
 Beep Key. More...
 
#define LR_DUMMY_HANDLER   ((lr_handler_t)0)
 dummy remote event handler More...
 

Typedefs

typedef int(* lr_handler_t) (unsigned int, unsigned int)
 the remote key handler type More...
 

Enumerations

enum  _evt { LREVT_KEYON = 1 , LREVT_KEYOFF = 2 }
 enumerate our event types More...
 

Functions

void lr_startup (void)
 start the LEGO IR Remote subsystem More...
 
void lr_init (void)
 initialize the LEGO IR Remote subsystem More...
 
void lr_shutdown (void)
 stop the LEGO IR Remote subsystem More...
 
void lr_set_handler (lr_handler_t handler)
 set a new handler for LEGO IR Remote messages More...
 

Variables

enum _evt EventType
 the LEGO IR Remote event types More...
 
lr_handler_t lr_handler
 remote handler More...
 

Detailed Description

Interface: LEGO Infrared Remote Control.

Author
Ross Crawford rcraw.nosp@m.ford.nosp@m.@csi..nosp@m.com

Definition in file remote.h.

Macro Definition Documentation

◆ LR_DUMMY_HANDLER

#define LR_DUMMY_HANDLER   ((lr_handler_t)0)

dummy remote event handler

Definition at line 102 of file remote.h.

◆ LR_TIMEOUT

#define LR_TIMEOUT   100

timeout value in mSec

Definition at line 34 of file remote.h.

◆ LRKEY_A1

#define LRKEY_A1   0x8

Motor-A forward (up)

Definition at line 43 of file remote.h.

◆ LRKEY_A2

#define LRKEY_A2   0x40

Motor-A reverse (down)

Definition at line 49 of file remote.h.

◆ LRKEY_B1

#define LRKEY_B1   0x10

Motor-B forward (up)

Definition at line 45 of file remote.h.

◆ LRKEY_B2

#define LRKEY_B2   0x80

Motor-B reverse (down)

Definition at line 51 of file remote.h.

◆ LRKEY_BEEP

#define LRKEY_BEEP   0x8000

Beep Key.

Definition at line 67 of file remote.h.

◆ LRKEY_C1

#define LRKEY_C1   0x20

Motor-C forward (up)

Definition at line 47 of file remote.h.

◆ LRKEY_C2

#define LRKEY_C2   0x100

Motor-C reverse (down)

Definition at line 53 of file remote.h.

◆ LRKEY_M1

#define LRKEY_M1   0x1

The message #1 key.

Definition at line 37 of file remote.h.

◆ LRKEY_M2

#define LRKEY_M2   0x2

The message #2 key.

Definition at line 39 of file remote.h.

◆ LRKEY_M3

#define LRKEY_M3   0x4

The message #3 key.

Definition at line 41 of file remote.h.

◆ LRKEY_P1

#define LRKEY_P1   0x200

Run Program 1.

Definition at line 55 of file remote.h.

◆ LRKEY_P2

#define LRKEY_P2   0x400

Run Program 2.

Definition at line 57 of file remote.h.

◆ LRKEY_P3

#define LRKEY_P3   0x800

Run Program 3.

Definition at line 59 of file remote.h.

◆ LRKEY_P4

#define LRKEY_P4   0x1000

Run Program 4.

Definition at line 61 of file remote.h.

◆ LRKEY_P5

#define LRKEY_P5   0x2000

Run Program 5.

Definition at line 63 of file remote.h.

◆ LRKEY_STOP

#define LRKEY_STOP   0x4000

Stop key.

Definition at line 65 of file remote.h.

Typedef Documentation

◆ lr_handler_t

typedef int(* lr_handler_t) (unsigned int, unsigned int)

the remote key handler type

Parameters
event_typewas key pressed or released?
keythe key, on the remote, that was pressed/released
Returns
0 if not processed, otherwise non-zero.

Definition at line 80 of file remote.h.

Enumeration Type Documentation

◆ _evt

enum _evt

enumerate our event types

Enumerator
LREVT_KEYON 

a key on the remote was pressed

LREVT_KEYOFF 

a key on the remote was released

Definition at line 70 of file remote.h.

Function Documentation

◆ lr_init()

void lr_init ( void  )

initialize the LEGO IR Remote subsystem

◆ lr_set_handler()

void lr_set_handler ( lr_handler_t  handler)
inline

set a new handler for LEGO IR Remote messages

Parameters
handlerpointer to a function which is to be the processing function for received messages
Returns
Nothing

Definition at line 97 of file remote.h.

References lr_handler.

◆ lr_shutdown()

void lr_shutdown ( void  )

stop the LEGO IR Remote subsystem

◆ lr_startup()

void lr_startup ( void  )

start the LEGO IR Remote subsystem

Variable Documentation

◆ EventType

enum _evt EventType

the LEGO IR Remote event types

◆ lr_handler

lr_handler_t lr_handler
extern

remote handler

Referenced by lr_set_handler().


brickOS is released under the Mozilla Public License.
Original code copyright 1998-2005 by the authors.

Generated for brickOS Kernel Developer by doxygen 1.9.4