mirror of
https://github.com/ArduPilot/ardupilot
synced 2025-02-23 08:13:56 -04:00
HAL_ChibiOS: separate out F1 CR1 calculations
and modify pin speeds for iomcu uarts
This commit is contained in:
parent
107ccb3eef
commit
fcc259ae31
@ -26,8 +26,8 @@ UART_ORDER EMPTY
|
|||||||
define HAL_USE_UART TRUE
|
define HAL_USE_UART TRUE
|
||||||
|
|
||||||
# UART connected to FMU, uses DMA
|
# UART connected to FMU, uses DMA
|
||||||
PA2 USART2_TX USART2
|
PA2 USART2_TX USART2 SPEED_HIGH
|
||||||
PA3 USART2_RX USART2
|
PA3 USART2_RX USART2 SPEED_HIGH
|
||||||
|
|
||||||
define STM32_UART_USE_USART1 FALSE
|
define STM32_UART_USE_USART1 FALSE
|
||||||
define STM32_UART_USE_USART2 TRUE
|
define STM32_UART_USE_USART2 TRUE
|
||||||
@ -36,7 +36,7 @@ define STM32_UART_USE_USART3 FALSE
|
|||||||
# UART for SBUS out, and RC in, no DMA
|
# UART for SBUS out, and RC in, no DMA
|
||||||
define HAL_USE_SERIAL TRUE
|
define HAL_USE_SERIAL TRUE
|
||||||
PB4 SBUS_OUT_EN OUTPUT LOW GPIO(1)
|
PB4 SBUS_OUT_EN OUTPUT LOW GPIO(1)
|
||||||
PB10 USART3_TX USART3
|
PB10 USART3_TX USART3 SPEED_HIGH LOW
|
||||||
PB11 USART3_RX USART3
|
PB11 USART3_RX USART3
|
||||||
|
|
||||||
define STM32_SERIAL_USE_USART1 TRUE
|
define STM32_SERIAL_USE_USART1 TRUE
|
||||||
@ -70,8 +70,8 @@ PB15 AMBER_LED OUTPUT LOW
|
|||||||
|
|
||||||
# UART for DSM input
|
# UART for DSM input
|
||||||
# TX side is for IO debug, and is unused
|
# TX side is for IO debug, and is unused
|
||||||
PA9 USART1_TX USART1
|
PA9 USART1_TX USART1 SPEED_HIGH
|
||||||
PA10 USART1_RX USART1 PULLUP
|
PA10 USART1_RX USART1 SPEED_HIGH
|
||||||
|
|
||||||
PC13 SPEKTRUM_PWR_EN OUTPUT LOW
|
PC13 SPEKTRUM_PWR_EN OUTPUT LOW
|
||||||
define HAL_GPIO_PIN_SPEKTRUM_OUT PAL_LINE(GPIOA,10U)
|
define HAL_GPIO_PIN_SPEKTRUM_OUT PAL_LINE(GPIOA,10U)
|
||||||
|
@ -334,9 +334,42 @@ class generic_pin(object):
|
|||||||
return None
|
return None
|
||||||
return self.get_AFIO()
|
return self.get_AFIO()
|
||||||
|
|
||||||
|
def get_CR_F1(self):
|
||||||
|
'''return CR FLAGS for STM32F1xx'''
|
||||||
|
#Check Speed
|
||||||
|
if self.sig_dir != "INPUT" or self.af is not None:
|
||||||
|
speed_values = ['SPEED_LOW', 'SPEED_MEDIUM', 'SPEED_HIGH']
|
||||||
|
v = 'SPEED_MEDIUM'
|
||||||
|
for e in self.extra:
|
||||||
|
if e in speed_values:
|
||||||
|
v = e
|
||||||
|
speed_str = "PIN_%s(%uU) |" % (v, self.pin)
|
||||||
|
else:
|
||||||
|
speed_str = ""
|
||||||
|
if self.af is not None:
|
||||||
|
if self.label.endswith('_RX'):
|
||||||
|
# uart RX is configured as a input, and can be pullup, pulldown or float
|
||||||
|
if 'PULLUP' in self.extra or 'PULLDOWN' in self.extra:
|
||||||
|
v = 'PUD'
|
||||||
|
else:
|
||||||
|
v = "NOPULL"
|
||||||
|
else:
|
||||||
|
v = "AF_PP"
|
||||||
|
elif self.sig_dir == 'OUTPUT':
|
||||||
|
v = "OUTPUT_PP"
|
||||||
|
elif self.type.startswith('ADC'):
|
||||||
|
v = "ANALOG"
|
||||||
|
else:
|
||||||
|
v = "PUD"
|
||||||
|
if 'FLOATING' in self.extra:
|
||||||
|
v = "NOPULL"
|
||||||
|
mode_str = "PIN_MODE_%s(%uU)" % (v, self.pin)
|
||||||
|
return "%s %s" % (speed_str, mode_str)
|
||||||
|
|
||||||
def get_CR(self):
|
def get_CR(self):
|
||||||
'''return CR FLAGS'''
|
'''return CR FLAGS'''
|
||||||
#Check Speed
|
if mcu_series == "STM32F100":
|
||||||
|
return self.get_CR_F1()
|
||||||
if self.sig_dir != "INPUT":
|
if self.sig_dir != "INPUT":
|
||||||
speed_values = ['SPEED_LOW', 'SPEED_MEDIUM', 'SPEED_HIGH']
|
speed_values = ['SPEED_LOW', 'SPEED_MEDIUM', 'SPEED_HIGH']
|
||||||
v = 'SPEED_MEDIUM'
|
v = 'SPEED_MEDIUM'
|
||||||
|
Loading…
Reference in New Issue
Block a user