Revision 863
BOM1.5 Driver complete, test case is in template. Next step is to merge with trunk, which could have issues since the trunk functions are different now.
main.c | ||
---|---|---|
1 | 1 |
#include <dragonfly_lib.h> |
2 | 2 |
|
3 | 3 |
int main(void) { |
4 |
dragonfly_init(ALL_ON); |
|
4 |
dragonfly_init(ALL_ON /*| BOM_15*/);
|
|
5 | 5 |
orb_init(); |
6 | 6 |
orb_enable(); |
7 |
bom_on(); |
|
8 | 7 |
orb1_set_color(RED); |
9 |
char l0, l1, h0, h1, on; |
|
10 |
int mask; |
|
8 |
char temp, on, i=0; |
|
9 |
int mask = 0; |
|
10 |
usb_puts("init dones\n"); |
|
11 |
on = 0; |
|
11 | 12 |
while(1) |
12 | 13 |
{ |
13 |
l0 = usb_getc()&0xf; |
|
14 |
l1 = usb_getc()&0xf; |
|
15 |
h0 = usb_getc()&0xf; |
|
16 |
h1 = usb_getc()&0xf; |
|
17 |
on = usb_getc(); |
|
18 |
mask = l0|(l1<<4)|(h0<<8)|(h1<<12); |
|
19 |
usb_puti(mask); |
|
20 |
usb_putc('\n'); |
|
21 |
bom_set_leds(mask); |
|
22 |
if(on == 'o') |
|
14 |
if(on&1) |
|
23 | 15 |
bom_on(); |
24 | 16 |
else |
25 | 17 |
bom_off(); |
18 |
|
|
19 |
if(button1_click()) |
|
20 |
on ^= 1; |
|
21 |
|
|
22 |
if(!usb_getc_nb(&temp)) |
|
23 |
{ |
|
24 |
if(temp >= '0' && temp <= '9') |
|
25 |
temp = temp - '0'; |
|
26 |
else |
|
27 |
temp = temp - 'a' + 10; |
|
28 |
mask += temp << (4*(3-i)); |
|
29 |
if(++i == 4) |
|
30 |
{ |
|
31 |
i = 0; |
|
32 |
usb_puti(mask); |
|
33 |
usb_putc('\n'); |
|
34 |
bom_set_leds(mask); |
|
35 |
mask = 0; |
|
36 |
} |
|
37 |
} |
|
26 | 38 |
} |
27 | 39 |
return 0; |
28 | 40 |
} |
Also available in: Unified diff