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
// UART config
#define MICROPY_HW_UART1_RX (pin_A11)
#define MICROPY_HW_UART1_TX (pin_A12)
#define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_P12)
#define MICROPY_HW_UART1_HWFC (0)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A25) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_A23) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_A24) // (Arduino D12)
#define MICROPY_HW_SPI0_SCK (pin_P25) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_P23) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_P24) // (Arduino D12)
#define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1"
#define MICROPY_HW_PWM2_NAME "PWM2"
// buzzer pin
#define MICROPY_HW_MUSIC_PIN (pin_A8)
#define MICROPY_HW_MUSIC_PIN (pin_P8)
#define HELP_TEXT_BOARD_LED "1"

Wyświetl plik

@ -1,30 +1,30 @@
PA2,PA2
PA3,PA3
PA4,PA4
PA5,PA5
PA6,PA6
PA7,PA7
PA8,PA8
PA9,PA9
PA10,PA10
PA11,PA11
PA12,PA12
PA13,PA13
PA14,PA14
PA15,PA15
PA16,PA16
PA17,PA17
PA18,PA18
PA19,PA19
PA20,PA20
PA21,PA21
PA22,PA22
PA23,PA23
PA24,PA24
PA25,PA25
PA26,PA26
PA27,PA27
PA28,PA28
PA29,PA29
PA30,PA30
PA31,PA31
P2,P2
P3,P3
P4,P4
P5,P5
P6,P6
P7,P7
P8,P8
P9,P9
P10,P10
P11,P11
P12,P12
P13,P13
P14,P14
P15,P15
P16,P16
P17,P17
P18,P18
P19,P19
P20,P20
P21,P21
P22,P22
P23,P23
P24,P24
P25,P25
P26,P26
P27,P27
P28,P28
P29,P29
P30,P30
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
// UART config
#define MICROPY_HW_UART1_RX (pin_A8)
#define MICROPY_HW_UART1_TX (pin_A6)
#define MICROPY_HW_UART1_CTS (pin_A7)
#define MICROPY_HW_UART1_RTS (pin_A5)
#define MICROPY_HW_UART1_RX (pin_P8)
#define MICROPY_HW_UART1_TX (pin_P6)
#define MICROPY_HW_UART1_CTS (pin_P7)
#define MICROPY_HW_UART1_RTS (pin_P5)
#define MICROPY_HW_UART1_HWFC (1)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A25)
#define MICROPY_HW_SPI0_MOSI (pin_A23)
#define MICROPY_HW_SPI0_MISO (pin_A24)
#define MICROPY_HW_SPI0_SCK (pin_P25)
#define MICROPY_HW_SPI0_MOSI (pin_P23)
#define MICROPY_HW_SPI0_MISO (pin_P24)
#define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1"

Wyświetl plik

@ -1,31 +1,31 @@
PA2,PA2
PA3,PA3
PA4,PA4
UART_RTS,PA5
UART_TX,PA6
UART_CTS,PA7
UART_RX,PA8
PA9,PA9
PA10,PA10
PA11,PA11
PA12,PA12
PA13,PA13
PA14,PA14
PA15,PA15
PA16,PA16
PA17,PA17
PA18,PA18
PA19,PA19
PA20,PA20
PA21,PA21
PA22,PA22
PA23,PA23
PA24,PA24
PA25,PA25
PA26,PA26
PA27,PA27
PA28,PA28
PA29,PA29
PA30,PA30
PA31,PA31
P2,P2
P3,P3
P4,P4
UART_RTS,P5
UART_TX,P6
UART_CTS,P7
UART_RX,P8
P9,P9
P10,P10
P11,P11
P12,P12
P13,P13
P14,P14
P15,P15
P16,P16
P17,P17
P18,P18
P19,P19
P20,P20
P21,P21
P22,P22
P23,P23
P24,P24
P25,P25
P26,P26
P27,P27
P28,P28
P29,P29
P30,P30
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
// UART config
#define MICROPY_HW_UART1_RX (pin_A8)
#define MICROPY_HW_UART1_TX (pin_A6)
#define MICROPY_HW_UART1_RX (pin_P8)
#define MICROPY_HW_UART1_TX (pin_P6)
#define MICROPY_HW_UART1_HWFC (0)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A12) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_A13) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_A14) // (Arduino D12)
#define MICROPY_HW_SPI0_SCK (pin_P12) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_P13) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_P14) // (Arduino D12)
#define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1"

