nrf: Remove port member from Pin object

In order to be able to support GPIO1 port on nrf52840
the port has been removed from the Pin object.

All pins on port1 will now be incrementally on top of
the pin numbers for gpio0. Hence, Pin 1.00 will become
P32, and Pin 1.15 will become P47.

The modification is done to address the new gpio HAL
interface in nrfx, which resolves the port to be
configured base on a multiple of 32.

The patch also affects the existing devices which does
not have a second GPIO port in the way that the
port indication A and B is removed from Pin generation.
This means that the port which was earlier addressed
as PA0 is now P0, and PA31 is P31.

Also, this patch removes the gpio member which earlier
pointed to the perihperal GPIO base address. This is not
needed anymore, hence removed.
pull/3137/merge
Glenn Ruben Bakke 2018-03-30 14:20:52 +02:00 zatwierdzone przez Damien George
rodzic 2de65dda22
commit 864f671744
35 zmienionych plików z 466 dodań i 490 usunięć

Wyświetl plik

@ -60,21 +60,21 @@
#define MICROPY_HW_LED1 (20) // LED1 #define MICROPY_HW_LED1 (20) // LED1
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A11) #define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_A12) #define MICROPY_HW_UART1_TX (pin_P12)
#define MICROPY_HW_UART1_HWFC (0) #define MICROPY_HW_UART1_HWFC (0)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A25) // (Arduino D13) #define MICROPY_HW_SPI0_SCK (pin_P25) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_A23) // (Arduino D11) #define MICROPY_HW_SPI0_MOSI (pin_P23) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_A24) // (Arduino D12) #define MICROPY_HW_SPI0_MISO (pin_P24) // (Arduino D12)
#define MICROPY_HW_PWM0_NAME "PWM0" #define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1" #define MICROPY_HW_PWM1_NAME "PWM1"
#define MICROPY_HW_PWM2_NAME "PWM2" #define MICROPY_HW_PWM2_NAME "PWM2"
// buzzer pin // buzzer pin
#define MICROPY_HW_MUSIC_PIN (pin_A8) #define MICROPY_HW_MUSIC_PIN (pin_P8)
#define HELP_TEXT_BOARD_LED "1" #define HELP_TEXT_BOARD_LED "1"

Wyświetl plik

@ -1,30 +1,30 @@
PA2,PA2 P2,P2
PA3,PA3 P3,P3
PA4,PA4 P4,P4
PA5,PA5 P5,P5
PA6,PA6 P6,P6
PA7,PA7 P7,P7
PA8,PA8 P8,P8
PA9,PA9 P9,P9
PA10,PA10 P10,P10
PA11,PA11 P11,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
PA21,PA21 P21,P21
PA22,PA22 P22,P22
PA23,PA23 P23,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28 P28,P28
PA29,PA29 P29,P29
PA30,PA30 P30,P30
PA31,PA31 P31,P31

1 PA2 P2 PA2 P2
2 PA3 P3 PA3 P3
3 PA4 P4 PA4 P4
4 PA5 P5 PA5 P5
5 PA6 P6 PA6 P6
6 PA7 P7 PA7 P7
7 PA8 P8 PA8 P8
8 PA9 P9 PA9 P9
9 PA10 P10 PA10 P10
10 PA11 P11 PA11 P11
11 PA12 P12 PA12 P12
12 PA13 P13 PA13 P13
13 PA14 P14 PA14 P14
14 PA15 P15 PA15 P15
15 PA16 P16 PA16 P16
16 PA17 P17 PA17 P17
17 PA18 P18 PA18 P18
18 PA19 P19 PA19 P19
19 PA20 P20 PA20 P20
20 PA21 P21 PA21 P21
21 PA22 P22 PA22 P22
22 PA23 P23 PA23 P23
23 PA24 P24 PA24 P24
24 PA25 P25 PA25 P25
25 PA26 P26 PA26 P26
26 PA27 P27 PA27 P27
27 PA28 P28 PA28 P28
28 PA29 P29 PA29 P29
29 PA30 P30 PA30 P30
30 PA31 P31 PA31 P31

Wyświetl plik

@ -60,17 +60,17 @@
#define MICROPY_HW_LED2 (19) // LED2 #define MICROPY_HW_LED2 (19) // LED2
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A8) #define MICROPY_HW_UART1_RX (pin_P8)
#define MICROPY_HW_UART1_TX (pin_A6) #define MICROPY_HW_UART1_TX (pin_P6)
#define MICROPY_HW_UART1_CTS (pin_A7) #define MICROPY_HW_UART1_CTS (pin_P7)
#define MICROPY_HW_UART1_RTS (pin_A5) #define MICROPY_HW_UART1_RTS (pin_P5)
#define MICROPY_HW_UART1_HWFC (1) #define MICROPY_HW_UART1_HWFC (1)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A25) #define MICROPY_HW_SPI0_SCK (pin_P25)
#define MICROPY_HW_SPI0_MOSI (pin_A23) #define MICROPY_HW_SPI0_MOSI (pin_P23)
#define MICROPY_HW_SPI0_MISO (pin_A24) #define MICROPY_HW_SPI0_MISO (pin_P24)
#define MICROPY_HW_PWM0_NAME "PWM0" #define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1" #define MICROPY_HW_PWM1_NAME "PWM1"

Wyświetl plik

@ -1,31 +1,31 @@
PA2,PA2 P2,P2
PA3,PA3 P3,P3
PA4,PA4 P4,P4
UART_RTS,PA5 UART_RTS,P5
UART_TX,PA6 UART_TX,P6
UART_CTS,PA7 UART_CTS,P7
UART_RX,PA8 UART_RX,P8
PA9,PA9 P9,P9
PA10,PA10 P10,P10
PA11,PA11 P11,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
PA21,PA21 P21,P21
PA22,PA22 P22,P22
PA23,PA23 P23,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28 P28,P28
PA29,PA29 P29,P29
PA30,PA30 P30,P30
PA31,PA31 P31,P31

1 PA2 P2 PA2 P2
2 PA3 P3 PA3 P3
3 PA4 P4 PA4 P4
4 UART_RTS UART_RTS PA5 P5
5 UART_TX UART_TX PA6 P6
6 UART_CTS UART_CTS PA7 P7
7 UART_RX UART_RX PA8 P8
8 PA9 P9 PA9 P9
9 PA10 P10 PA10 P10
10 PA11 P11 PA11 P11
11 PA12 P12 PA12 P12
12 PA13 P13 PA13 P13
13 PA14 P14 PA14 P14
14 PA15 P15 PA15 P15
15 PA16 P16 PA16 P16
16 PA17 P17 PA17 P17
17 PA18 P18 PA18 P18
18 PA19 P19 PA19 P19
19 PA20 P20 PA20 P20
20 PA21 P21 PA21 P21
21 PA22 P22 PA22 P22
22 PA23 P23 PA23 P23
23 PA24 P24 PA24 P24
24 PA25 P25 PA25 P25
25 PA26 P26 PA26 P26
26 PA27 P27 PA27 P27
27 PA28 P28 PA28 P28
28 PA29 P29 PA29 P29
29 PA30 P30 PA30 P30
30 PA31 P31 PA31 P31
31

