Skip to content

Commit 4450ccf

Browse files
committed
add java API + example
1 parent 3cd426d commit 4450ccf

14 files changed

Lines changed: 89 additions & 0 deletions

‎README.md‎

Whitespace-only changes.

‎java/Tiny2040blinky.java‎

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import pico.*;
2+
3+
@board(BoardType.Tiny2040)
4+
class Tiny2040blinky
5+
{
6+
static int RED_LED = 18;
7+
static int GREEN_LED = 19;
8+
static int BLUE_LED = 20;
9+
10+
public static void main(String[] args)
11+
{
12+
stdio.init_all();
13+
14+
gpio.init(RED_LED);
15+
gpio.set_dir(RED_LED, gpio.OUTPUT);
16+
gpio.put(RED_LED, 1);
17+
18+
gpio.init(GREEN_LED);
19+
gpio.set_dir(GREEN_LED, gpio.OUTPUT);
20+
gpio.put(GREEN_LED, 1);
21+
22+
gpio.init(BLUE_LED);
23+
gpio.set_dir(BLUE_LED, gpio.OUTPUT);
24+
gpio.put(BLUE_LED, 1);
25+
26+
int counter = 0;
27+
28+
while (true)
29+
{
30+
gpio.put(RED_LED, counter & 1);
31+
gpio.put(GREEN_LED, counter & 2);
32+
gpio.put(BLUE_LED, counter & 4);
33+
time.sleep_ms(1000);
34+
35+
counter = (counter + 1) % 8;
36+
}
37+
}
38+
}

‎java/pico/BoardType.class‎

981 Bytes
Binary file not shown.

‎java/pico/BoardType.java‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package pico;
2+
3+
public enum BoardType
4+
{
5+
Pico,
6+
PicoW,
7+
Tiny2040,
8+
Tiny2040_2mb
9+
}

‎java/pico/board.class‎

172 Bytes
Binary file not shown.

‎java/pico/board.java‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
package pico;
2+
3+
public @interface board
4+
{
5+
BoardType value();
6+
}

‎java/pico/gpio.class‎

445 Bytes
Binary file not shown.

‎java/pico/gpio.java‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package pico;
2+
3+
public class gpio
4+
{
5+
public static int INPUT = 0;
6+
public static int OUTPUT = 1;
7+
8+
public static native void init(int pin);
9+
public static native void set_dir(int pin, int dir);
10+
public static native void put(int pin, int value);
11+
public static native void pull_up(int pin);
12+
public static native boolean get(int pin);
13+
public static native void set_mask(int mask);
14+
public static native void clr_mask(int mask);
15+
}

‎java/pico/stdio.class‎

208 Bytes
Binary file not shown.

‎java/pico/stdio.java‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
package pico;
2+
3+
public class stdio
4+
{
5+
public static native void init_all();
6+
}

0 commit comments

Comments
 (0)