machine/rp2040: gpio and adc pin definitions
Этот коммит содержится в:
родитель
1f5e4e79aa
коммит
95af444896
3 изменённых файлов: 72 добавлений и 42 удалений
|
@ -4,45 +4,35 @@ package machine
|
||||||
|
|
||||||
// GPIO pins
|
// GPIO pins
|
||||||
const (
|
const (
|
||||||
GP0 Pin = 0
|
GP0 Pin = GPIO0
|
||||||
GP1 Pin = 1
|
GP1 Pin = GPIO1
|
||||||
GP2 Pin = 2
|
GP2 Pin = GPIO2
|
||||||
GP3 Pin = 3
|
GP3 Pin = GPIO3
|
||||||
GP4 Pin = 4
|
GP4 Pin = GPIO4
|
||||||
GP5 Pin = 5
|
GP5 Pin = GPIO5
|
||||||
GP6 Pin = 6
|
GP6 Pin = GPIO6
|
||||||
GP7 Pin = 7
|
GP7 Pin = GPIO7
|
||||||
GP8 Pin = 8
|
GP8 Pin = GPIO8
|
||||||
GP9 Pin = 9
|
GP9 Pin = GPIO9
|
||||||
GP10 Pin = 10
|
GP10 Pin = GPIO10
|
||||||
GP11 Pin = 11
|
GP11 Pin = GPIO11
|
||||||
GP12 Pin = 12
|
GP12 Pin = GPIO12
|
||||||
GP13 Pin = 13
|
GP13 Pin = GPIO13
|
||||||
GP14 Pin = 14
|
GP14 Pin = GPIO14
|
||||||
GP15 Pin = 15
|
GP15 Pin = GPIO15
|
||||||
GP16 Pin = 16
|
GP16 Pin = GPIO16
|
||||||
GP17 Pin = 17
|
GP17 Pin = GPIO17
|
||||||
GP18 Pin = 18
|
GP18 Pin = GPIO18
|
||||||
GP19 Pin = 19
|
GP19 Pin = GPIO19
|
||||||
GP20 Pin = 20
|
GP20 Pin = GPIO20
|
||||||
GP21 Pin = 21
|
GP21 Pin = GPIO21
|
||||||
GP22 Pin = 22
|
GP22 Pin = GPIO22
|
||||||
GP23 Pin = 23
|
GP26 Pin = GPIO26
|
||||||
GP24 Pin = 24
|
GP27 Pin = GPIO27
|
||||||
GP25 Pin = 25
|
GP28 Pin = GPIO28
|
||||||
GP26 Pin = 26
|
|
||||||
GP27 Pin = 27
|
|
||||||
GP28 Pin = 28
|
|
||||||
GP29 Pin = 29
|
|
||||||
|
|
||||||
// Onboard LED
|
// Onboard LED
|
||||||
LED Pin = GP25
|
LED Pin = GPIO25
|
||||||
|
|
||||||
// Analog pins
|
|
||||||
ADC0 = GP26
|
|
||||||
ADC1 = GP27
|
|
||||||
ADC2 = GP28
|
|
||||||
ADC3 = GP29
|
|
||||||
|
|
||||||
// Onboard crystal oscillator frequency, in MHz.
|
// Onboard crystal oscillator frequency, in MHz.
|
||||||
xoscFreq = 12 // MHz
|
xoscFreq = 12 // MHz
|
||||||
|
|
|
@ -7,6 +7,46 @@ import (
|
||||||
_ "unsafe"
|
_ "unsafe"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
// GPIO pins
|
||||||
|
GPIO0 Pin = 0
|
||||||
|
GPIO1 Pin = 1
|
||||||
|
GPIO2 Pin = 2
|
||||||
|
GPIO3 Pin = 3
|
||||||
|
GPIO4 Pin = 4
|
||||||
|
GPIO5 Pin = 5
|
||||||
|
GPIO6 Pin = 6
|
||||||
|
GPIO7 Pin = 7
|
||||||
|
GPIO8 Pin = 8
|
||||||
|
GPIO9 Pin = 9
|
||||||
|
GPIO10 Pin = 10
|
||||||
|
GPIO11 Pin = 11
|
||||||
|
GPIO12 Pin = 12
|
||||||
|
GPIO13 Pin = 13
|
||||||
|
GPIO14 Pin = 14
|
||||||
|
GPIO15 Pin = 15
|
||||||
|
GPIO16 Pin = 16
|
||||||
|
GPIO17 Pin = 17
|
||||||
|
GPIO18 Pin = 18
|
||||||
|
GPIO19 Pin = 19
|
||||||
|
GPIO20 Pin = 20
|
||||||
|
GPIO21 Pin = 21
|
||||||
|
GPIO22 Pin = 22
|
||||||
|
GPIO23 Pin = 23
|
||||||
|
GPIO24 Pin = 24
|
||||||
|
GPIO25 Pin = 25
|
||||||
|
GPIO26 Pin = 26
|
||||||
|
GPIO27 Pin = 27
|
||||||
|
GPIO28 Pin = 28
|
||||||
|
GPIO29 Pin = 29
|
||||||
|
|
||||||
|
// Analog pins
|
||||||
|
ADC0 Pin = GPIO26
|
||||||
|
ADC1 Pin = GPIO27
|
||||||
|
ADC2 Pin = GPIO28
|
||||||
|
ADC3 Pin = GPIO29
|
||||||
|
)
|
||||||
|
|
||||||
//go:linkname machineInit runtime.machineInit
|
//go:linkname machineInit runtime.machineInit
|
||||||
func machineInit() {
|
func machineInit() {
|
||||||
// Reset all peripherals to put system into a known state,
|
// Reset all peripherals to put system into a known state,
|
||||||
|
|
|
@ -22,7 +22,7 @@ func InitADC() {
|
||||||
// Configure configures a ADC pin to be able to be used to read data.
|
// Configure configures a ADC pin to be able to be used to read data.
|
||||||
func (a ADC) Configure(config ADCConfig) {
|
func (a ADC) Configure(config ADCConfig) {
|
||||||
switch a.Pin {
|
switch a.Pin {
|
||||||
case GP26, GP27, GP28, GP29:
|
case ADC0, ADC1, ADC2, ADC3:
|
||||||
a.Pin.Configure(PinConfig{Mode: PinAnalog})
|
a.Pin.Configure(PinConfig{Mode: PinAnalog})
|
||||||
default:
|
default:
|
||||||
// invalid ADC
|
// invalid ADC
|
||||||
|
@ -47,13 +47,13 @@ func waitForReady() {
|
||||||
|
|
||||||
func (a ADC) getADCChannel() uint8 {
|
func (a ADC) getADCChannel() uint8 {
|
||||||
switch a.Pin {
|
switch a.Pin {
|
||||||
case GP26:
|
case ADC0:
|
||||||
return 0
|
return 0
|
||||||
case GP27:
|
case ADC1:
|
||||||
return 1
|
return 1
|
||||||
case GP28:
|
case ADC2:
|
||||||
return 2
|
return 2
|
||||||
case GP29:
|
case ADC3:
|
||||||
return 3
|
return 3
|
||||||
default:
|
default:
|
||||||
return 0
|
return 0
|
||||||
|
|
Загрузка…
Создание таблицы
Сослаться в новой задаче