Wyświetl plik

@ -60,15 +60,15 @@
#define MICROPY_HW_LED2 (19) // LED2 #define MICROPY_HW_LED2 (19) // LED2
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A8) #define MICROPY_HW_UART1_RX (pin_P8)
#define MICROPY_HW_UART1_TX (pin_A6) #define MICROPY_HW_UART1_TX (pin_P6)
#define MICROPY_HW_UART1_HWFC (0) #define MICROPY_HW_UART1_HWFC (0)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A12) // (Arduino D13) #define MICROPY_HW_SPI0_SCK (pin_P12) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_A13) // (Arduino D11) #define MICROPY_HW_SPI0_MOSI (pin_P13) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_A14) // (Arduino D12) #define MICROPY_HW_SPI0_MISO (pin_P14) // (Arduino D12)
#define MICROPY_HW_PWM0_NAME "PWM0" #define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1" #define MICROPY_HW_PWM1_NAME "PWM1"

Wyświetl plik

@ -1,25 +1,25 @@
PA2,PA2,ADC0_IN0 P2,P2,ADC0_IN0
PA3,PA3,ADC0_IN1 P3,P3,ADC0_IN1
PA4,PA4,ADC0_IN2 P4,P4,ADC0_IN2
PA5,PA5,ADC0_IN3 P5,P5,ADC0_IN3
UART_TX,PA6 UART_TX,P6
PA7,PA7 P7,P7
UART_RX,PA8 UART_RX,P8
NFC1,PA9 NFC1,P9
NFC2,PA10 NFC2,P10
PA11,PA11 P11,P11
SPI_SCK,PA12 SPI_SCK,P12
SPI_MOSI,PA13 SPI_MOSI,P13
SPI_MISO,PA14 SPI_MISO,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
LED1,PA17 LED1,P17
LED2,PA19 LED2,P19
PA20,PA20 P20,P20
I2C_SDA,PA25 I2C_SDA,P25
I2C_SCL,PA26 I2C_SCL,P26
PA27,PA27 P27,P27
PA28,PA28,ADC0_IN4 P28,P28,ADC0_IN4
PA29,PA29,ADC0_IN5 P29,P29,ADC0_IN5
PA30,PA30,ADC0_IN6 P30,P30,ADC0_IN6
PA31,PA31,ADC0_IN7 P31,P31,ADC0_IN7

1 PA2,PA2,ADC0_IN0 P2,P2,ADC0_IN0
2 PA3,PA3,ADC0_IN1 P3,P3,ADC0_IN1
3 PA4,PA4,ADC0_IN2 P4,P4,ADC0_IN2
4 PA5,PA5,ADC0_IN3 P5,P5,ADC0_IN3
5 UART_TX,PA6 UART_TX,P6
6 PA7,PA7 P7,P7
7 UART_RX,PA8 UART_RX,P8
8 NFC1,PA9 NFC1,P9
9 NFC2,PA10 NFC2,P10
10 PA11,PA11 P11,P11
11 SPI_SCK,PA12 SPI_SCK,P12
12 SPI_MOSI,PA13 SPI_MOSI,P13
13 SPI_MISO,PA14 SPI_MISO,P14
14 PA15,PA15 P15,P15
15 PA16,PA16 P16,P16
16 LED1,PA17 LED1,P17
17 LED2,PA19 LED2,P19
18 PA20,PA20 P20,P20
19 I2C_SDA,PA25 I2C_SDA,P25
20 I2C_SCL,PA26 I2C_SCL,P26
21 PA27,PA27 P27,P27
22 PA28,PA28,ADC0_IN4 P28,P28,ADC0_IN4
23 PA29,PA29,ADC0_IN5 P29,P29,ADC0_IN5
24 PA30,PA30,ADC0_IN6 P30,P30,ADC0_IN6
25 PA31,PA31,ADC0_IN7 P31,P31,ADC0_IN7

Wyświetl plik

@ -11,19 +11,16 @@ SUPPORTED_FN = {
'UART' : ['RX', 'TX', 'CTS', 'RTS'] 'UART' : ['RX', 'TX', 'CTS', 'RTS']
} }
def parse_port_pin(name_str): def parse_pin(name_str):
"""Parses a string and returns a (port-num, pin-num) tuple.""" """Parses a string and returns a pin-num."""
if len(name_str) < 3: if len(name_str) < 1:
raise ValueError("Expecting pin name to be at least 4 charcters.") raise ValueError("Expecting pin name to be at least 4 charcters.")
if name_str[0] != 'P': if name_str[0] != 'P':
raise ValueError("Expecting pin name to start with P") raise ValueError("Expecting pin name to start with P")
if name_str[1] not in ('A', 'B'): pin_str = name_str[1:].split('/')[0]
raise ValueError("Expecting pin port to be in A or B")
port = ord(name_str[1]) - ord('A')
pin_str = name_str[2:].split('/')[0]
if not pin_str.isdigit(): if not pin_str.isdigit():
raise ValueError("Expecting numeric pin number.") raise ValueError("Expecting numeric pin number.")
return (port, int(pin_str)) return int(pin_str)
def split_name_num(name_num): def split_name_num(name_num):
num = None num = None
@ -89,8 +86,7 @@ class AlternateFunction(object):
class Pin(object): class Pin(object):
"""Holds the information associated with a pin.""" """Holds the information associated with a pin."""
def __init__(self, port, pin): def __init__(self, pin):
self.port = port
self.pin = pin self.pin = pin
self.alt_fn = [] self.alt_fn = []
self.alt_fn_count = 0 self.alt_fn_count = 0
@ -98,11 +94,8 @@ class Pin(object):
self.adc_channel = 0 self.adc_channel = 0
self.board_pin = False self.board_pin = False
def port_letter(self):
return chr(self.port + ord('A'))
def cpu_pin_name(self): def cpu_pin_name(self):
return '{:s}{:d}'.format(self.port_letter(), self.pin) return '{:s}{:d}'.format("P", self.pin)
def is_board_pin(self): def is_board_pin(self):
return self.board_pin return self.board_pin
@ -157,8 +150,8 @@ class Pin(object):
print("// ", end='') print("// ", end='')
print('};') print('};')
print('') print('')
print('const pin_obj_t pin_{:s} = PIN({:s}, {:d}, {:s}, {:s}, {:d});'.format( print('const pin_obj_t pin_{:s} = PIN({:d}, {:s}, {:s}, {:d});'.format(
self.cpu_pin_name(), self.port_letter(), self.pin, self.cpu_pin_name(), self.pin,
self.alt_fn_name(null_if_0=True), self.alt_fn_name(null_if_0=True),
self.adc_num_str(), self.adc_channel)) self.adc_num_str(), self.adc_channel))
print('') print('')
@ -197,10 +190,10 @@ class Pins(object):
self.cpu_pins = [] # list of NamedPin objects self.cpu_pins = [] # list of NamedPin objects
self.board_pins = [] # list of NamedPin objects self.board_pins = [] # list of NamedPin objects
def find_pin(self, port_num, pin_num): def find_pin(self, pin_num):
for named_pin in self.cpu_pins: for named_pin in self.cpu_pins:
pin = named_pin.pin() pin = named_pin.pin()
if pin.port == port_num and pin.pin == pin_num: if pin.pin == pin_num:
return pin return pin
def parse_af_file(self, filename, pinname_col, af_col, af_col_end): def parse_af_file(self, filename, pinname_col, af_col, af_col_end):
@ -208,10 +201,10 @@ class Pins(object):
rows = csv.reader(csvfile) rows = csv.reader(csvfile)
for row in rows: for row in rows:
try: try:
(port_num, pin_num) = parse_port_pin(row[pinname_col]) pin_num = parse_pin(row[pinname_col])
except: except:
continue continue
pin = Pin(port_num, pin_num) pin = Pin(pin_num)
for af_idx in range(af_col, len(row)): for af_idx in range(af_col, len(row)):
if af_idx < af_col_end: if af_idx < af_col_end:
pin.parse_af(af_idx - af_col, row[af_idx]) pin.parse_af(af_idx - af_col, row[af_idx])
@ -224,10 +217,10 @@ class Pins(object):
rows = csv.reader(csvfile) rows = csv.reader(csvfile)
for row in rows: for row in rows:
try: try:
(port_num, pin_num) = parse_port_pin(row[1]) pin_num = parse_pin(row[1])
except: except:
continue continue
pin = self.find_pin(port_num, pin_num) pin = self.find_pin(pin_num)
if pin: if pin:
pin.set_is_board_pin() pin.set_is_board_pin()
self.board_pins.append(NamedPin(row[0], pin)) self.board_pins.append(NamedPin(row[0], pin))

