2351026_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2351026_ja-JP

2351026_ja-JP

GPIOピン割り当てツールにバグがある

ピンツールを使用してGPIOピンを割り当てると、生成されたコードがGPIOマクロではなくPORTマクロを初期化コードに誤って割り当ててしまいます。

expected 'GPIO_Type *' but argument is of type 'PORT_Type *'
hal_gpio_pin_config_t createAdapterGpioPinConfig(GPIO_Type *port, uint8_t pin, hal_gpio_direction_t direction, uint8_t level)

例えば、私のpin_mux.hでは次のようになります。

/* Symbols to be used with GPIO driver */
#define BOARD_INITPINS_LCD_BL_GPIO GPIOA /*!<@brief GPIO peripheral base pointer */
#define BOARD_INITPINS_LCD_BL_INIT_GPIO_VALUE 1U /*!<@brief GPIO output initial state */
#define BOARD_INITPINS_LCD_BL_GPIO_PIN_MASK (1U << 17U) /*!<@brief GPIO pin mask */

/* Symbols to be used with PORT driver */

#define BOARD_INITPINS_LCD_BL_PORT PORTA /*!<@brief PORT peripheral base pointer */
#define BOARD_INITPINS_LCD_BL_PIN 17U /*!<@brief PORT pin number */
#define BOARD_INITPINS_LCD_BL_PIN_MASK (1U << 17U) /*!<@brief PORT pin mask */



次にペリフェラル.cで

gpioPinConfig = createAdapterGpioPinConfig(BOARD_INITPINS_LCD_BL_PORT, BOARD_INITPINS_LCD_BL_PIN, BOARD_INITPINS_LCD_BL_PIN_DIRECTION, BOARD_INITPINS_LCD_BL_PIN_LEVEL);

次のように変更する必要があります。

gpioPinConfig = createAdapterGpioPinConfig(BOARD_INITPINS_LCD_BL_GPIO, BOARD_INITPINS_LCD_BL_PIN, BOARD_INITPINS_LCD_BL_PIN_DIRECTION, BOARD_INITPINS_LCD_BL_PIN_LEVEL);


これには、peripherals.c の手動編集が必要です。設定を変更するたびにコードが実行されます。これを恒久的に解決する方法はありますか?

対象プロセッサ: MCXW71

パッケージとIO|GPIORe: Pin Assigment Tool Bugged For GPIOs

こんにちは、 @cnebe-autopac

私自身もテストしてみました。

Snipaste_2026-04-15_12-25-10.png

/* Get GPIO pin configuration */
hal_gpio_pin_config_t createAdapterGpioPinConfig(GPIO_Type *port, uint8_t pin, hal_gpio_direction_t direction, uint8_t level){
  hal_gpio_pin_config_t temp;

生成されたコードは正しいです。


Snipaste_2026-04-15_12-25-10.png


この問題を再現するにはどうすればよいですか?

BR

ハリー

Tags (1)
No ratings
Version history
Last update:
‎04-16-2026 02:39 AM
Updated by: