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.
This commit is contained in:
Ayke van Laethem
2021-10-15 22:52:34 +02:00
committed by Ron Evans
parent e50885a6f2
commit ae864bdf0c
42 changed files with 169 additions and 153 deletions
+6
View File
@@ -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]