targets: add support for the MKS Robin Nano V3.x
Signed-off-by: Elias Naur <mail@eliasnaur.com>
Этот коммит содержится в:
родитель
9679e7f1cc
коммит
bb66232164
3 изменённых файлов: 123 добавлений и 0 удалений
|
@ -717,6 +717,8 @@ ifneq ($(STM32), 0)
|
||||||
@$(MD5SUM) test.hex
|
@$(MD5SUM) test.hex
|
||||||
$(TINYGO) build -size short -o test.hex -target=swan examples/blinky1
|
$(TINYGO) build -size short -o test.hex -target=swan examples/blinky1
|
||||||
@$(MD5SUM) test.hex
|
@$(MD5SUM) test.hex
|
||||||
|
$(TINYGO) build -size short -o test.hex -target=mksnanov3 examples/blinky1
|
||||||
|
@$(MD5SUM) test.hex
|
||||||
endif
|
endif
|
||||||
$(TINYGO) build -size short -o test.hex -target=atmega328pb examples/blinkm
|
$(TINYGO) build -size short -o test.hex -target=atmega328pb examples/blinkm
|
||||||
@$(MD5SUM) test.hex
|
@$(MD5SUM) test.hex
|
||||||
|
|
109
src/machine/board_mksnanov3.go
Обычный файл
109
src/machine/board_mksnanov3.go
Обычный файл
|
@ -0,0 +1,109 @@
|
||||||
|
//go:build mksnanov3
|
||||||
|
|
||||||
|
// The MKS Robin Nano V3.X board.
|
||||||
|
// Documented at https://github.com/makerbase-mks/MKS-Robin-Nano-V3.X.
|
||||||
|
|
||||||
|
package machine
|
||||||
|
|
||||||
|
import (
|
||||||
|
"device/stm32"
|
||||||
|
"runtime/interrupt"
|
||||||
|
)
|
||||||
|
|
||||||
|
// LED is also wired to the SD card card detect (CD) pin.
|
||||||
|
const LED = PD12
|
||||||
|
|
||||||
|
// UART pins
|
||||||
|
const (
|
||||||
|
UART_TX_PIN = PB10
|
||||||
|
UART_RX_PIN = PB11
|
||||||
|
)
|
||||||
|
|
||||||
|
// EXP1 and EXP2 expansion ports for connecting
|
||||||
|
// the MKS TS35 V2.0 expansion board.
|
||||||
|
const (
|
||||||
|
BEEPER = EXP1_1
|
||||||
|
|
||||||
|
// LCD pins.
|
||||||
|
LCD_DC = EXP1_8
|
||||||
|
LCD_CS = EXP1_7
|
||||||
|
LCD_RS = EXP1_4
|
||||||
|
LCD_BACKLIGHT = EXP1_3
|
||||||
|
|
||||||
|
// Touch pins. Note that some pins are shared with the
|
||||||
|
// LCD SPI1 interface.
|
||||||
|
TOUCH_CLK = EXP2_2
|
||||||
|
TOUCH_CS = EXP1_5
|
||||||
|
TOUCH_DIN = EXP2_6
|
||||||
|
TOUCH_DOUT = EXP2_1
|
||||||
|
TOUCH_IRQ = EXP1_6
|
||||||
|
|
||||||
|
BUTTON = BUTTON_JOG
|
||||||
|
BUTTON_JOG = EXP1_2
|
||||||
|
BUTTON_JOG_CCW = EXP2_3
|
||||||
|
BUTTON_JOG_CW = EXP2_5
|
||||||
|
|
||||||
|
EXP1_1 = PC5
|
||||||
|
EXP1_2 = PE13
|
||||||
|
EXP1_3 = PD13
|
||||||
|
EXP1_4 = PC6
|
||||||
|
EXP1_5 = PE14
|
||||||
|
EXP1_6 = PE15
|
||||||
|
EXP1_7 = PD11
|
||||||
|
EXP1_8 = PD10
|
||||||
|
|
||||||
|
EXP2_1 = PA6
|
||||||
|
EXP2_2 = PA5
|
||||||
|
EXP2_3 = PE8
|
||||||
|
EXP2_4 = PE10
|
||||||
|
EXP2_5 = PE11
|
||||||
|
EXP2_6 = PA7
|
||||||
|
EXP2_7 = PE12
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
UART3 = &_UART3
|
||||||
|
_UART3 = UART{
|
||||||
|
Buffer: NewRingBuffer(),
|
||||||
|
Bus: stm32.USART3,
|
||||||
|
TxAltFuncSelector: AF7_USART1_2_3,
|
||||||
|
RxAltFuncSelector: AF7_USART1_2_3,
|
||||||
|
}
|
||||||
|
DefaultUART = UART3
|
||||||
|
)
|
||||||
|
|
||||||
|
// set up RX IRQ handler. Follow similar pattern for other UARTx instances
|
||||||
|
func init() {
|
||||||
|
UART3.Interrupt = interrupt.New(stm32.IRQ_USART3, _UART3.handleInterrupt)
|
||||||
|
}
|
||||||
|
|
||||||
|
// SPI pins
|
||||||
|
const (
|
||||||
|
SPI1_SCK_PIN = EXP2_2
|
||||||
|
SPI1_SDI_PIN = EXP2_1
|
||||||
|
SPI1_SDO_PIN = EXP2_6
|
||||||
|
SPI0_SCK_PIN = SPI1_SCK_PIN
|
||||||
|
SPI0_SDI_PIN = SPI1_SDI_PIN
|
||||||
|
SPI0_SDO_PIN = SPI1_SDO_PIN
|
||||||
|
)
|
||||||
|
|
||||||
|
// Since the first interface is named SPI1, both SPI0 and SPI1 refer to SPI1.
|
||||||
|
var (
|
||||||
|
SPI0 = SPI{
|
||||||
|
Bus: stm32.SPI1,
|
||||||
|
AltFuncSelector: AF5_SPI1_SPI2,
|
||||||
|
}
|
||||||
|
SPI1 = &SPI0
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
I2C0_SCL_PIN = PB6
|
||||||
|
I2C0_SDA_PIN = PB7
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
I2C0 = &I2C{
|
||||||
|
Bus: stm32.I2C1,
|
||||||
|
AltFuncSelector: AF4_I2C1_2_3,
|
||||||
|
}
|
||||||
|
)
|
12
targets/mksnanov3.json
Обычный файл
12
targets/mksnanov3.json
Обычный файл
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"inherits": ["cortex-m4"],
|
||||||
|
"build-tags": ["mksnanov3", "stm32f407", "stm32f4", "stm32"],
|
||||||
|
"serial": "uart",
|
||||||
|
"linkerscript": "targets/stm32f407.ld",
|
||||||
|
"extra-files": [
|
||||||
|
"src/device/stm32/stm32f407.s"
|
||||||
|
],
|
||||||
|
"flash-method": "openocd",
|
||||||
|
"openocd-interface": "stlink-v2",
|
||||||
|
"openocd-target": "stm32f4x"
|
||||||
|
}
|
Загрузка…
Создание таблицы
Сослаться в новой задаче