Skip to content

Commit a2ce365

Browse files
committed
machine: support wioterminal boards on play.tinygo.org
1 parent 3dabf4c commit a2ce365

File tree

2 files changed

+68
-65
lines changed

2 files changed

+68
-65
lines changed

src/machine/board_wioterminal.go

Lines changed: 1 addition & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
1-
// +build sam,atsamd51,wioterminal
1+
// +build wioterminal
22

33
package machine
44

5-
import (
6-
"device/sam"
7-
"runtime/interrupt"
8-
)
9-
105
// used to reset into bootloader
116
const RESET_MAGIC_VALUE = 0xf01669ef
127

@@ -351,26 +346,6 @@ const (
351346
UART2_RX_PIN = PIN_SERIAL2_RX
352347
)
353348

354-
var (
355-
UART1 = UART{
356-
Buffer: NewRingBuffer(),
357-
Bus: sam.SERCOM2_USART_INT,
358-
SERCOM: 2,
359-
}
360-
361-
// RTL8720D
362-
UART2 = UART{
363-
Buffer: NewRingBuffer(),
364-
Bus: sam.SERCOM1_USART_INT,
365-
SERCOM: 1,
366-
}
367-
)
368-
369-
func init() {
370-
UART1.Interrupt = interrupt.New(sam.IRQ_SERCOM2_2, UART1.handleInterrupt)
371-
UART2.Interrupt = interrupt.New(sam.IRQ_SERCOM1_2, UART2.handleInterrupt)
372-
}
373-
374349
// I2C pins
375350
const (
376351
SDA0_PIN = PIN_WIRE_SDA // SDA: SERCOM3/PAD[0]
@@ -383,19 +358,6 @@ const (
383358
SCL_PIN = SCL0_PIN
384359
)
385360

386-
// I2C on the Wio Terminal
387-
var (
388-
I2C0 = I2C{
389-
Bus: sam.SERCOM4_I2CM,
390-
SERCOM: 4,
391-
}
392-
393-
I2C1 = I2C{
394-
Bus: sam.SERCOM4_I2CM,
395-
SERCOM: 4,
396-
}
397-
)
398-
399361
// SPI pins
400362
const (
401363
SPI0_SCK_PIN = SCK // SCK: SERCOM5/PAD[1]
@@ -418,32 +380,6 @@ const (
418380
SPI3_MISO_PIN = MISO3 // MISO: SERCOM7/PAD[2]
419381
)
420382

421-
// SPI on the Wio Terminal
422-
var (
423-
SPI0 = SPI{
424-
Bus: sam.SERCOM5_SPIM,
425-
SERCOM: 5,
426-
}
427-
428-
// RTL8720D
429-
SPI1 = SPI{
430-
Bus: sam.SERCOM0_SPIM,
431-
SERCOM: 0,
432-
}
433-
434-
// SD
435-
SPI2 = SPI{
436-
Bus: sam.SERCOM6_SPIM,
437-
SERCOM: 6,
438-
}
439-
440-
// LCD
441-
SPI3 = SPI{
442-
Bus: sam.SERCOM7_SPIM,
443-
SERCOM: 7,
444-
}
445-
)
446-
447383
// USB CDC identifiers
448384
const (
449385
usb_STRING_PRODUCT = "Seeed Wio Terminal"
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
// +build sam,atsamd51,wioterminal
2+
3+
package machine
4+
5+
import (
6+
"device/sam"
7+
"runtime/interrupt"
8+
)
9+
10+
var (
11+
UART1 = UART{
12+
Buffer: NewRingBuffer(),
13+
Bus: sam.SERCOM2_USART_INT,
14+
SERCOM: 2,
15+
}
16+
17+
// RTL8720D
18+
UART2 = UART{
19+
Buffer: NewRingBuffer(),
20+
Bus: sam.SERCOM1_USART_INT,
21+
SERCOM: 1,
22+
}
23+
)
24+
25+
func init() {
26+
UART1.Interrupt = interrupt.New(sam.IRQ_SERCOM2_2, UART1.handleInterrupt)
27+
UART2.Interrupt = interrupt.New(sam.IRQ_SERCOM1_2, UART2.handleInterrupt)
28+
}
29+
30+
// I2C on the Wio Terminal
31+
var (
32+
I2C0 = I2C{
33+
Bus: sam.SERCOM4_I2CM,
34+
SERCOM: 4,
35+
}
36+
37+
I2C1 = I2C{
38+
Bus: sam.SERCOM4_I2CM,
39+
SERCOM: 4,
40+
}
41+
)
42+
43+
// SPI on the Wio Terminal
44+
var (
45+
SPI0 = SPI{
46+
Bus: sam.SERCOM5_SPIM,
47+
SERCOM: 5,
48+
}
49+
50+
// RTL8720D
51+
SPI1 = SPI{
52+
Bus: sam.SERCOM0_SPIM,
53+
SERCOM: 0,
54+
}
55+
56+
// SD
57+
SPI2 = SPI{
58+
Bus: sam.SERCOM6_SPIM,
59+
SERCOM: 6,
60+
}
61+
62+
// LCD
63+
SPI3 = SPI{
64+
Bus: sam.SERCOM7_SPIM,
65+
SERCOM: 7,
66+
}
67+
)

0 commit comments

Comments
 (0)