Wyświetl plik

@ -56,15 +56,15 @@
#define MICROPY_HW_ENABLE_CAN (0) #define MICROPY_HW_ENABLE_CAN (0)
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A25) #define MICROPY_HW_UART1_RX (pin_P25)
#define MICROPY_HW_UART1_TX (pin_A24) #define MICROPY_HW_UART1_TX (pin_P24)
#define MICROPY_HW_UART1_HWFC (0) #define MICROPY_HW_UART1_HWFC (0)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A23) #define MICROPY_HW_SPI0_SCK (pin_P23)
#define MICROPY_HW_SPI0_MOSI (pin_A21) #define MICROPY_HW_SPI0_MOSI (pin_P21)
#define MICROPY_HW_SPI0_MISO (pin_A22) #define MICROPY_HW_SPI0_MISO (pin_P22)
// micro:bit music pin // micro:bit music pin
#define MICROPY_HW_MUSIC_PIN (pin_A3) #define MICROPY_HW_MUSIC_PIN (pin_P3)

Wyświetl plik

@ -1,32 +1,32 @@
I2C_SCL,PA0 I2C_SCL,P0
PA1,PA1 P1,P1
PA2,PA2 P2,P2
PA3,PA3 P3,P3
PA4,PA4 P4,P4
PA5,PA5 P5,P5
PA6,PA6 P6,P6
PA7,PA7 P7,P7
UART_RTS,PA8 UART_RTS,P8
UART_TX,PA9 UART_TX,P9
UART_CTS,PA10 UART_CTS,P10
UART_RX,PA11 UART_RX,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
SPI_MOSI,PA21 SPI_MOSI,P21
SPI_MISO,PA22 SPI_MISO,P22
SPI_SCK,PA23 SPI_SCK,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28 P28,P28
PA29,PA29 P29,P29
I2C_SDA,PA30 I2C_SDA,P30
PA31,PA31 P31,P31

1 I2C_SCL PA0 P0
2 PA1 P1 PA1 P1
3 PA2 P2 PA2 P2
4 PA3 P3 PA3 P3
5 PA4 P4 PA4 P4
6 PA5 P5 PA5 P5
7 PA6 P6 PA6 P6
8 PA7 P7 PA7 P7
9 UART_RTS PA8 P8
10 UART_TX PA9 P9
11 UART_CTS PA10 P10
12 UART_RX PA11 P11
13 PA12 P12 PA12 P12
14 PA13 P13 PA13 P13
15 PA14 P14 PA14 P14
16 PA15 P15 PA15 P15
17 PA16 P16 PA16 P16
18 PA17 P17 PA17 P17
19 PA18 P18 PA18 P18
20 PA19 P19 PA19 P19
21 PA20 P20 PA20 P20
22 SPI_MOSI PA21 P21
23 SPI_MISO PA22 P22
24 SPI_SCK PA23 P23
25 PA24 P24 PA24 P24
26 PA25 P25 PA25 P25
27 PA26 P26 PA26 P26
28 PA27 P27 PA27 P27
29 PA28 P28 PA28 P28
30 PA29 P29 PA29 P29
31 I2C_SDA PA30 P30
32 PA31 P31 PA31 P31

Wyświetl plik

@ -17,14 +17,12 @@
.af_fn = (af_ptr) \ .af_fn = (af_ptr) \
} }
#define PIN(p_port, p_pin, p_af, p_adc_num, p_adc_channel) \ #define PIN(p_pin, p_af, p_adc_num, p_adc_channel) \
{ \ { \
{ &pin_type }, \ { &pin_type }, \
.name = MP_QSTR_ ## p_port ## p_pin, \ .name = MP_QSTR_P ## p_pin, \
.port = PORT_ ## p_port, \
.pin = (p_pin), \ .pin = (p_pin), \
.num_af = (sizeof(p_af) / sizeof(pin_af_obj_t)), \ .num_af = (sizeof(p_af) / sizeof(pin_af_obj_t)), \
.pin_mask = (1 << p_pin), \
.af = p_af, \ .af = p_af, \
.adc_num = p_adc_num, \ .adc_num = p_adc_num, \
.adc_channel = p_adc_channel, \ .adc_channel = p_adc_channel, \

Wyświetl plik

@ -17,14 +17,12 @@
.af_fn = (af_ptr) \ .af_fn = (af_ptr) \
} }
#define PIN(p_port, p_pin, p_af, p_adc_num, p_adc_channel) \ #define PIN(p_pin, p_af, p_adc_num, p_adc_channel) \
{ \ { \
{ &pin_type }, \ { &pin_type }, \
.name = MP_QSTR_ ## p_port ## p_pin, \ .name = MP_QSTR_P ## p_pin, \
.port = PORT_ ## p_port, \
.pin = (p_pin), \ .pin = (p_pin), \
.num_af = (sizeof(p_af) / sizeof(pin_af_obj_t)), \ .num_af = (sizeof(p_af) / sizeof(pin_af_obj_t)), \
.pin_mask = (1 << p_pin), \
.af = p_af, \ .af = p_af, \
.adc_num = p_adc_num, \ .adc_num = p_adc_num, \
.adc_channel = p_adc_channel, \ .adc_channel = p_adc_channel, \

Wyświetl plik

@ -60,8 +60,8 @@
#define MICROPY_HW_LED_BLUE (23) // BLUE #define MICROPY_HW_LED_BLUE (23) // BLUE
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A11) #define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_A9) #define MICROPY_HW_UART1_TX (pin_P9)
#define MICROPY_HW_UART1_HWFC (0) #define MICROPY_HW_UART1_HWFC (0)
#define HELP_TEXT_BOARD_LED "1,2,3" #define HELP_TEXT_BOARD_LED "1,2,3"

Wyświetl plik

@ -1,7 +1,7 @@
UART_RTS,PA8 UART_RTS,P8
UART_TX,PA9 UART_TX,P9
UART_CTS,PA10 UART_CTS,P10
UART_RX,PA11 UART_RX,P11
LED_RED,PA21 LED_RED,P21
LED_GREEN,PA22 LED_GREEN,P22
LED_BLUE,PA23 LED_BLUE,P23

1 UART_RTS PA8 P8
2 UART_TX PA9 P9
3 UART_CTS PA10 P10
4 UART_RX PA11 P11
5 LED_RED PA21 P21
6 LED_GREEN PA22 P22
7 LED_BLUE PA23 P23

Wyświetl plik

@ -60,10 +60,10 @@
#define MICROPY_HW_LED2 (19) // LED2 #define MICROPY_HW_LED2 (19) // LED2
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A11) #define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_A9) #define MICROPY_HW_UART1_TX (pin_P9)
#define MICROPY_HW_UART1_CTS (pin_A10) #define MICROPY_HW_UART1_CTS (pin_P10)
#define MICROPY_HW_UART1_RTS (pin_A8) #define MICROPY_HW_UART1_RTS (pin_P8)
#define MICROPY_HW_UART1_HWFC (0) #define MICROPY_HW_UART1_HWFC (0)
#define HELP_TEXT_BOARD_LED "1,2" #define HELP_TEXT_BOARD_LED "1,2"

