]> git.llucax.com Git - z.facultad/66.09/etherled.git/blob - pruebas/keil/red_test_anda/main.c
e7cc4e6542c7a28f0d49281617aacd74cd5bdc56
[z.facultad/66.09/etherled.git] / pruebas / keil / red_test_anda / main.c
1 /*       ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»\r
2          º    TITLE:  Keil C51 v7.00 port of Adam Dunkels' uIP v0.9 º\r
3          º REVISION:  VER 0.1                                       º\r
4          º REV.DATE:  30-01-05                                      º\r
5          º  ARCHIVE:                                                º\r
6          º   AUTHOR:  Murray R. Van Luyn, 2005.                     º\r
7          ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ        */\r
8 \r
9 /*  ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿\r
10     ³  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS  ³ \r
11     ³  OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED  ³ \r
12     ³  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ³ \r
13     ³  ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY    ³ \r
14     ³  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ³ \r
15     ³  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE  ³ \r
16     ³  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS      ³ \r
17     ³  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,       ³ \r
18     ³  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING          ³ \r
19     ³  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS ³ \r
20     ³  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.       ³ \r
21     ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ  */\r
22 \r
23 #include "main.h"\r
24 \r
25 static xdata leds1 _at_ 0x0080;\r
26 static xdata leds2 _at_ 0x00c0;\r
27 \r
28 void sleep(unsigned char times)\r
29 {\r
30         unsigned int i;\r
31         unsigned char j;\r
32         for (i = 0; i < 0xffff; ++i)\r
33                 for (j = 0; j < times; ++j);\r
34 }\r
35 \r
36 /*  ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»\r
37     º                                                                     º\r
38     º                                  main()                             º\r
39     º                                                                     º\r
40     º Simple Web Server test application.                                 º\r
41     º                                                                     º\r
42     º                                                                     º\r
43     ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ  */\r
44 void main(void)\r
45 {\r
46         unsigned int len;\r
47         leds1 = ~0x00;\r
48         leds2 = ~0x00;\r
49         sleep(3);\r
50     /* Initialise the device driver. */ \r
51     if (!etherdev_init())\r
52                 while(1); // Si falla init nos quedamos bobos\r
53 \r
54     etherdev_send();\r
55         leds1 = ~0xaa;\r
56         leds2 = ~0xaa;\r
57 \r
58 \r
59         // leemos\r
60 do\r
61 {\r
62         len = etherdev_read();\r
63         if (len)\r
64         {\r
65                 leds1 = ~0x55;\r
66                 leds2 = len;\r
67                 sleep(2);\r
68                 for (len = 0; len < uip_len; ++len)\r
69                 {\r
70                         leds1 = ~(1 << (len % 8));\r
71                         leds2 = ~uip_buf[len];\r
72                         sleep(5);\r
73                 }\r
74                 leds1 = ~0x55;\r
75                 leds2 = ~0x55;\r
76         }\r
77         else\r
78         {\r
79                 leds1 = ~0xff;\r
80                 leds2 = ~0xff;\r
81         }\r
82 }\r
83 while (1); // Quedamos paveando forever\r
84 }\r
85 \r