Wyświetl plik

@ -1,25 +1,25 @@
PA2,PA2,ADC0_IN0
PA3,PA3,ADC0_IN1
PA4,PA4,ADC0_IN2
PA5,PA5,ADC0_IN3
UART_TX,PA6
PA7,PA7
UART_RX,PA8
NFC1,PA9
NFC2,PA10
PA11,PA11
SPI_SCK,PA12
SPI_MOSI,PA13
SPI_MISO,PA14
PA15,PA15
PA16,PA16
LED1,PA17
LED2,PA19
PA20,PA20
I2C_SDA,PA25
I2C_SCL,PA26
PA27,PA27
PA28,PA28,ADC0_IN4
PA29,PA29,ADC0_IN5
PA30,PA30,ADC0_IN6
PA31,PA31,ADC0_IN7
P2,P2,ADC0_IN0
P3,P3,ADC0_IN1
P4,P4,ADC0_IN2
P5,P5,ADC0_IN3
UART_TX,P6
P7,P7
UART_RX,P8
NFC1,P9
NFC2,P10
P11,P11
SPI_SCK,P12
SPI_MOSI,P13
SPI_MISO,P14
P15,P15
P16,P16
LED1,P17
LED2,P19
P20,P20
I2C_SDA,P25
I2C_SCL,P26
P27,P27
P28,P28,ADC0_IN4
P29,P29,ADC0_IN5
P30,P30,ADC0_IN6
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']
}
def parse_port_pin(name_str):
"""Parses a string and returns a (port-num, pin-num) tuple."""
if len(name_str) < 3:
def parse_pin(name_str):
"""Parses a string and returns a pin-num."""
if len(name_str) < 1:
raise ValueError("Expecting pin name to be at least 4 charcters.")
if name_str[0] != 'P':
raise ValueError("Expecting pin name to start with P")
if name_str[1] not in ('A', 'B'):
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]
pin_str = name_str[1:].split('/')[0]
if not pin_str.isdigit():
raise ValueError("Expecting numeric pin number.")
return (port, int(pin_str))
return int(pin_str)
def split_name_num(name_num):
num = None
@ -89,8 +86,7 @@ class AlternateFunction(object):
class Pin(object):
"""Holds the information associated with a pin."""
def __init__(self, port, pin):
self.port = port
def __init__(self, pin):
self.pin = pin
self.alt_fn = []
self.alt_fn_count = 0
@ -98,11 +94,8 @@ class Pin(object):
self.adc_channel = 0
self.board_pin = False
def port_letter(self):
return chr(self.port + ord('A'))
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):
return self.board_pin
@ -157,8 +150,8 @@ class Pin(object):
print("// ", end='')
print('};')
print('')
print('const pin_obj_t pin_{:s} = PIN({:s}, {:d}, {:s}, {:s}, {:d});'.format(
self.cpu_pin_name(), self.port_letter(), self.pin,
print('const pin_obj_t pin_{:s} = PIN({:d}, {:s}, {:s}, {:d});'.format(
self.cpu_pin_name(), self.pin,
self.alt_fn_name(null_if_0=True),
self.adc_num_str(), self.adc_channel))
print('')
@ -197,10 +190,10 @@ class Pins(object):
self.cpu_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:
pin = named_pin.pin()
if pin.port == port_num and pin.pin == pin_num:
if pin.pin == pin_num:
return pin
def parse_af_file(self, filename, pinname_col, af_col, af_col_end):
@ -208,10 +201,10 @@ class Pins(object):
rows = csv.reader(csvfile)
for row in rows:
try:
(port_num, pin_num) = parse_port_pin(row[pinname_col])
pin_num = parse_pin(row[pinname_col])
except:
continue
pin = Pin(port_num, pin_num)
pin = Pin(pin_num)
for af_idx in range(af_col, len(row)):
if af_idx < af_col_end:
pin.parse_af(af_idx - af_col, row[af_idx])
@ -224,10 +217,10 @@ class Pins(object):
rows = csv.reader(csvfile)
for row in rows:
try:
(port_num, pin_num) = parse_port_pin(row[1])
pin_num = parse_pin(row[1])
except:
continue
pin = self.find_pin(port_num, pin_num)
pin = self.find_pin(pin_num)
if pin:
pin.set_is_board_pin()
self.board_pins.append(NamedPin(row[0], pin))

Wyświetl plik

@ -56,15 +56,15 @@
#define MICROPY_HW_ENABLE_CAN (0)
// UART config
#define MICROPY_HW_UART1_RX (pin_A25)
#define MICROPY_HW_UART1_TX (pin_A24)
#define MICROPY_HW_UART1_RX (pin_P25)
#define MICROPY_HW_UART1_TX (pin_P24)
#define MICROPY_HW_UART1_HWFC (0)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A23)
#define MICROPY_HW_SPI0_MOSI (pin_A21)
#define MICROPY_HW_SPI0_MISO (pin_A22)
#define MICROPY_HW_SPI0_SCK (pin_P23)
#define MICROPY_HW_SPI0_MOSI (pin_P21)
#define MICROPY_HW_SPI0_MISO (pin_P22)
// 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
PA1,PA1
PA2,PA2
PA3,PA3
PA4,PA4
PA5,PA5
PA6,PA6
PA7,PA7
UART_RTS,PA8
UART_TX,PA9
UART_CTS,PA10
UART_RX,PA11
PA12,PA12
PA13,PA13
PA14,PA14
PA15,PA15
PA16,PA16
PA17,PA17
PA18,PA18
PA19,PA19
PA20,PA20
SPI_MOSI,PA21
SPI_MISO,PA22
SPI_SCK,PA23
PA24,PA24
PA25,PA25
PA26,PA26
PA27,PA27
PA28,PA28
PA29,PA29
I2C_SDA,PA30
PA31,PA31
I2C_SCL,P0
P1,P1
P2,P2
P3,P3
P4,P4
P5,P5
P6,P6
P7,P7
UART_RTS,P8
UART_TX,P9
UART_CTS,P10
UART_RX,P11
P12,P12
P13,P13
P14,P14
P15,P15
P16,P16
P17,P17
P18,P18
P19,P19
P20,P20
SPI_MOSI,P21
SPI_MISO,P22
SPI_SCK,P23
P24,P24
P25,P25
P26,P26
P27,P27
P28,P28
P29,P29
I2C_SDA,P30
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) \
}
#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 }, \
.name = MP_QSTR_ ## p_port ## p_pin, \
.port = PORT_ ## p_port, \
.name = MP_QSTR_P ## p_pin, \
.pin = (p_pin), \
.num_af = (sizeof(p_af) / sizeof(pin_af_obj_t)), \
.pin_mask = (1 << p_pin), \
.af = p_af, \
.adc_num = p_adc_num, \
.adc_channel = p_adc_channel, \