Wyświetl plik

@ -1,32 +1,32 @@
PA0,PA0 P0,P0
PA1,PA1 P1,P1
PA2,PA2 P2,P2
PA3,PA3 P3,P3
PA4,PA4 P4,P4
PA5,PA5 P5,P5
PA6,PA6 P6,P6
PA7,PA7 P7,P7
UART_RTS,PA8 UART_RTS,P8
UART_TX,PA9 UART_TX,P9
UART_CTS,PA10 UART_CTS,P10
UART_RX,PA11 UART_RX,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
PA21,PA21 P21,P21
PA22,PA22 P22,P22
PA23,PA23 P23,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28 P28,P28
PA29,PA29 P29,P29
PA30,PA30 P30,P30
PA31,PA31 P31,P31

1 PA0 P0 PA0 P0
2 PA1 P1 PA1 P1
3 PA2 P2 PA2 P2
4 PA3 P3 PA3 P3
5 PA4 P4 PA4 P4
6 PA5 P5 PA5 P5
7 PA6 P6 PA6 P6
8 PA7 P7 PA7 P7
9 UART_RTS UART_RTS PA8 P8
10 UART_TX UART_TX PA9 P9
11 UART_CTS UART_CTS PA10 P10
12 UART_RX UART_RX PA11 P11
13 PA12 P12 PA12 P12
14 PA13 P13 PA13 P13
15 PA14 P14 PA14 P14
16 PA15 P15 PA15 P15
17 PA16 P16 PA16 P16
18 PA17 P17 PA17 P17
19 PA18 P18 PA18 P18
20 PA19 P19 PA19 P19
21 PA20 P20 PA20 P20
22 PA21 P21 PA21 P21
23 PA22 P22 PA22 P22
24 PA23 P23 PA23 P23
25 PA24 P24 PA24 P24
26 PA25 P25 PA25 P25
27 PA26 P26 PA26 P26
28 PA27 P27 PA27 P27
29 PA28 P28 PA28 P28
30 PA29 P29 PA29 P29
31 PA30 P30 PA30 P30
32 PA31 P31 PA31 P31

Wyświetl plik

@ -61,16 +61,16 @@
#define MICROPY_HW_LED4 (24) // LED4 #define MICROPY_HW_LED4 (24) // LED4
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A11) #define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_A9) #define MICROPY_HW_UART1_TX (pin_P9)
#define MICROPY_HW_UART1_CTS (pin_A10) #define MICROPY_HW_UART1_CTS (pin_P10)
#define MICROPY_HW_UART1_RTS (pin_A8) #define MICROPY_HW_UART1_RTS (pin_P8)
#define MICROPY_HW_UART1_HWFC (1) #define MICROPY_HW_UART1_HWFC (1)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A29) #define MICROPY_HW_SPI0_SCK (pin_P29)
#define MICROPY_HW_SPI0_MOSI (pin_A25) #define MICROPY_HW_SPI0_MOSI (pin_P25)
#define MICROPY_HW_SPI0_MISO (pin_A28) #define MICROPY_HW_SPI0_MISO (pin_P28)
#define HELP_TEXT_BOARD_LED "1,2,3,4" #define HELP_TEXT_BOARD_LED "1,2,3,4"

Wyświetl plik

@ -1,32 +1,32 @@
PA0,PA0 P0,P0
PA1,PA1,ADC0_IN2 P1,P1,ADC0_IN2
PA2,PA2,ADC0_IN3 P2,P2,ADC0_IN3
PA3,PA3,ADC0_IN4 P3,P3,ADC0_IN4
PA4,PA4,ADC0_IN5 P4,P4,ADC0_IN5
PA5,PA5,ADC0_IN6 P5,P5,ADC0_IN6
PA6,PA6,ADC0_IN7 P6,P6,ADC0_IN7
PA7,PA7 P7,P7
UART_RTS,PA8 UART_RTS,P8
UART_TX,PA9 UART_TX,P9
UART_CTS,PA10 UART_CTS,P10
UART_RX,PA11 UART_RX,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
PA21,PA21 P21,P21
PA22,PA22 P22,P22
PA23,PA23 P23,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28 P28,P28
PA29,PA29 P29,P29
PA30,PA30 P30,P30
PA31,PA31 P31,P31

1 PA0,PA0 P0,P0
2 PA1,PA1,ADC0_IN2 P1,P1,ADC0_IN2
3 PA2,PA2,ADC0_IN3 P2,P2,ADC0_IN3
4 PA3,PA3,ADC0_IN4 P3,P3,ADC0_IN4
5 PA4,PA4,ADC0_IN5 P4,P4,ADC0_IN5
6 PA5,PA5,ADC0_IN6 P5,P5,ADC0_IN6
7 PA6,PA6,ADC0_IN7 P6,P6,ADC0_IN7
8 PA7,PA7 P7,P7
9 UART_RTS,PA8 UART_RTS,P8
10 UART_TX,PA9 UART_TX,P9
11 UART_CTS,PA10 UART_CTS,P10
12 UART_RX,PA11 UART_RX,P11
13 PA12,PA12 P12,P12
14 PA13,PA13 P13,P13
15 PA14,PA14 P14,P14
16 PA15,PA15 P15,P15
17 PA16,PA16 P16,P16
18 PA17,PA17 P17,P17
19 PA18,PA18 P18,P18
20 PA19,PA19 P19,P19
21 PA20,PA20 P20,P20
22 PA21,PA21 P21,P21
23 PA22,PA22 P22,P22
24 PA23,PA23 P23,P23
25 PA24,PA24 P24,P24
26 PA25,PA25 P25,P25
27 PA26,PA26 P26,P26
28 PA27,PA27 P27,P27
29 PA28,PA28 P28,P28
30 PA29,PA29 P29,P29
31 PA30,PA30 P30,P30
32 PA31,PA31 P31,P31

