STM32 SPI Проблема с процедурой синхронизации - PullRequest
0 голосов
/ 07 мая 2020

У меня проблема с синхронизацией SPI. Синхронизация всегда лажала. На анализаторе logi c я вижу, что сигналы не в правильном положении. Я правда не знаю, в чем может быть проблема. Приветствуются любые идеи.

Слушать - это мастер-код для синхронизации c:

#define SPI_SLAVE_SYNBYTE    0x53
#define SPI_MASTER_SYNBYTE   0xAC

    uint8_t txackbytes = SPI_MASTER_SYNBYTE;
    uint8_t rxackbytes = 0;
    do
    {
        if(HAL_SPI_TransmitReceive_IT(&hspi1,(uint8_t *)&txackbytes, (uint8_t *)&rxackbytes, 1) != HAL_OK)
        {
            Error_Handler();
        }
        while(HAL_SPI_GetState(&hspi1) != HAL_SPI_STATE_READY){}
    }while (rxackbytes!= SPI_SLAVE_SYNBYTE);

Подчиненный код:

uint8_t txackbyte = SPI_SLAVE_SYNBYTE;
uint8_t rxackbyte = 0;

do
{
    if (HAL_SPI_TransmitReceive_IT(&hspi1, (uint8_t *)&txackbyte, (uint8_t *)&rxackbyte, 1) != HAL_OK)
    {
        Error_Handler();
    }
    while(HAL_SPI_GetState(&hspi1) != HAL_SPI_STATE_READY){}
}while (rxackbyte != SPI_MASTER_SYNBYTE);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...