Wyświetl plik

@ -17,14 +17,12 @@
.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 }, \
.name = MP_QSTR_ ## p_port ## p_pin, \
.port = PORT_ ## p_port, \
.name = MP_QSTR_P ## p_pin, \
.pin = (p_pin), \
.num_af = (sizeof(p_af) / sizeof(pin_af_obj_t)), \
.pin_mask = (1 << p_pin), \
.af = p_af, \
.adc_num = p_adc_num, \
.adc_channel = p_adc_channel, \

Wyświetl plik

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

Wyświetl plik

@ -1,7 +1,7 @@
UART_RTS,PA8
UART_TX,PA9
UART_CTS,PA10
UART_RX,PA11
LED_RED,PA21
LED_GREEN,PA22
LED_BLUE,PA23
UART_RTS,P8
UART_TX,P9
UART_CTS,P10
UART_RX,P11
LED_RED,P21
LED_GREEN,P22
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
// UART config
#define MICROPY_HW_UART1_RX (pin_A11)
#define MICROPY_HW_UART1_TX (pin_A9)
#define MICROPY_HW_UART1_CTS (pin_A10)
#define MICROPY_HW_UART1_RTS (pin_A8)
#define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_P9)
#define MICROPY_HW_UART1_CTS (pin_P10)
#define MICROPY_HW_UART1_RTS (pin_P8)
#define MICROPY_HW_UART1_HWFC (0)
#define HELP_TEXT_BOARD_LED "1,2"

Wyświetl plik