Wyświetl plik

@ -60,16 +60,16 @@
#define MICROPY_HW_LED_BLUE (23) // BLUE #define MICROPY_HW_LED_BLUE (23) // BLUE
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A11) #define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_A9) #define MICROPY_HW_UART1_TX (pin_P9)
#define MICROPY_HW_UART1_CTS (pin_A10) #define MICROPY_HW_UART1_CTS (pin_P10)
#define MICROPY_HW_UART1_RTS (pin_A8) #define MICROPY_HW_UART1_RTS (pin_P8)
#define MICROPY_HW_UART1_HWFC (0) #define MICROPY_HW_UART1_HWFC (0)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A15) #define MICROPY_HW_SPI0_SCK (pin_P15)
#define MICROPY_HW_SPI0_MOSI (pin_A16) #define MICROPY_HW_SPI0_MOSI (pin_P16)
#define MICROPY_HW_SPI0_MISO (pin_A17) #define MICROPY_HW_SPI0_MISO (pin_P17)
#define HELP_TEXT_BOARD_LED "1,2,3" #define HELP_TEXT_BOARD_LED "1,2,3"

Wyświetl plik

@ -1,13 +1,13 @@
UART_RTS,PA8 UART_RTS,P8
UART_TX,PA9 UART_TX,P9
UART_CTS,PA10 UART_CTS,P10
UART_RX,PA11 UART_RX,P11
LED_RED,PA21 LED_RED,P21
LED_GREEN,PA22 LED_GREEN,P22
LED_BLUE,PA23 LED_BLUE,P23
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20

1 UART_RTS PA8 P8
2 UART_TX PA9 P9
3 UART_CTS PA10 P10
4 UART_RX PA11 P11
5 LED_RED PA21 P21
6 LED_GREEN PA22 P22
7 LED_BLUE PA23 P23
8 PA15 P15 PA15 P15
9 PA16 P16 PA16 P16
10 PA17 P17 PA17 P17
11 PA18 P18 PA18 P18
12 PA19 P19 PA19 P19
13 PA20 P20 PA20 P20

Wyświetl plik

@ -63,17 +63,17 @@
#define MICROPY_HW_LED4 (20) // LED4 #define MICROPY_HW_LED4 (20) // LED4
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A8) #define MICROPY_HW_UART1_RX (pin_P8)
#define MICROPY_HW_UART1_TX (pin_A6) #define MICROPY_HW_UART1_TX (pin_P6)
#define MICROPY_HW_UART1_CTS (pin_A7) #define MICROPY_HW_UART1_CTS (pin_P7)
#define MICROPY_HW_UART1_RTS (pin_A5) #define MICROPY_HW_UART1_RTS (pin_P5)
#define MICROPY_HW_UART1_HWFC (1) #define MICROPY_HW_UART1_HWFC (1)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A25) // (Arduino D13) #define MICROPY_HW_SPI0_SCK (pin_P25) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_A23) // (Arduino D11) #define MICROPY_HW_SPI0_MOSI (pin_P23) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_A24) // (Arduino D12) #define MICROPY_HW_SPI0_MISO (pin_P24) // (Arduino D12)
#define MICROPY_HW_PWM0_NAME "PWM0" #define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1" #define MICROPY_HW_PWM1_NAME "PWM1"

Wyświetl plik

@ -1,30 +1,30 @@
PA2,PA2 P2,P2
PA3,PA3 P3,P3
PA4,PA4 P4,P4
PA5,PA5 P5,P5
PA6,PA6 P6,P6
PA7,PA7 P7,P7
PA8,PA8 P8,P8
PA9,PA9 P9,P9
PA10,PA10 P10,P10
PA11,PA11 P11,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
PA21,PA21 P21,P21
PA22,PA22 P22,P22
PA23,PA23 P23,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28 P28,P28
PA29,PA29 P29,P29
PA30,PA30 P30,P30
PA31,PA31 P31,P31

1 PA2 P2 PA2 P2
2 PA3 P3 PA3 P3
3 PA4 P4 PA4 P4
4 PA5 P5 PA5 P5
5 PA6 P6 PA6 P6
6 PA7 P7 PA7 P7
7 PA8 P8 PA8 P8
8 PA9 P9 PA9 P9
9 PA10 P10 PA10 P10
10 PA11 P11 PA11 P11
11 PA12 P12 PA12 P12
12 PA13 P13 PA13 P13
13 PA14 P14 PA14 P14
14 PA15 P15 PA15 P15
15 PA16 P16 PA16 P16
16 PA17 P17 PA17 P17
17 PA18 P18 PA18 P18
18 PA19 P19 PA19 P19
19 PA20 P20 PA20 P20
20 PA21 P21 PA21 P21
21 PA22 P22 PA22 P22
22 PA23 P23 PA23 P23
23 PA24 P24 PA24 P24
24 PA25 P25 PA25 P25
25 PA26 P26 PA26 P26
26 PA27 P27 PA27 P27
27 PA28 P28 PA28 P28
28 PA29 P29 PA29 P29
29 PA30 P30 PA30 P30
30 PA31 P31 PA31 P31

Wyświetl plik

@ -62,18 +62,18 @@
#define MICROPY_HW_LED4 (16) // LED4 #define MICROPY_HW_LED4 (16) // LED4
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A8) #define MICROPY_HW_UART1_RX (pin_P8)
#define MICROPY_HW_UART1_TX (pin_A6) #define MICROPY_HW_UART1_TX (pin_P6)
#define MICROPY_HW_UART1_CTS (pin_A7) #define MICROPY_HW_UART1_CTS (pin_P7)
#define MICROPY_HW_UART1_RTS (pin_A5) #define MICROPY_HW_UART1_RTS (pin_P5)
#define MICROPY_HW_UART1_HWFC (1) #define MICROPY_HW_UART1_HWFC (1)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_B15) #define MICROPY_HW_SPI0_SCK (pin_P47)
#define MICROPY_HW_SPI0_MOSI (pin_B13) #define MICROPY_HW_SPI0_MOSI (pin_P45)
#define MICROPY_HW_SPI0_MISO (pin_B14) #define MICROPY_HW_SPI0_MISO (pin_P46)
#define MICROPY_HW_PWM0_NAME "PWM0" #define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1" #define MICROPY_HW_PWM1_NAME "PWM1"

Wyświetl plik

