Bugfix and update for AT32F415 (#24807)
This commit is contained in:
parent
eb29f8befc
commit
7f1c236c75
11 changed files with 46 additions and 32 deletions
|
@ -24,7 +24,7 @@
|
|||
# elif defined(PROTOCOL_CHIBIOS)
|
||||
# include "hal.h"
|
||||
# include "chibios_config.h"
|
||||
# if defined(STM32F0XX) || defined(STM32F1XX) || defined(STM32F3XX) || defined(STM32F4XX) || defined(STM32L0XX) || defined(GD32VF103) || defined(MCU_RP)
|
||||
# if defined(STM32F0XX) || defined(STM32F1XX) || defined(STM32F3XX) || defined(STM32F4XX) || defined(STM32L0XX) || defined(AT32F415) || defined(GD32VF103) || defined(MCU_RP)
|
||||
# define APA102_NOPS (100 / (1000000000L / (CPU_CLOCK / 4))) // This calculates how many loops of 4 nops to run to delay 100 ns
|
||||
# else
|
||||
# error APA102_NOPS configuration required
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// Copyright 2023-2024 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2024 Zhaqian <https://github.com/zhaqian12>
|
||||
// Copyright 2023-2025 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2025 Zhaqian <https://github.com/zhaqian12>
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// Copyright 2023-2024 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2024 Zhaqian <https://github.com/zhaqian12>
|
||||
// Copyright 2023-2025 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2025 Zhaqian <https://github.com/zhaqian12>
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// Copyright 2023-2024 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2024 Zhaqian <https://github.com/zhaqian12>
|
||||
// Copyright 2023-2025 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2025 Zhaqian <https://github.com/zhaqian12>
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
|
|
@ -17,4 +17,8 @@
|
|||
"ws2812": {
|
||||
"pin": "B0"
|
||||
}
|
||||
"apa102": {
|
||||
"data_pin": "B0",
|
||||
"clock_pin": "B1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// Copyright 2023-2024 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2024 Zhaqian <https://github.com/zhaqian12>
|
||||
// Copyright 2023-2025 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2025 Zhaqian <https://github.com/zhaqian12>
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
|
||||
ChibiOS - Copyright (C) 2023..2024 HorrorTroll
|
||||
ChibiOS - Copyright (C) 2023..2024 Zhaqian
|
||||
ChibiOS - Copyright (C) 2023..2025 HorrorTroll
|
||||
ChibiOS - Copyright (C) 2023..2025 Zhaqian
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
|
||||
ChibiOS - Copyright (C) 2023..2024 HorrorTroll
|
||||
ChibiOS - Copyright (C) 2023..2024 Zhaqian
|
||||
ChibiOS - Copyright (C) 2023..2025 HorrorTroll
|
||||
ChibiOS - Copyright (C) 2023..2025 Zhaqian
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
@ -49,6 +49,14 @@
|
|||
*/
|
||||
#define AT32F415KB
|
||||
|
||||
/*
|
||||
* GPIO settings, allow unused GPIO for smaller chip packages.
|
||||
*/
|
||||
#if defined(AT32F415KB) || defined(AT32F415KC)
|
||||
#define AT32_HAS_GPIOC TRUE
|
||||
#define AT32_HAS_GPIOF TRUE
|
||||
#endif
|
||||
|
||||
/*
|
||||
* IO pins assignments.
|
||||
*/
|
||||
|
@ -142,21 +150,21 @@
|
|||
* 6 - Open Drain output 2MHz.
|
||||
* 7 - Open Drain output 50MHz.
|
||||
* 8 - Digital input with Pull-Up or Pull-Down resistor depending on ODT.
|
||||
* 9 - Alternate Push Pull output 10MHz.
|
||||
* A - Alternate Push Pull output 2MHz.
|
||||
* B - Alternate Push Pull output 50MHz.
|
||||
* 9 - Multiplexing Push Pull output 10MHz.
|
||||
* A - Multiplexing Push Pull output 2MHz.
|
||||
* B - Multiplexing Push Pull output 50MHz.
|
||||
* C - Reserved.
|
||||
* D - Alternate Open Drain output 10MHz.
|
||||
* E - Alternate Open Drain output 2MHz.
|
||||
* F - Alternate Open Drain output 50MHz.
|
||||
* D - Multiplexing Open Drain output 10MHz.
|
||||
* E - Multiplexing Open Drain output 2MHz.
|
||||
* F - Multiplexing Open Drain output 50MHz.
|
||||
* Please refer to the AT32 Reference Manual for details.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Port A setup.
|
||||
*/
|
||||
#define VAL_GPIOACFGLR 0x88888B88 /* PA7...PA0 */
|
||||
#define VAL_GPIOACFGHR 0x888888B8 /* PA15...PA8 */
|
||||
#define VAL_GPIOACFGLR 0x88888888 /* PA7...PA0 */
|
||||
#define VAL_GPIOACFGHR 0x88888888 /* PA15...PA8 */
|
||||
#define VAL_GPIOAODT 0xFFFFFFFF
|
||||
|
||||
/*
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// Copyright 2023-2024 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2024 Zhaqian <https://github.com/zhaqian12>
|
||||
// Copyright 2023-2025 HorrorTroll <https://github.com/HorrorTroll>
|
||||
// Copyright 2023-2025 Zhaqian <https://github.com/zhaqian12>
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio
|
||||
ChibiOS - Copyright (C) 2023..2024 HorrorTroll
|
||||
ChibiOS - Copyright (C) 2023..2024 Zhaqian
|
||||
ChibiOS - Copyright (C) 2023..2025 HorrorTroll
|
||||
ChibiOS - Copyright (C) 2023..2025 Zhaqian
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
@ -63,7 +63,7 @@
|
|||
#define AT32_USBDIV AT32_USBDIV_DIV3
|
||||
#define AT32_CLKOUT_SEL AT32_CLKOUT_SEL_NOCLOCK
|
||||
#define AT32_CLKOUTDIV AT32_CLKOUTDIV_DIV1
|
||||
#define AT32_ERTCSEL AT32_ERTCSEL_HEXTDIV
|
||||
#define AT32_ERTCSEL AT32_ERTCSEL_NOCLOCK
|
||||
#define AT32_PVM_ENABLE FALSE
|
||||
#define AT32_PVMSEL AT32_PVMSEL_LEV1
|
||||
|
||||
|
@ -136,10 +136,10 @@
|
|||
#define AT32_I2C_USE_I2C1 FALSE
|
||||
#define AT32_I2C_USE_I2C2 FALSE
|
||||
#define AT32_I2C_BUSY_TIMEOUT 50
|
||||
#define AT32_I2C_I2C1_IRQ_PRIORITY 5
|
||||
#define AT32_I2C_I2C2_IRQ_PRIORITY 5
|
||||
#define AT32_I2C_I2C1_DMA_PRIORITY 3
|
||||
#define AT32_I2C_I2C2_DMA_PRIORITY 3
|
||||
#define AT32_I2C_I2C1_IRQ_PRIORITY 5
|
||||
#define AT32_I2C_I2C2_IRQ_PRIORITY 5
|
||||
#define AT32_I2C_DMA_ERROR_HOOK(i2cp) osalSysHalt("DMA failure")
|
||||
|
||||
/*
|
||||
|
@ -151,8 +151,6 @@
|
|||
#define AT32_ICU_USE_TMR4 FALSE
|
||||
#define AT32_ICU_USE_TMR5 FALSE
|
||||
#define AT32_ICU_USE_TMR9 FALSE
|
||||
#define AT32_ICU_USE_TMR10 FALSE
|
||||
#define AT32_ICU_USE_TMR11 FALSE
|
||||
|
||||
/*
|
||||
* PWM driver system settings.
|
||||
|
@ -216,9 +214,13 @@
|
|||
#define AT32_UART_USE_USART1 FALSE
|
||||
#define AT32_UART_USE_USART2 FALSE
|
||||
#define AT32_UART_USE_USART3 FALSE
|
||||
#define AT32_UART_USE_UART4 FALSE
|
||||
#define AT32_UART_USE_UART5 FALSE
|
||||
#define AT32_UART_USART1_DMA_PRIORITY 0
|
||||
#define AT32_UART_USART2_DMA_PRIORITY 0
|
||||
#define AT32_UART_USART3_DMA_PRIORITY 0
|
||||
#define AT32_UART_UART4_DMA_PRIORITY 0
|
||||
#define AT32_UART_UART5_DMA_PRIORITY 0
|
||||
#define AT32_UART_DMA_ERROR_HOOK(uartp) osalSysHalt("DMA failure")
|
||||
|
||||
/*
|
||||
|
|
|
@ -149,8 +149,8 @@
|
|||
# if defined(AT32F415)
|
||||
# define USE_GPIOV1
|
||||
# define USE_I2CV1
|
||||
# define PAL_MODE_ALTERNATE_OPENDRAIN PAL_MODE_AT32_ALTERNATE_OPENDRAIN
|
||||
# define PAL_MODE_ALTERNATE_PUSHPULL PAL_MODE_AT32_ALTERNATE_PUSHPULL
|
||||
# define PAL_MODE_ALTERNATE_OPENDRAIN PAL_MODE_AT32_MUX_OPENDRAIN
|
||||
# define PAL_MODE_ALTERNATE_PUSHPULL PAL_MODE_AT32_MUX_PUSHPULL
|
||||
# define AUDIO_PWM_PAL_MODE PAL_MODE_ALTERNATE_PUSHPULL
|
||||
# endif
|
||||
#endif
|
||||
|
|
Loading…
Add table
Reference in a new issue