sam: simplify I2C peripheral declarations
This commit changes the I2C declarations so that the objects are instantiated in each chip file (e.g. machine_atsamd21e18.go) and used to define I2C0 (and similar) in the board file (e.g. board_qtpy.go). This should make it easier to define new board files, and reduces the need for separate *_baremetal.go files. I have tested this the following way: - With the LIS3DH driver example on the Circuit Playground Express and the PyBadge. - With the LSM6DS3 driver example on the Arduino Nano 33 IoT. They both still work fine.
Этот коммит содержится в:
родитель
e50885a6f2
коммит
ae864bdf0c
42 изменённых файлов: 169 добавлений и 153 удалений
|
@ -101,10 +101,7 @@ var UART1 = &sercomUSART5
|
|||
|
||||
// I2C on the Arduino MKR WiFi 1010.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM2_I2CM,
|
||||
SERCOM: 2,
|
||||
}
|
||||
I2C0 = sercomI2CM2
|
||||
)
|
||||
|
||||
// SPI on the Arduino MKR WiFi 1010.
|
||||
|
|
|
@ -70,6 +70,11 @@ const (
|
|||
SCL_PIN Pin = A5 // SCL: SERCOM4/PAD[1]
|
||||
)
|
||||
|
||||
// I2C on the Arduino Nano 33.
|
||||
var (
|
||||
I2C0 = sercomI2CM4
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
const (
|
||||
SPI0_SCK_PIN Pin = D13 // SCK: SERCOM1/PAD[1]
|
||||
|
|
|
@ -6,14 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the Arduino Nano 33.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM4_I2CM,
|
||||
SERCOM: 4,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the Arduino Nano 33.
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -254,28 +254,16 @@ var (
|
|||
// I2C on the SAM E54 Xplained Pro
|
||||
var (
|
||||
// Extension Header EXT1
|
||||
I2C0 = I2C{
|
||||
Bus: sam.SERCOM3_I2CM,
|
||||
SERCOM: 3,
|
||||
}
|
||||
I2C0 = sercomI2CM3
|
||||
|
||||
// Extension Header EXT2
|
||||
I2C1 = I2C{
|
||||
Bus: sam.SERCOM7_I2CM,
|
||||
SERCOM: 7,
|
||||
}
|
||||
I2C1 = sercomI2CM7
|
||||
|
||||
// Extension Header EXT3
|
||||
I2C2 = I2C{
|
||||
Bus: sam.SERCOM7_I2CM,
|
||||
SERCOM: 7,
|
||||
}
|
||||
I2C2 = sercomI2CM7
|
||||
|
||||
// Data Gateway Interface
|
||||
I2C3 = I2C{
|
||||
Bus: sam.SERCOM7_I2CM,
|
||||
SERCOM: 7,
|
||||
}
|
||||
I2C3 = sercomI2CM7
|
||||
)
|
||||
|
||||
// SPI on the SAM E54 Xplained Pro
|
||||
|
|
|
@ -83,6 +83,12 @@ const (
|
|||
SCL1_PIN = PA01 // I2C1 internal
|
||||
)
|
||||
|
||||
// I2C on the Circuit Playground Express.
|
||||
var (
|
||||
I2C0 = sercomI2CM5 // external device
|
||||
I2C1 = sercomI2CM1 // internal device
|
||||
)
|
||||
|
||||
// SPI pins (internal flash)
|
||||
const (
|
||||
SPI0_SCK_PIN = PA21 // SCK: SERCOM3/PAD[3]
|
||||
|
|
|
@ -6,20 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the Circuit Playground Express.
|
||||
var (
|
||||
// external device
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM5_I2CM,
|
||||
SERCOM: 5,
|
||||
}
|
||||
// internal device
|
||||
I2C1 = &I2C{
|
||||
Bus: sam.SERCOM1_I2CM,
|
||||
SERCOM: 1,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the Circuit Playground Express.
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -64,10 +64,7 @@ const (
|
|||
|
||||
// I2C on the Feather M0.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM3_I2CM,
|
||||
SERCOM: 3,
|
||||
}
|
||||
I2C0 = sercomI2CM3
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
|
|
|
@ -116,10 +116,7 @@ func init() {
|
|||
|
||||
// I2C on the Feather M4 CAN.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM2_I2CM,
|
||||
SERCOM: 2,
|
||||
}
|
||||
I2C0 = sercomI2CM2
|
||||
)
|
||||
|
||||
// SPI on the Feather M4 CAN.
|
||||
|
|
|
@ -69,6 +69,11 @@ const (
|
|||
SCL_PIN = D21 // SCL: SERCOM2/PAD[1]
|
||||
)
|
||||
|
||||
// I2C on the Feather M4.
|
||||
var (
|
||||
I2C0 = sercomI2CM2
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
const (
|
||||
SPI0_SCK_PIN = D25 // SCK: SERCOM1/PAD[1]
|
||||
|
|
|
@ -6,14 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the Feather M4.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM2_I2CM,
|
||||
SERCOM: 2,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the Feather M4.
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -202,6 +202,12 @@ const (
|
|||
SCL_PIN = I2C_SCL_PIN // (required by machine_atsamd51.go)
|
||||
)
|
||||
|
||||
// I2C on the Grand Central M4
|
||||
var (
|
||||
I2C0 = sercomI2CM3
|
||||
I2C1 = sercomI2CM6
|
||||
)
|
||||
|
||||
// I2S pins
|
||||
const (
|
||||
I2S0_SCK_PIN = D14 // (PB16)
|
||||
|
|
|
@ -6,18 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the Grand Central M4
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM3_I2CM,
|
||||
SERCOM: 3,
|
||||
}
|
||||
I2C1 = &I2C{
|
||||
Bus: sam.SERCOM6_I2CM,
|
||||
SERCOM: 6,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the Grand Central M4
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -66,10 +66,7 @@ const (
|
|||
|
||||
// I2C on the ItsyBitsy M0.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM3_I2CM,
|
||||
SERCOM: 3,
|
||||
}
|
||||
I2C0 = sercomI2CM3
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
|
|
|
@ -67,6 +67,11 @@ const (
|
|||
SCL_PIN = PA13 // SCL: SERCOM2/PAD[1]
|
||||
)
|
||||
|
||||
// I2C on the ItsyBitsy M4.
|
||||
var (
|
||||
I2C0 = sercomI2CM2
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
const (
|
||||
SPI0_SCK_PIN = PA01 // SCK: SERCOM1/PAD[1]
|
||||
|
|
|
@ -6,14 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the ItsyBitsy M4.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM2_I2CM,
|
||||
SERCOM: 2,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the ItsyBitsy M4.
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -131,6 +131,11 @@ const (
|
|||
SCL_PIN = I2C_SCL_PIN //
|
||||
)
|
||||
|
||||
// I2C on the MatrixPortal M4
|
||||
var (
|
||||
I2C0 = sercomI2CM5
|
||||
)
|
||||
|
||||
// ESP32 pins
|
||||
const (
|
||||
NINA_ACK = D31
|
||||
|
|
|
@ -6,14 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the MatrixPortal M4
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM5_I2CM,
|
||||
SERCOM: 5,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the MatrixPortal M4
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -81,6 +81,11 @@ const (
|
|||
SCL_PIN = PB03 // SCL: SERCOM5/PAD[1]
|
||||
)
|
||||
|
||||
// I2C on the Metro M4.
|
||||
var (
|
||||
I2C0 = sercomI2CM5
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
const (
|
||||
SPI0_SCK_PIN = PA13 // SCK: SERCOM2/PAD[1]
|
||||
|
|
|
@ -6,14 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the Metro M4.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM5_I2CM,
|
||||
SERCOM: 5,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the Metro M4.
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -88,6 +88,11 @@ const (
|
|||
SCL_PIN Pin = PA09 // SCL: SERCOM0/PAD[1]
|
||||
)
|
||||
|
||||
// I2C on the P1AM-100.
|
||||
var (
|
||||
I2C0 = sercomI2CM0
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
const (
|
||||
SPI0_SCK_PIN Pin = D9 // SCK: SERCOM1/PAD[1]
|
||||
|
|
|
@ -6,14 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the P1AM-100.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM0_I2CM,
|
||||
SERCOM: 0,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the P1AM-100 is used for Base Controller.
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -97,6 +97,9 @@ const (
|
|||
SCL_PIN = PA13 // SCL: SERCOM2/PAD[1]
|
||||
)
|
||||
|
||||
// I2C on the ItsyBitsy M4.
|
||||
var I2C0 = sercomI2CM2
|
||||
|
||||
// SPI pins
|
||||
const (
|
||||
SPI0_SCK_PIN = PA17 // SCK: SERCOM1/PAD[1]
|
||||
|
|
|
@ -6,14 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the ItsyBitsy M4.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM2_I2CM,
|
||||
SERCOM: 2,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the PyBadge.
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -100,10 +100,7 @@ const (
|
|||
|
||||
// I2C on the PyGamer.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM2_I2CM,
|
||||
SERCOM: 2,
|
||||
}
|
||||
I2C0 = sercomI2CM2
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
|
|
|
@ -119,6 +119,11 @@ const (
|
|||
SCL_PIN = PB03 // SCL: SERCOM2/PAD[1]
|
||||
)
|
||||
|
||||
// I2C on the PyPortal.
|
||||
var (
|
||||
I2C0 = sercomI2CM5
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
const (
|
||||
SPI0_SCK_PIN = PA13 // SCK: SERCOM1/PAD[1]
|
||||
|
|
|
@ -6,14 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the PyPortal.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM5_I2CM,
|
||||
SERCOM: 5,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the PyPortal.
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -84,10 +84,7 @@ const (
|
|||
|
||||
// I2C on the QT Py M0.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM1_I2CM,
|
||||
SERCOM: 1,
|
||||
}
|
||||
I2C0 = sercomI2CM1
|
||||
)
|
||||
|
||||
// I2S pins
|
||||
|
|
|
@ -70,10 +70,7 @@ const (
|
|||
|
||||
// I2C on the Trinket M0.
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM2_I2CM,
|
||||
SERCOM: 2,
|
||||
}
|
||||
I2C0 = sercomI2CM2
|
||||
)
|
||||
|
||||
// I2S pins
|
||||
|
|
|
@ -362,6 +362,12 @@ const (
|
|||
SCL_PIN = SCL0_PIN
|
||||
)
|
||||
|
||||
// I2C on the Wio Terminal
|
||||
var (
|
||||
I2C0 = sercomI2CM4
|
||||
I2C1 = sercomI2CM4
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
const (
|
||||
SPI0_SCK_PIN = SCK // SCK: SERCOM5/PAD[1]
|
||||
|
|
|
@ -6,19 +6,6 @@ import (
|
|||
"device/sam"
|
||||
)
|
||||
|
||||
// I2C on the Wio Terminal
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM4_I2CM,
|
||||
SERCOM: 4,
|
||||
}
|
||||
|
||||
I2C1 = &I2C{
|
||||
Bus: sam.SERCOM4_I2CM,
|
||||
SERCOM: 4,
|
||||
}
|
||||
)
|
||||
|
||||
// SPI on the Wio Terminal
|
||||
var (
|
||||
SPI0 = SPI{
|
||||
|
|
|
@ -70,10 +70,7 @@ const (
|
|||
|
||||
// I2C on the Xiao
|
||||
var (
|
||||
I2C0 = &I2C{
|
||||
Bus: sam.SERCOM2_I2CM,
|
||||
SERCOM: 2,
|
||||
}
|
||||
I2C0 = sercomI2CM2
|
||||
)
|
||||
|
||||
// SPI pins
|
||||
|
|
|
@ -17,6 +17,11 @@ var (
|
|||
sercomUSART1 = UART{Buffer: NewRingBuffer(), Bus: sam.SERCOM1_USART, SERCOM: 1}
|
||||
sercomUSART2 = UART{Buffer: NewRingBuffer(), Bus: sam.SERCOM2_USART, SERCOM: 2}
|
||||
sercomUSART3 = UART{Buffer: NewRingBuffer(), Bus: sam.SERCOM3_USART, SERCOM: 3}
|
||||
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
)
|
||||
|
||||
func init() {
|
||||
|
|
|
@ -19,6 +19,13 @@ var (
|
|||
sercomUSART3 = UART{Buffer: NewRingBuffer(), Bus: sam.SERCOM3_USART, SERCOM: 3}
|
||||
sercomUSART4 = UART{Buffer: NewRingBuffer(), Bus: sam.SERCOM4_USART, SERCOM: 4}
|
||||
sercomUSART5 = UART{Buffer: NewRingBuffer(), Bus: sam.SERCOM5_USART, SERCOM: 5}
|
||||
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
sercomI2CM4 = &I2C{Bus: sam.SERCOM4_I2CM, SERCOM: 4}
|
||||
sercomI2CM5 = &I2C{Bus: sam.SERCOM5_I2CM, SERCOM: 5}
|
||||
)
|
||||
|
||||
func init() {
|
||||
|
|
|
@ -11,6 +11,15 @@ import "device/sam"
|
|||
|
||||
const HSRAM_SIZE = 0x00030000
|
||||
|
||||
var (
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
sercomI2CM4 = &I2C{Bus: sam.SERCOM4_I2CM, SERCOM: 4}
|
||||
sercomI2CM5 = &I2C{Bus: sam.SERCOM5_I2CM, SERCOM: 5}
|
||||
)
|
||||
|
||||
// This chip has three TCC peripherals, which have PWM as one feature.
|
||||
var (
|
||||
TCC0 = (*TCC)(sam.TCC0)
|
||||
|
|
|
@ -11,6 +11,15 @@ import "device/sam"
|
|||
|
||||
const HSRAM_SIZE = 0x00030000
|
||||
|
||||
var (
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
sercomI2CM4 = &I2C{Bus: sam.SERCOM4_I2CM, SERCOM: 4}
|
||||
sercomI2CM5 = &I2C{Bus: sam.SERCOM5_I2CM, SERCOM: 5}
|
||||
)
|
||||
|
||||
// This chip has five TCC peripherals, which have PWM as one feature.
|
||||
var (
|
||||
TCC0 = (*TCC)(sam.TCC0)
|
||||
|
|
|
@ -11,6 +11,15 @@ import "device/sam"
|
|||
|
||||
const HSRAM_SIZE = 0x00040000
|
||||
|
||||
var (
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
sercomI2CM4 = &I2C{Bus: sam.SERCOM4_I2CM, SERCOM: 4}
|
||||
sercomI2CM5 = &I2C{Bus: sam.SERCOM5_I2CM, SERCOM: 5}
|
||||
)
|
||||
|
||||
// This chip has five TCC peripherals, which have PWM as one feature.
|
||||
var (
|
||||
TCC0 = (*TCC)(sam.TCC0)
|
||||
|
|
|
@ -11,6 +11,17 @@ import "device/sam"
|
|||
|
||||
const HSRAM_SIZE = 0x00030000
|
||||
|
||||
var (
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
sercomI2CM4 = &I2C{Bus: sam.SERCOM4_I2CM, SERCOM: 4}
|
||||
sercomI2CM5 = &I2C{Bus: sam.SERCOM5_I2CM, SERCOM: 5}
|
||||
sercomI2CM6 = &I2C{Bus: sam.SERCOM6_I2CM, SERCOM: 6}
|
||||
sercomI2CM7 = &I2C{Bus: sam.SERCOM7_I2CM, SERCOM: 7}
|
||||
)
|
||||
|
||||
// This chip has five TCC peripherals, which have PWM as one feature.
|
||||
var (
|
||||
TCC0 = (*TCC)(sam.TCC0)
|
||||
|
|
|
@ -11,6 +11,17 @@ import "device/sam"
|
|||
|
||||
const HSRAM_SIZE = 0x00040000
|
||||
|
||||
var (
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
sercomI2CM4 = &I2C{Bus: sam.SERCOM4_I2CM, SERCOM: 4}
|
||||
sercomI2CM5 = &I2C{Bus: sam.SERCOM5_I2CM, SERCOM: 5}
|
||||
sercomI2CM6 = &I2C{Bus: sam.SERCOM6_I2CM, SERCOM: 6}
|
||||
sercomI2CM7 = &I2C{Bus: sam.SERCOM7_I2CM, SERCOM: 7}
|
||||
)
|
||||
|
||||
// This chip has five TCC peripherals, which have PWM as one feature.
|
||||
var (
|
||||
TCC0 = (*TCC)(sam.TCC0)
|
||||
|
|
|
@ -11,6 +11,15 @@ import "device/sam"
|
|||
|
||||
const HSRAM_SIZE = 0x00030000
|
||||
|
||||
var (
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
sercomI2CM4 = &I2C{Bus: sam.SERCOM4_I2CM, SERCOM: 4}
|
||||
sercomI2CM5 = &I2C{Bus: sam.SERCOM5_I2CM, SERCOM: 5}
|
||||
)
|
||||
|
||||
// This chip has five TCC peripherals, which have PWM as one feature.
|
||||
var (
|
||||
TCC0 = (*TCC)(sam.TCC0)
|
||||
|
|
|
@ -11,6 +11,17 @@ import "device/sam"
|
|||
|
||||
const HSRAM_SIZE = 0x00040000
|
||||
|
||||
var (
|
||||
sercomI2CM0 = &I2C{Bus: sam.SERCOM0_I2CM, SERCOM: 0}
|
||||
sercomI2CM1 = &I2C{Bus: sam.SERCOM1_I2CM, SERCOM: 1}
|
||||
sercomI2CM2 = &I2C{Bus: sam.SERCOM2_I2CM, SERCOM: 2}
|
||||
sercomI2CM3 = &I2C{Bus: sam.SERCOM3_I2CM, SERCOM: 3}
|
||||
sercomI2CM4 = &I2C{Bus: sam.SERCOM4_I2CM, SERCOM: 4}
|
||||
sercomI2CM5 = &I2C{Bus: sam.SERCOM5_I2CM, SERCOM: 5}
|
||||
sercomI2CM6 = &I2C{Bus: sam.SERCOM6_I2CM, SERCOM: 6}
|
||||
sercomI2CM7 = &I2C{Bus: sam.SERCOM7_I2CM, SERCOM: 7}
|
||||
)
|
||||
|
||||
// This chip has five TCC peripherals, which have PWM as one feature.
|
||||
var (
|
||||
TCC0 = (*TCC)(sam.TCC0)
|
||||
|
|
|
@ -5,8 +5,6 @@ package machine
|
|||
// Dummy machine package that calls out to external functions.
|
||||
|
||||
var (
|
||||
SPI0 = SPI{0}
|
||||
I2C0 = &I2C{0}
|
||||
UART0 = &UART{0}
|
||||
USB = &UART{100}
|
||||
)
|
||||
|
@ -175,4 +173,13 @@ var (
|
|||
sercomUSART3 = UART{3}
|
||||
sercomUSART4 = UART{4}
|
||||
sercomUSART5 = UART{5}
|
||||
|
||||
sercomI2CM0 = &I2C{0}
|
||||
sercomI2CM1 = &I2C{1}
|
||||
sercomI2CM2 = &I2C{2}
|
||||
sercomI2CM3 = &I2C{3}
|
||||
sercomI2CM4 = &I2C{4}
|
||||
sercomI2CM5 = &I2C{5}
|
||||
sercomI2CM6 = &I2C{6}
|
||||
sercomI2CM7 = &I2C{7}
|
||||
)
|
||||
|
|
11
src/machine/machine_generic_peripherals.go
Обычный файл
11
src/machine/machine_generic_peripherals.go
Обычный файл
|
@ -0,0 +1,11 @@
|
|||
// +build !baremetal,!arduino_mkr1000,!arduino_mkrwifi1010,!arduino_nano33,!arduino_zero,!circuitplay_express,!feather_m0,!feather_m4,!grandcentral_m4,!itsybitsy_m0,!itsybitsy_m4,!matrixportal_m4,!metro_m4_airlift,!p1am_100,!pybadge,!pygamer,!pyportal,!qtpy,!trinket_m0,!wioterminal,!xiao
|
||||
|
||||
package machine
|
||||
|
||||
// These peripherals are defined separately so that they can be excluded on
|
||||
// boards that define their peripherals in the board file (e.g. board_qtpy.go).
|
||||
|
||||
var (
|
||||
SPI0 = SPI{0}
|
||||
I2C0 = &I2C{0}
|
||||
)
|
Загрузка…
Создание таблицы
Сослаться в новой задаче