@ -1,48 +1,48 @@
PA0,PA0 P0,P0
PA1,PA1 P1,P1
PA2,PA2,ADC0_IN0 P2,P2,ADC0_IN0
PA3,PA3,ADC0_IN1 P3,P3,ADC0_IN1
PA4,PA4,ADC0_IN2 P4,P4,ADC0_IN2
PA5,PA5,ADC0_IN3 P5,P5,ADC0_IN3
PA6,PA6 P6,P6
PA7,PA7 P7,P7
PA8,PA8 P8,P8
PA9,PA9 P9,P9
PA10,PA10 P10,P10
PA11,PA11 P11,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
PA21,PA21 P21,P21
PA22,PA22 P22,P22
PA23,PA23 P23,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28,ADC0_IN4 P28,P28,ADC0_IN4
PA29,PA29,ADC0_IN5 P29,P29,ADC0_IN5
PA30,PA30,ADC0_IN6 P30,P30,ADC0_IN6
PA31,PA31,ADC0_IN7 P31,P31,ADC0_IN7
PB0,PB0 P32,P32
PB1,PB1 P33,P33
PB2,PB2 P34,P34
PB3,PB3 P35,P35
PB4,PB4 P36,P36
PB5,PB5 P37,P37
PB6,PB6 P38,P38
PB7,PB7 P39,P39
PB8,PB8 P40,P40
PB9,PB9 P41,P41
PB10,PB10 P42,P42
PB11,PB11 P43,P43
PB12,PB12 P44,P44
PB13,PB13 P45,P45
PB14,PB14 P46,P46
PB15,PB15 P47,P47

1 PA0,PA0 P0,P0
2 PA1,PA1 P1,P1
3 PA2,PA2,ADC0_IN0 P2,P2,ADC0_IN0
4 PA3,PA3,ADC0_IN1 P3,P3,ADC0_IN1
5 PA4,PA4,ADC0_IN2 P4,P4,ADC0_IN2
6 PA5,PA5,ADC0_IN3 P5,P5,ADC0_IN3
7 PA6,PA6 P6,P6
8 PA7,PA7 P7,P7
9 PA8,PA8 P8,P8
10 PA9,PA9 P9,P9
11 PA10,PA10 P10,P10
12 PA11,PA11 P11,P11
13 PA12,PA12 P12,P12
14 PA13,PA13 P13,P13
15 PA14,PA14 P14,P14
16 PA15,PA15 P15,P15
17 PA16,PA16 P16,P16
18 PA17,PA17 P17,P17
19 PA18,PA18 P18,P18
20 PA19,PA19 P19,P19
21 PA20,PA20 P20,P20
22 PA21,PA21 P21,P21
23 PA22,PA22 P22,P22
24 PA23,PA23 P23,P23
25 PA24,PA24 P24,P24
26 PA25,PA25 P25,P25
27 PA26,PA26 P26,P26
28 PA27,PA27 P27,P27
29 PA28,PA28,ADC0_IN4 P28,P28,ADC0_IN4
30 PA29,PA29,ADC0_IN5 P29,P29,ADC0_IN5
31 PA30,PA30,ADC0_IN6 P30,P30,ADC0_IN6
32 PA31,PA31,ADC0_IN7 P31,P31,ADC0_IN7
33 PB0,PB0 P32,P32
34 PB1,PB1 P33,P33
35 PB2,PB2 P34,P34
36 PB3,PB3 P35,P35
37 PB4,PB4 P36,P36
38 PB5,PB5 P37,P37
39 PB6,PB6 P38,P38
40 PB7,PB7 P39,P39
41 PB8,PB8 P40,P40
42 PB9,PB9 P41,P41
43 PB10,PB10 P42,P42
44 PB11,PB11 P43,P43
45 PB12,PB12 P44,P44
46 PB13,PB13 P45,P45
47 PB14,PB14 P46,P46
48 PB15,PB15 P47,P47

Wyświetl plik

@ -55,12 +55,12 @@
#define MICROPY_HW_ENABLE_CAN (0) #define MICROPY_HW_ENABLE_CAN (0)
// UART config // UART config
#define MICROPY_HW_UART1_RX (pin_A1) #define MICROPY_HW_UART1_RX (pin_P1)
#define MICROPY_HW_UART1_TX (pin_A2) #define MICROPY_HW_UART1_TX (pin_P2)
#define MICROPY_HW_UART1_HWFC (0) #define MICROPY_HW_UART1_HWFC (0)
// SPI0 config // SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0" #define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A9) #define MICROPY_HW_SPI0_SCK (pin_P9)
#define MICROPY_HW_SPI0_MOSI (pin_A10) #define MICROPY_HW_SPI0_MOSI (pin_P10)
#define MICROPY_HW_SPI0_MISO (pin_A13) #define MICROPY_HW_SPI0_MISO (pin_P13)

Wyświetl plik

@ -1,7 +1,7 @@
PA1,PA1 P1,P1
PA2,PA2 P2,P2
PA3,PA3 P3,P3
PA4,PA4 P4,P4
PA9,PA9 P9,P9
PA10,PA10 P10,P10
PA13,PA13 P13,P13

1 PA1 P1 PA1 P1
2 PA2 P2 PA2 P2
3 PA3 P3 PA3 P3
4 PA4 P4 PA4 P4
5 PA9 P9 PA9 P9
6 PA10 P10 PA10 P10
7 PA13 P13 PA13 P13

Wyświetl plik

@ -25,7 +25,7 @@ from machine import SPI, Pin
from sdcard import SDCard from sdcard import SDCard
def mnt(): def mnt():
cs = Pin("A22", mode=Pin.OUT) cs = Pin("P22", mode=Pin.OUT)
sd = SDCard(SPI(0), cs) sd = SDCard(SPI(0), cs)
os.mount(sd, '/') os.mount(sd, '/')

Wyświetl plik

@ -1,8 +1,8 @@
# #
# Example usage where "A3" is the Buzzer pin. # Example usage where "P3" is the Buzzer pin.
# #
# from musictest import play # from musictest import play
# play("A3") # play("P3")
# #
from machine import Pin from machine import Pin

Wyświetl plik

@ -3,13 +3,13 @@ from machine import PWM, Pin
def pulse(): def pulse():
for i in range(0, 101): for i in range(0, 101):
p = PWM(0, Pin("A17", mode=Pin.OUT), freq=PWM.FREQ_16MHZ, duty=i, period=16000) p = PWM(0, Pin("P17", mode=Pin.OUT), freq=PWM.FREQ_16MHZ, duty=i, period=16000)
p.init() p.init()
time.sleep_ms(10) time.sleep_ms(10)
p.deinit() p.deinit()
for i in range(0, 101): for i in range(0, 101):
p = PWM(0, Pin("A17", mode=Pin.OUT), freq=PWM.FREQ_16MHZ, duty=100-i, period=16000) p = PWM(0, Pin("P17", mode=Pin.OUT), freq=PWM.FREQ_16MHZ, duty=100-i, period=16000)
p.init() p.init()
time.sleep_ms(10) time.sleep_ms(10)
p.deinit() p.deinit()

Wyświetl plik