@ -1,32 +1,32 @@
PA0,PA0
PA1,PA1
PA2,PA2
PA3,PA3
PA4,PA4
PA5,PA5
PA6,PA6
PA7,PA7
UART_RTS,PA8
UART_TX,PA9
UART_CTS,PA10
UART_RX,PA11
PA12,PA12
PA13,PA13
PA14,PA14
PA15,PA15
PA16,PA16
PA17,PA17
PA18,PA18
PA19,PA19
PA20,PA20
PA21,PA21
PA22,PA22
PA23,PA23
PA24,PA24
PA25,PA25
PA26,PA26
PA27,PA27
PA28,PA28
PA29,PA29
PA30,PA30
PA31,PA31
P0,P0
P1,P1
P2,P2
P3,P3
P4,P4
P5,P5
P6,P6
P7,P7
UART_RTS,P8
UART_TX,P9
UART_CTS,P10
UART_RX,P11
P12,P12
P13,P13
P14,P14
P15,P15
P16,P16
P17,P17
P18,P18
P19,P19
P20,P20
P21,P21
P22,P22
P23,P23
P24,P24
P25,P25
P26,P26
P27,P27
P28,P28
P29,P29
P30,P30
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
// UART config
#define MICROPY_HW_UART1_RX (pin_A11)
#define MICROPY_HW_UART1_TX (pin_A9)
#define MICROPY_HW_UART1_CTS (pin_A10)
#define MICROPY_HW_UART1_RTS (pin_A8)
#define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_P9)
#define MICROPY_HW_UART1_CTS (pin_P10)
#define MICROPY_HW_UART1_RTS (pin_P8)
#define MICROPY_HW_UART1_HWFC (1)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A29)
#define MICROPY_HW_SPI0_MOSI (pin_A25)
#define MICROPY_HW_SPI0_MISO (pin_A28)
#define MICROPY_HW_SPI0_SCK (pin_P29)
#define MICROPY_HW_SPI0_MOSI (pin_P25)
#define MICROPY_HW_SPI0_MISO (pin_P28)
#define HELP_TEXT_BOARD_LED "1,2,3,4"

Wyświetl plik

@ -1,32 +1,32 @@
PA0,PA0
PA1,PA1,ADC0_IN2
PA2,PA2,ADC0_IN3
PA3,PA3,ADC0_IN4
PA4,PA4,ADC0_IN5
PA5,PA5,ADC0_IN6
PA6,PA6,ADC0_IN7
PA7,PA7
UART_RTS,PA8
UART_TX,PA9
UART_CTS,PA10
UART_RX,PA11
PA12,PA12
PA13,PA13
PA14,PA14
PA15,PA15
PA16,PA16
PA17,PA17
PA18,PA18
PA19,PA19
PA20,PA20
PA21,PA21
PA22,PA22
PA23,PA23
PA24,PA24
PA25,PA25
PA26,PA26
PA27,PA27
PA28,PA28
PA29,PA29
PA30,PA30
PA31,PA31
P0,P0
P1,P1,ADC0_IN2
P2,P2,ADC0_IN3
P3,P3,ADC0_IN4
P4,P4,ADC0_IN5
P5,P5,ADC0_IN6
P6,P6,ADC0_IN7
P7,P7
UART_RTS,P8
UART_TX,P9
UART_CTS,P10
UART_RX,P11
P12,P12
P13,P13
P14,P14
P15,P15
P16,P16
P17,P17
P18,P18
P19,P19
P20,P20
P21,P21
P22,P22
P23,P23
P24,P24
P25,P25
P26,P26
P27,P27
P28,P28
P29,P29
P30,P30
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
// UART config
#define MICROPY_HW_UART1_RX (pin_A11)
#define MICROPY_HW_UART1_TX (pin_A9)
#define MICROPY_HW_UART1_CTS (pin_A10)
#define MICROPY_HW_UART1_RTS (pin_A8)
#define MICROPY_HW_UART1_RX (pin_P11)
#define MICROPY_HW_UART1_TX (pin_P9)
#define MICROPY_HW_UART1_CTS (pin_P10)
#define MICROPY_HW_UART1_RTS (pin_P8)
#define MICROPY_HW_UART1_HWFC (0)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A15)
#define MICROPY_HW_SPI0_MOSI (pin_A16)
#define MICROPY_HW_SPI0_MISO (pin_A17)
#define MICROPY_HW_SPI0_SCK (pin_P15)
#define MICROPY_HW_SPI0_MOSI (pin_P16)
#define MICROPY_HW_SPI0_MISO (pin_P17)
#define HELP_TEXT_BOARD_LED "1,2,3"

