]> git.llucax.com Git - z.facultad/66.09/etherled.git/blob - pruebas/keil/red_test_anda/main.c
Cambios estéticos al código de la facultad que solía andar. No hay cambios
[z.facultad/66.09/etherled.git] / pruebas / keil / red_test_anda / main.c
1 // vim: set et sw=4 sts=4 :     
2
3 #include "main.h"
4
5 static xdata leds1 _at_ 0x0080;
6 static xdata leds2 _at_ 0x00c0;
7
8 void sleep(unsigned char times)
9 {
10     unsigned int i;
11     unsigned char j;
12     for (i = 0; i < 0xffff; ++i)
13         for (j = 0; j < times; ++j);
14 }
15
16 void main(void)
17 {
18     unsigned int len;
19     leds1 = ~0xff;
20     leds2 = ~0xff;
21     sleep(3);
22     /* Initialise the device driver. */ 
23     if (!etherdev_init())
24         while(1); // Si falla init nos quedamos bobos
25
26     etherdev_send();
27     leds1 = ~0xaa;
28     leds2 = ~0xaa;
29
30
31     // leemos
32     do
33     {
34         len = etherdev_read();
35         if (len)
36         {
37             leds1 = ~0x55;
38             leds2 = len;
39             sleep(2);
40             for (len = 0; len < uip_len; ++len)
41             {
42                 leds1 = ~(1 << (len % 8));
43                 leds2 = ~uip_buf[len];
44                 sleep(5);
45             }
46             leds1 = ~0x55;
47             leds2 = ~0x55;
48         }
49         else
50         {
51             leds1 = ~0xff;
52             leds2 = ~0xff;
53         }
54     }
55     while (1); // Quedamos paveando forever
56 }
57