Skip to main content
Graduate II
April 16, 2024
Question

SPI MX config buggy?

  • April 16, 2024
  • 1 reply
  • 920 views

Hi, i try migrate some old stdlib app into HAL or LL over new project in MX. On old system we have SPI init part for TX only master

 /* SPI configuration -------------------------------------------------------*/
 SPI_I2S_DeInit(SPIx);
 SPI_InitStructure.SPI_Direction = SPI_Direction_1Line_Tx;

cleanly work and show only MOSI used. But same choiced in MX result into

MM1_0-1713285234593.png

 /* USER CODE END SPI1_Init 1 */
 /* SPI1 parameter configuration*/
 hspi1.Instance = SPI1;
 hspi1.Init.Mode = SPI_MODE_MASTER;
 hspi1.Init.Direction = SPI_DIRECTION_2LINES;
 hspi1.Init.DataSize = SPI_DATASIZE_8BIT;
 hspi1.Init.CLKPolarity = SPI_POLARITY_LOW;
 hspi1.Init.CLKPhase = SPI_PHASE_1EDGE;
 hspi1.Init.NSS = SPI_NSS_SOFT;
 hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2;
 hspi1.Init.FirstBit = SPI_FIRSTBIT_LSB;
 hspi1.Init.TIMode = SPI_TIMODE_DISABLE;
 hspi1.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
 hspi1.Init.CRCPolynomial = 7;
 hspi1.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
 hspi1.Init.NSSPMode = SPI_NSS_PULSE_ENABLE;
 if (HAL_SPI_Init(&hspi1) != HAL_OK)

 why here direction is SPI_DIRECTION_2LINES? With LL drivers same situation.

    This topic has been closed for replies.

    1 reply

    Super User
    April 16, 2024

    Hi, ok name is with _2Lines_ now, but does it work correct ?

    (Maybe they just changed the name...)

    I looked in my projects :

    - master transmit    SPI_DIRECTION_2LINES_TXONLY;

    - slave receive   SPI_DIRECTION_2LINES_RXONLY

    - half duplex master    SPI_DIRECTION_1LINE;

    + all correct working.