Wyświetl plik

@ -1,13 +1,13 @@
UART_RTS,PA8
UART_TX,PA9
UART_CTS,PA10
UART_RX,PA11
LED_RED,PA21
LED_GREEN,PA22
LED_BLUE,PA23
PA15,PA15
PA16,PA16
PA17,PA17
PA18,PA18
PA19,PA19
PA20,PA20
UART_RTS,P8
UART_TX,P9
UART_CTS,P10
UART_RX,P11
LED_RED,P21
LED_GREEN,P22
LED_BLUE,P23
P15,P15
P16,P16
P17,P17
P18,P18
P19,P19
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
// UART config
#define MICROPY_HW_UART1_RX (pin_A8)
#define MICROPY_HW_UART1_TX (pin_A6)
#define MICROPY_HW_UART1_CTS (pin_A7)
#define MICROPY_HW_UART1_RTS (pin_A5)
#define MICROPY_HW_UART1_RX (pin_P8)
#define MICROPY_HW_UART1_TX (pin_P6)
#define MICROPY_HW_UART1_CTS (pin_P7)
#define MICROPY_HW_UART1_RTS (pin_P5)
#define MICROPY_HW_UART1_HWFC (1)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A25) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_A23) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_A24) // (Arduino D12)
#define MICROPY_HW_SPI0_SCK (pin_P25) // (Arduino D13)
#define MICROPY_HW_SPI0_MOSI (pin_P23) // (Arduino D11)
#define MICROPY_HW_SPI0_MISO (pin_P24) // (Arduino D12)
#define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1"

Wyświetl plik

@ -1,30 +1,30 @@
PA2,PA2
PA3,PA3
PA4,PA4
PA5,PA5
PA6,PA6
PA7,PA7
PA8,PA8
PA9,PA9
PA10,PA10
PA11,PA11
PA12,PA12
PA13,PA13
PA14,PA14
PA15,PA15
PA16,PA16
PA17,PA17
PA18,PA18
PA19,PA19
PA20,PA20
PA21,PA21
PA22,PA22
PA23,PA23
PA24,PA24
PA25,PA25
PA26,PA26
PA27,PA27
PA28,PA28
PA29,PA29
PA30,PA30
PA31,PA31
P2,P2
P3,P3
P4,P4
P5,P5
P6,P6
P7,P7
P8,P8
P9,P9
P10,P10
P11,P11
P12,P12
P13,P13
P14,P14
P15,P15
P16,P16
P17,P17
P18,P18
P19,P19
P20,P20
P21,P21
P22,P22
P23,P23
P24,P24
P25,P25
P26,P26
P27,P27
P28,P28
P29,P29
P30,P30
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
// UART config
#define MICROPY_HW_UART1_RX (pin_A8)
#define MICROPY_HW_UART1_TX (pin_A6)
#define MICROPY_HW_UART1_CTS (pin_A7)
#define MICROPY_HW_UART1_RTS (pin_A5)
#define MICROPY_HW_UART1_RX (pin_P8)
#define MICROPY_HW_UART1_TX (pin_P6)
#define MICROPY_HW_UART1_CTS (pin_P7)
#define MICROPY_HW_UART1_RTS (pin_P5)
#define MICROPY_HW_UART1_HWFC (1)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_B15)
#define MICROPY_HW_SPI0_MOSI (pin_B13)
#define MICROPY_HW_SPI0_MISO (pin_B14)
#define MICROPY_HW_SPI0_SCK (pin_P47)
#define MICROPY_HW_SPI0_MOSI (pin_P45)
#define MICROPY_HW_SPI0_MISO (pin_P46)
#define MICROPY_HW_PWM0_NAME "PWM0"
#define MICROPY_HW_PWM1_NAME "PWM1"

Wyświetl plik

