Код: Выделить всё
////////////////////////////////////////////////////////////////////////////////
//
// Глобальные параметры. Устанавливаются при запуске программы
//
////////////////////////////////////////////////////////////////////////////////
// Обрати внимание на имена пинов у I2C здесь и в файле реализации!
// Они должны совпадать, инече не заработает сброс шины!
const PinDescriptor pin[] =
{
#ifdef __STM32F446__
//========================
// DO
//========================
// PLC stations.
// You do not change postions of this descrptors, because they are used for
// sturtup diagosnostics!
#if ( ( defined (__MEDSINTEZ__) || defined (__NUCLEO_F446RE__) ) )
{ "FAULT_LED", GPIOC, BIT_2, GPIO, OUTPUT, NO_PULL, PUSH_PULL, LOW_SPEED },
{ "STOP_LED", GPIOC, BIT_1, GPIO, OUTPUT, NO_PULL, PUSH_PULL, LOW_SPEED },
{ "RUN_LED", GPIOC, BIT_0, GPIO, OUTPUT, NO_PULL, PUSH_PULL, LOW_SPEED },
{ "RUN-STOP", GPIOC, BIT_3, GPIO, INPUT, PULL_DOWN, INPUT_PIN, LOW_SPEED },
#elif defined (__SK2N_002__)
{ "FAULT_LED", GPIOC, BIT_3, GPIO, OUTPUT, NO_PULL, PUSH_PULL, LOW_SPEED },
{ "STOP_LED", GPIOC, BIT_2, GPIO, OUTPUT, NO_PULL, PUSH_PULL, LOW_SPEED },
{ "RUN_LED", GPIOC, BIT_1, GPIO, OUTPUT, NO_PULL, PUSH_PULL, LOW_SPEED },
{ "RUN-STOP", GPIOC, BIT_0, GPIO, INPUT, PULL_DOWN, INPUT_PIN, LOW_SPEED },
#endif
//========================
{ "INIT", GPIOC, BIT_13, GPIO, INPUT, PULL_UP, INPUT_PIN, LOW_SPEED }, //
//
//========================
// Peripherias
//========================
// Console UART (connected to ST-Link on Discovery)
{ "TX2", GPIOA, BIT_2, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
{ "RX2", GPIOA, BIT_3, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
#if ( defined (__MEDSINTEZ__) || defined(__NUCLEO_F446RE__) )
//--------------------------------------------------------------------------
// UART1, EIA-485
{ "TX1", GPIOA, BIT_9, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
{ "RX1", GPIOA, BIT_10, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
#elif defined (__SK2N_002__)
//--------------------------------------------------------------------------
// UART3, EIA-485
{ "TX3", GPIOB, BIT_10, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
{ "RX3", GPIOC, BIT_5, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
//--------------------------------------------------------------------------
// UART1, EIA-422
{ "TX1", GPIOA, BIT_9, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
{ "RX1", GPIOA, BIT_10, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
{ "DIR1", GPIOA, BIT_11, AF07, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
#endif
//------------------------------------------------------------------------------
// SPI2 (W5500)
{ "WIZ_MOSI", GPIOB, BIT_15, AF05, ALTFUNC, NO_PULL, PUSH_PULL, HIGH_SPEED },
{ "WIZ_MISO", GPIOB, BIT_14, AF05, ALTFUNC, NO_PULL, PUSH_PULL, HIGH_SPEED },
{ "WIZ_SCLK", GPIOB, BIT_13, AF05, ALTFUNC, NO_PULL, PUSH_PULL, HIGH_SPEED },
{ "WIZ_CS", GPIOB, BIT_12, GPIO, OUTPUT, NO_PULL, PUSH_PULL, HIGH_SPEED },
#if ( defined (__MEDSINTEZ__) || defined (__NUCLEO_F446RE__) )
{ "WIZ_RSTn", GPIOB, BIT_11, GPIO, OUTPUT, NO_PULL, PUSH_PULL, LOW_SPEED },
#elif defined (__SK2N_002__)
{ "WIZ_RSTn", GPIOC, BIT_6, GPIO, OUTPUT, NO_PULL, PUSH_PULL, LOW_SPEED },
#endif
//------------------------------------------------------------------------------
// SPI3 (W25Q)
{ "W25Q_MOSI", GPIOC, BIT_12, AF06, ALTFUNC, NO_PULL, PUSH_PULL, HIGH_SPEED }, // DI
{ "W25Q_MISO", GPIOC, BIT_11, AF06, ALTFUNC, NO_PULL, PUSH_PULL, HIGH_SPEED }, // DO
{ "W25Q_SCLK", GPIOC, BIT_10, AF06, ALTFUNC, NO_PULL, PUSH_PULL, HIGH_SPEED },
{ "W25Q_CS", GPIOA, BIT_15, GPIO, OUTPUT, PULL_UP, PUSH_PULL, HIGH_SPEED },
// bxCAN1
{ "bxCAN1-TX", GPIOB, BIT_9, AF09, ALTFUNC, NO_PULL, PUSH_PULL, HIGH_SPEED },
{ "bxCAN1-RX", GPIOB, BIT_8, AF09, ALTFUNC, PULL_UP, PUSH_PULL, HIGH_SPEED },
{ 0 } // the end of the map marker
#endif // __NUCLEO_F446RE__
};