Files
motor_params/AD_Keil_Project/AD_docs/PINMAP_STM32G474CEU6.md

5.8 KiB
Raw Permalink Blame History

Распиновка STM32G474

Источники

Объект Статус Примечание
Проект STM32G474CEU6 не найден Подтверждённого .uvprojx/.ioc для CEU6 нет
Кандидатный проект найден IHM08M, цель STM32G474RETx
CubeMX .ioc найден AD_Keil_Project/IHM08M.ioc
Схема X-NUCLEO-IHM08M1 найдена источник для ADC-сигналов PhA, PhB, PhC, BUSV, Temp. Sens.: https://www.st.com/resource/en/schematic_pack/x-nucleo-ihm08m1_schematic.pdf
Плата кандидат NUCLEO-G474RE, не целевая плата CEU6
Старый embedded-код найден C2000/TMS320 в Inu_im_1wnd_3lvl/Inu

Подтверждённые пины STM32G474CEU6

Подтверждённой распиновки для STM32G474CEU6 в проекте нет. Ниже приведена только кандидатная распиновка из STM32G474RETx / NUCLEO-G474RE.

Кандидатная распиновка из IHM08M.ioc и схемы IHM08M1

Пин Сигнал Направление Назначение Источник
PC13 B1 вход EXTI кнопка пользователя .ioc, main.h
PC14 RCC_OSC32_IN вход LSE .ioc, main.h
PC15 RCC_OSC32_OUT выход LSE .ioc, main.h
PC0 ADC1_IN6 аналоговый вход IHM08M1 PhC, ток фазы C схема IHM08M1, ad_board.c
PC1 ADC1_IN7 аналоговый вход IHM08M1 PhB, ток фазы B схема IHM08M1, ad_board.c
PC2 ADC1_IN8 аналоговый вход IHM08M1 Temp. Sens., пока не читается схема IHM08M1
PF0 RCC_OSC_IN вход HSE .ioc, main.h
PF1 RCC_OSC_OUT выход HSE .ioc, main.h
PA0 ADC1_IN1 аналоговый вход IHM08M1 PhA, ток фазы A схема IHM08M1, ad_board.c
PA1 ADC1_IN2 аналоговый вход IHM08M1 BUSV, напряжение DC-звена схема IHM08M1, ad_board.c
PA5 не используется не инициализируется IHM08M1 PA5 - DAC; конфликт с LD2 убран схема IHM08M1, ad_board.c
PA6 TIM1_BKIN AF-вход аппаратный BKIN .ioc, stm32g4xx_hal_msp.c, схема IHM08M1
PA8 TIM1_CH1 AF-выход IHM08M1 UH, верхний ключ U .ioc, stm32g4xx_hal_msp.c, ad_inverter.c
PA7 TIM1_CH1N AF-выход IHM08M1 UL, нижний ключ U .ioc, stm32g4xx_hal_msp.c, ad_inverter.c
PA9 TIM1_CH2 AF-выход IHM08M1 VH, верхний ключ V .ioc, stm32g4xx_hal_msp.c, ad_inverter.c
PB0 TIM1_CH2N AF-выход IHM08M1 VL, нижний ключ V .ioc, stm32g4xx_hal_msp.c, ad_inverter.c
PA10 TIM1_CH3 AF-выход IHM08M1 WH, верхний ключ W .ioc, stm32g4xx_hal_msp.c, ad_inverter.c
PB1 TIM1_CH3N AF-выход IHM08M1 WL, нижний ключ W .ioc, stm32g4xx_hal_msp.c, ad_inverter.c
PA13 T_SWDIO отладка SWDIO .ioc, main.h
PA14 T_SWCLK отладка SWCLK .ioc, main.h
PB3 GPIO_Input вход IHM08M1 Enc. B/H2; SWO убран из .ioc .ioc, схема IHM08M1

Периферия кандидатного проекта

Периферия Статус
ADC вручную включен ADC1 в ad_board.c; .ioc еще не синхронизирован
TIM/PWM шесть линий IHM08M1 через TIM1: UH/UL, VH/VL, WH/WL; PA6/TIM1_BKIN включен
GPIO кнопка B1; PA5/LD2 не используется по умолчанию
DMA HAL-файлы есть, CubeMX init нет
UART/USART не включён
CAN/FDCAN не включён
SPI/I2C не включён
OPAMP/COMP не включён
Watchdog не настроен
TIM break PA6 / TIM1_BKIN, TIM_BREAKPOLARITY_HIGH; полярность надо проверить на железе

Сигналы старого C2000-кода

Эти строки не являются STM32-распиновкой. Они нужны только как чек-лист миграции:

Сигнал C2000 Назначение
EPWM1A/B .. EPWM6A/B PWM-выходы инвертора
ADCRESULT0 DC-звено udc1
ADCRESULT2 ток ic1
ADCRESULT4 ток ia1
ADCRESULT6 ток ib1

Текущее STM32-сопоставление-кандидат:

Сигнал STM32
ia_A PA0 / ADC1_IN1
ib_A PC1 / ADC1_IN7
ic_A PC0 / ADC1_IN6
vdc_V PA1 / ADC1_IN2, кусочная калибровка: 0.618 В ADC -> 10 В, выше 14.5 В масштаб 12.1770 В/В
EQEP2A/B/I датчик скорости/положения
DI_24V_SOURCE_FAULT авария +24 В
SPIA + CS EEPROM или внешний SPI
LED_GREEN1/2, LED_RED индикация

Что нужно для настоящей платы CEU6

  • Добавить настоящий .ioc и .uvprojx для STM32G474CEU6.
  • Заполнить ШИМ-пины, комплементарные выходы, мёртвое время и break.
  • Заполнить ADC-каналы токов, DC-звена и температуры.
  • Добавить входы аварии и аварийного стопа.
  • Перегенерировать этот документ по реальному CubeMX-проекту.