@ -30,7 +30,7 @@ class Servo():
if pin_name: if pin_name:
self.pin = Pin(pin_name, mode=Pin.OUT, pull=Pin.PULL_DOWN) self.pin = Pin(pin_name, mode=Pin.OUT, pull=Pin.PULL_DOWN)
else: else:
self.pin = Pin("A22", mode=Pin.OUT, pull=Pin.PULL_DOWN) self.pin = Pin("P22", mode=Pin.OUT, pull=Pin.PULL_DOWN)
def left(self): def left(self):
p = PWM(0, self.pin, freq=PWM.FREQ_125KHZ, pulse_width=105, period=2500, mode=PWM.MODE_HIGH_LOW) p = PWM(0, self.pin, freq=PWM.FREQ_125KHZ, pulse_width=105, period=2500, mode=PWM.MODE_HIGH_LOW)
p.init() p.init()

Wyświetl plik

@ -28,8 +28,8 @@
# Examples is written for nrf52832, pca10040 using s132 bluetooth stack. # Examples is written for nrf52832, pca10040 using s132 bluetooth stack.
# #
# Joystick shield pin mapping: # Joystick shield pin mapping:
# - analog stick x-direction - ADC0 - P0.02/"A02" # - analog stick x-direction - ADC0 - P0.02/"P2"
# - buttons P0.13 - P0.16 / "A13", "A14", "A15", "A16" # - buttons P0.13 - P0.16 / "P13", "P14", "P15", "P16"
# #
# Example usage: # Example usage:
# #
@ -70,10 +70,10 @@ class PowerUp3:
def __init__(self): def __init__(self):
self.x_adc = ADC(1) self.x_adc = ADC(1)
self.btn_speed_up = Pin("A13", mode=Pin.IN, pull=Pin.PULL_UP) self.btn_speed_up = Pin("P13", mode=Pin.IN, pull=Pin.PULL_UP)
self.btn_speed_down = Pin("A15", mode=Pin.IN, pull=Pin.PULL_UP) self.btn_speed_down = Pin("P15", mode=Pin.IN, pull=Pin.PULL_UP)
self.btn_speed_full = Pin("A14", mode=Pin.IN, pull=Pin.PULL_UP) self.btn_speed_full = Pin("P14", mode=Pin.IN, pull=Pin.PULL_UP)
self.btn_speed_off = Pin("A16", mode=Pin.IN, pull=Pin.PULL_UP) self.btn_speed_off = Pin("P16", mode=Pin.IN, pull=Pin.PULL_UP)
self.x_mid = 0 self.x_mid = 0

Wyświetl plik

@ -52,7 +52,7 @@ from machine import SPI, Pin
from sdcard import SDCard from sdcard import SDCard
def mount_tf(self, mount_point="/"): def mount_tf(self, mount_point="/"):
sd = SDCard(SPI(0), Pin("A15", mode=Pin.OUT)) sd = SDCard(SPI(0), Pin("P15", mode=Pin.OUT))
os.mount(sd, mount_point) os.mount(sd, mount_point)
class ILI9341: class ILI9341:
@ -65,9 +65,9 @@ class ILI9341:
self.spi = SPI(0) self.spi = SPI(0)
# chip select # chip select
self.cs = Pin("A16", mode=Pin.OUT, pull=Pin.PULL_UP) self.cs = Pin("P16", mode=Pin.OUT, pull=Pin.PULL_UP)
# command # command
self.dc = Pin("A17", mode=Pin.OUT, pull=Pin.PULL_UP) self.dc = Pin("P17", mode=Pin.OUT, pull=Pin.PULL_UP)
# initialize all pins high # initialize all pins high
self.cs.high() self.cs.high()

Wyświetl plik

