3 #include "kernel_id.h"
\r
4 #include "ecrobot_interface.h"
\r
6 /* OSEK declarations */
\r
7 DeclareCounter(SysTimerCnt);
\r
10 /* LEJOS OSEK hooks */
\r
11 void ecrobot_device_initialize()
\r
13 ecrobot_set_RCX_power_source(NXT_PORT_S1);
\r
14 ecrobot_set_RCX_power_source(NXT_PORT_S4);
\r
16 void ecrobot_device_terminate()
\r
18 ecrobot_term_RCX_power_source(NXT_PORT_S1);
\r
19 ecrobot_term_RCX_power_source(NXT_PORT_S4);
\r
22 /* LEJOS OSEK hook to be invoked from an ISR in category 2 */
\r
23 void user_1ms_isr_type2(void)
\r
27 ercd = SignalCounter(SysTimerCnt); /* Increment OSEK Alarm Counter */
\r
34 /* Task1 executed every 500msec */
\r
41 light_sensor = ecrobot_get_RCX_sensor(NXT_PORT_S1);
\r
42 touch_sensor = ecrobot_get_RCX_touch_sensor(NXT_PORT_S2);
\r
43 rev_sensor = ecrobot_get_RCX_sensor(NXT_PORT_S4);
\r
47 display_goto_xy(0, 0);
\r
48 display_string("RCX Test");
\r
50 display_goto_xy(0, 2);
\r
51 display_string("Light: ");
\r
52 display_int(light_sensor, 0);
\r
54 display_goto_xy(0, 3);
\r
55 display_string("Touch: ");
\r
56 display_int(touch_sensor, 0);
\r
58 display_goto_xy(0, 4);
\r
59 display_string(" Rev: ");
\r
60 display_int(rev_sensor, 0);
\r