@ -1,48 +1,48 @@
PA0,PA0
PA1,PA1
PA2,PA2,ADC0_IN0
PA3,PA3,ADC0_IN1
PA4,PA4,ADC0_IN2
PA5,PA5,ADC0_IN3
PA6,PA6
PA7,PA7
PA8,PA8
PA9,PA9
PA10,PA10
PA11,PA11
PA12,PA12
PA13,PA13
PA14,PA14
PA15,PA15
PA16,PA16
PA17,PA17
PA18,PA18
PA19,PA19
PA20,PA20
PA21,PA21
PA22,PA22
PA23,PA23
PA24,PA24
PA25,PA25
PA26,PA26
PA27,PA27
PA28,PA28,ADC0_IN4
PA29,PA29,ADC0_IN5
PA30,PA30,ADC0_IN6
PA31,PA31,ADC0_IN7
PB0,PB0
PB1,PB1
PB2,PB2
PB3,PB3
PB4,PB4
PB5,PB5
PB6,PB6
PB7,PB7
PB8,PB8
PB9,PB9
PB10,PB10
PB11,PB11
PB12,PB12
PB13,PB13
PB14,PB14
PB15,PB15
P0,P0
P1,P1
P2,P2,ADC0_IN0
P3,P3,ADC0_IN1
P4,P4,ADC0_IN2
P5,P5,ADC0_IN3
P6,P6
P7,P7
P8,P8
P9,P9
P10,P10
P11,P11
P12,P12
P13,P13
P14,P14
P15,P15
P16,P16
P17,P17
P18,P18
P19,P19
P20,P20
P21,P21
P22,P22
P23,P23
P24,P24
P25,P25
P26,P26
P27,P27
P28,P28,ADC0_IN4
P29,P29,ADC0_IN5
P30,P30,ADC0_IN6
P31,P31,ADC0_IN7
P32,P32
P33,P33
P34,P34
P35,P35
P36,P36
P37,P37
P38,P38
P39,P39
P40,P40
P41,P41
P42,P42
P43,P43
P44,P44
P45,P45
P46,P46
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)
// UART config
#define MICROPY_HW_UART1_RX (pin_A1)
#define MICROPY_HW_UART1_TX (pin_A2)
#define MICROPY_HW_UART1_RX (pin_P1)
#define MICROPY_HW_UART1_TX (pin_P2)
#define MICROPY_HW_UART1_HWFC (0)
// SPI0 config
#define MICROPY_HW_SPI0_NAME "SPI0"
#define MICROPY_HW_SPI0_SCK (pin_A9)
#define MICROPY_HW_SPI0_MOSI (pin_A10)
#define MICROPY_HW_SPI0_MISO (pin_A13)
#define MICROPY_HW_SPI0_SCK (pin_P9)
#define MICROPY_HW_SPI0_MOSI (pin_P10)
#define MICROPY_HW_SPI0_MISO (pin_P13)

Wyświetl plik

@ -1,7 +1,7 @@
PA1,PA1
PA2,PA2
PA3,PA3
PA4,PA4
PA9,PA9
PA10,PA10
PA13,PA13
P1,P1
P2,P2
P3,P3
P4,P4
P9,P9
P10,P10
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
def mnt():
cs = Pin("A22", mode=Pin.OUT)
cs = Pin("P22", mode=Pin.OUT)
sd = SDCard(SPI(0), cs)
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
# play("A3")
# play("P3")
#
from machine import Pin

Wyświetl plik

@ -3,13 +3,13 @@ from machine import PWM, Pin
def pulse():
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()
time.sleep_ms(10)
p.deinit()
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()
time.sleep_ms(10)
p.deinit()

Wyświetl plik

@ -30,7 +30,7 @@ class Servo():
if pin_name:
self.pin = Pin(pin_name, mode=Pin.OUT, pull=Pin.PULL_DOWN)
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):
p = PWM(0, self.pin, freq=PWM.FREQ_125KHZ, pulse_width=105, period=2500, mode=PWM.MODE_HIGH_LOW)
p.init()

Wyświetl plik

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

Wyświetl plik

@ -52,7 +52,7 @@ from machine import SPI, Pin
from sdcard import SDCard
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)
class ILI9341:
@ -65,9 +65,9 @@ class ILI9341:
self.spi = SPI(0)
# 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
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
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
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_mask=0x%x,", self->pin_mask);
/*
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.
STATIC mp_obj_t pin_port(mp_obj_t 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);
@ -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);
/// \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()
/// 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
@ -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_port), MP_ROM_PTR(&pin_port_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_pull), MP_ROM_PTR(&pin_pull_obj) },
{ MP_ROM_QSTR(MP_QSTR_af), MP_ROM_PTR(&pin_af_obj) },

Wyświetl plik

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

Wyświetl plik

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