@ -197,9 +197,8 @@ STATIC void pin_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t
// pin name // pin name
mp_printf(print, "Pin(Pin.cpu.%q, mode=Pin.", self->name); mp_printf(print, "Pin(Pin.cpu.%q, mode=Pin.", self->name);
mp_printf(print, "port=0x%x, ", self->port); mp_printf(print, "port=0x%x, ", self->pin / 32);
mp_printf(print, "pin=0x%x, ", self->pin); mp_printf(print, "pin=0x%x, ", self->pin);
mp_printf(print, "pin_mask=0x%x,", self->pin_mask);
/* /*
uint32_t mode = pin_get_mode(self); uint32_t mode = pin_get_mode(self);
@ -468,7 +467,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_1(pin_names_obj, pin_names);
/// Get the pin port. /// Get the pin port.
STATIC mp_obj_t pin_port(mp_obj_t self_in) { STATIC mp_obj_t pin_port(mp_obj_t self_in) {
pin_obj_t *self = self_in; pin_obj_t *self = self_in;
return MP_OBJ_NEW_SMALL_INT(self->port); return MP_OBJ_NEW_SMALL_INT(self->pin / 32);
} }
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pin_port_obj, pin_port); STATIC MP_DEFINE_CONST_FUN_OBJ_1(pin_port_obj, pin_port);
@ -480,14 +479,6 @@ STATIC mp_obj_t pin_pin(mp_obj_t self_in) {
} }
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pin_pin_obj, pin_pin); STATIC MP_DEFINE_CONST_FUN_OBJ_1(pin_pin_obj, pin_pin);
/// \method gpio()
/// Returns the base address of the GPIO block associated with this pin.
STATIC mp_obj_t pin_gpio(mp_obj_t self_in) {
pin_obj_t *self = self_in;
return MP_OBJ_NEW_SMALL_INT((mp_int_t)self->gpio);
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pin_gpio_obj, pin_gpio);
/// \method mode() /// \method mode()
/// Returns the currently configured mode of the pin. The integer returned /// Returns the currently configured mode of the pin. The integer returned
/// will match one of the allowed constants for the mode argument to the init /// will match one of the allowed constants for the mode argument to the init
@ -547,7 +538,6 @@ STATIC const mp_rom_map_elem_t pin_locals_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_af_list), MP_ROM_PTR(&pin_af_list_obj) }, { MP_ROM_QSTR(MP_QSTR_af_list), MP_ROM_PTR(&pin_af_list_obj) },
{ MP_ROM_QSTR(MP_QSTR_port), MP_ROM_PTR(&pin_port_obj) }, { MP_ROM_QSTR(MP_QSTR_port), MP_ROM_PTR(&pin_port_obj) },
{ MP_ROM_QSTR(MP_QSTR_pin), MP_ROM_PTR(&pin_pin_obj) }, { MP_ROM_QSTR(MP_QSTR_pin), MP_ROM_PTR(&pin_pin_obj) },
{ MP_ROM_QSTR(MP_QSTR_gpio), MP_ROM_PTR(&pin_gpio_obj) },
{ MP_ROM_QSTR(MP_QSTR_mode), MP_ROM_PTR(&pin_mode_obj) }, { MP_ROM_QSTR(MP_QSTR_mode), MP_ROM_PTR(&pin_mode_obj) },
{ MP_ROM_QSTR(MP_QSTR_pull), MP_ROM_PTR(&pin_pull_obj) }, { MP_ROM_QSTR(MP_QSTR_pull), MP_ROM_PTR(&pin_pull_obj) },
{ MP_ROM_QSTR(MP_QSTR_af), MP_ROM_PTR(&pin_af_obj) }, { MP_ROM_QSTR(MP_QSTR_af), MP_ROM_PTR(&pin_af_obj) },

Wyświetl plik

@ -51,13 +51,10 @@ typedef struct {
typedef struct { typedef struct {
mp_obj_base_t base; mp_obj_base_t base;
qstr name; qstr name;
uint32_t port : 4; uint32_t pin : 8;
uint32_t pin : 5; // Some ARM processors use 32 bits/PORT
uint32_t num_af : 4; uint32_t num_af : 4;
uint32_t adc_channel : 5; // Some ARM processors use 32 bits/PORT uint32_t adc_channel : 5; // Some ARM processors use 32 bits/PORT
uint32_t adc_num : 3; // 1 bit per ADC uint32_t adc_num : 3; // 1 bit per ADC
uint32_t pin_mask;
pin_gpio_t *gpio;
const pin_af_obj_t *af; const pin_af_obj_t *af;
uint32_t pull; uint32_t pull;
} pin_obj_t; } pin_obj_t;

Wyświetl plik

@ -1,32 +1,32 @@
PA0,PA0 P0,P0
PA1,PA1,ADC0_IN2 P1,P1,ADC0_IN2
PA2,PA2,ADC0_IN3 P2,P2,ADC0_IN3
PA3,PA3,ADC0_IN4 P3,P3,ADC0_IN4
PA4,PA4,ADC0_IN5 P4,P4,ADC0_IN5
PA5,PA5,ADC0_IN6 P5,P5,ADC0_IN6
PA6,PA6,ADC0_IN7 P6,P6,ADC0_IN7
PA7,PA7 P7,P7
PA8,PA8 P8,P8
PA9,PA9 P9,P9
PA10,PA10 P10,P10
PA11,PA11 P11,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
PA21,PA21 P21,P21
PA22,PA22 P22,P22
PA23,PA23 P23,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28 P28,P28
PA29,PA29 P29,P29
PA30,PA30 P30,P30
PA31,PA31 P31,P31

1 PA0,PA0 P0,P0
2 PA1,PA1,ADC0_IN2 P1,P1,ADC0_IN2
3 PA2,PA2,ADC0_IN3 P2,P2,ADC0_IN3
4 PA3,PA3,ADC0_IN4 P3,P3,ADC0_IN4
5 PA4,PA4,ADC0_IN5 P4,P4,ADC0_IN5
6 PA5,PA5,ADC0_IN6 P5,P5,ADC0_IN6
7 PA6,PA6,ADC0_IN7 P6,P6,ADC0_IN7
8 PA7,PA7 P7,P7
9 PA8,PA8 P8,P8
10 PA9,PA9 P9,P9
11 PA10,PA10 P10,P10
12 PA11,PA11 P11,P11
13 PA12,PA12 P12,P12
14 PA13,PA13 P13,P13
15 PA14,PA14 P14,P14
16 PA15,PA15 P15,P15
17 PA16,PA16 P16,P16
18 PA17,PA17 P17,P17
19 PA18,PA18 P18,P18
20 PA19,PA19 P19,P19
21 PA20,PA20 P20,P20
22 PA21,PA21 P21,P21
23 PA22,PA22 P22,P22
24 PA23,PA23 P23,P23
25 PA24,PA24 P24,P24
26 PA25,PA25 P25,P25
27 PA26,PA26 P26,P26
28 PA27,PA27 P27,P27
29 PA28,PA28 P28,P28
30 PA29,PA29 P29,P29
31 PA30,PA30 P30,P30
32 PA31,PA31 P31,P31

Wyświetl plik

@ -1,48 +1,48 @@
PA0,PA0 P0,P0
PA1,PA1 P1,P1
PA2,PA2 P2,P2
PA3,PA3 P3,P3
PA4,PA4 P4,P4
PA5,PA5 P5,P5
PA6,PA6 P6,P6
PA7,PA7 P7,P7
PA8,PA8 P8,P8
PA9,PA9 P9,P9
PA10,PA10 P10,P10
PA11,PA11 P11,P11
PA12,PA12 P12,P12
PA13,PA13 P13,P13
PA14,PA14 P14,P14
PA15,PA15 P15,P15
PA16,PA16 P16,P16
PA17,PA17 P17,P17
PA18,PA18 P18,P18
PA19,PA19 P19,P19
PA20,PA20 P20,P20
PA21,PA21 P21,P21
PA22,PA22 P22,P22
PA23,PA23 P23,P23
PA24,PA24 P24,P24
PA25,PA25 P25,P25
PA26,PA26 P26,P26
PA27,PA27 P27,P27
PA28,PA28 P28,P28
PA29,PA29 P29,P29
PA30,PA30 P30,P30
PA31,PA31 P31,P31
PB0,PB0 P32,P32
PB1,PB1 P33,P33
PB2,PB2 P34,P34
PB3,PB3 P35,P35
PB4,PB4 P36,P36
PB5,PB5 P37,P37
PB6,PB6 P38,P38
PB7,PB7 P39,P39
PB8,PB8 P40,P40
PB9,PB9 P41,P41
PB10,PB10 P42,P42
PB11,PB11 P43,P43
PB12,PB12 P44,P44
PB13,PB13 P45,P45
PB14,PB14 P46,P46
PB15,PB15 P47,P47

1 PA0 P0 PA0 P0
2 PA1 P1 PA1 P1
3 PA2 P2 PA2 P2
4 PA3 P3 PA3 P3
5 PA4 P4 PA4 P4
6 PA5 P5 PA5 P5
7 PA6 P6 PA6 P6
8 PA7 P7 PA7 P7
9 PA8 P8 PA8 P8
10 PA9 P9 PA9 P9
11 PA10 P10 PA10 P10
12 PA11 P11 PA11 P11
13 PA12 P12 PA12 P12
14 PA13 P13 PA13 P13
15 PA14 P14 PA14 P14
16 PA15 P15 PA15 P15
17 PA16 P16 PA16 P16
18 PA17 P17 PA17 P17
19 PA18 P18 PA18 P18
20 PA19 P19 PA19 P19
21 PA20 P20 PA20 P20
22 PA21 P21 PA21 P21
23 PA22 P22 PA22 P22
24 PA23 P23 PA23 P23
25 PA24 P24 PA24 P24
26 PA25 P25 PA25 P25
27 PA26 P26 PA26 P26
28 PA27 P27 PA27 P27
29 PA28 P28 PA28 P28
30 PA29 P29 PA29 P29
31 PA30 P30 PA30 P30
32 PA31 P31 PA31 P31
33 PB0 P32 PB0 P32
34 PB1 P33 PB1 P33
35 PB2 P34 PB2 P34
36 PB3 P35 PB3 P35
37 PB4 P36 PB4 P36
38 PB5 P37 PB5 P37
39 PB6 P38 PB6 P38
40 PB7 P39 PB7 P39
41 PB8 P40 PB8 P40
42 PB9 P41 PB9 P41
43 PB10 P42 PB10 P42
44 PB11 P43 PB11 P43
45 PB12 P44 PB12 P44
46 PB13 P45 PB13 P45
47 PB14 P46 PB14 P46
48 PB15 P47 PB15 P47