fcbc04d0555db3a12dfd7ec4f5a2085bf7bf2721
[fw/altos] / blink.c
1
2 sfr at 0x80 P0;
3 sfr at 0x90 P1;
4 sfr at 0xA0 P2;
5
6 #define PERCFG  SFR(0xF1)
7 #define ADCCFG  SFR(0xF2)
8 #define P0SEL   SFR(0xF3)
9 #define P1SEL   SFR(0xF4)
10 #define P2SEL   SFR(0xF5)
11
12 sfr at 0xFD P0DIR;
13 sfr at 0xFE P1DIR;
14 sfr at 0xFE P2DIR;
15 sfr at 0x8F P0INP;
16 sfr at 0xF6 P1INP;
17 sfr at 0xF7 P2INP;
18
19 #define P0IFG   SFR(0x89)
20 #define P1IFG   SFR(0x8A)
21 #define P2IFG   SFR(0x8B)
22
23 #define nop()   _asm \
24                 nop \
25                 _endasm;
26
27 main ()
28 {
29         int     i, j;
30         /* Set p1_1 to output */
31         P1DIR = 0x02;
32         P1INP = 0x00;
33         P2INP = 0x00;
34         for (;;) {
35                 P1 = 0xff;
36                 for (j = 0; j < 100; j++)
37                         for (i = 0; i < 1000; i++)
38                                 nop();
39                 P1 = 0xfd;
40                 for (j = 0; j < 100; j++)
41                         for (i = 0; i < 1000; i++)
42                                 nop();
43         }
44 }