Доброго всем времени суток.
Помогите, пожалуйста, разобраться с STM32 в связке с HAL. Есть плата с STM32F405 (Nucleo). Хочу настроить прием по SPI (в slave-режиме). В кубе настроил все необходимое, сгенерировал код (IAR 7.60 Kickstarter). Прием/передача отдельных байтов работает. Теперь хочу добавить кольцевой буфер.
Как это лучше реализовать?
На первый взгляд можно организовать так: 1. Объявляем глобальные переменные tx, rx. Инициализируем и вызываем HAL_SPI_TransmitReceive_IT(). 2. В обработчике прерывания SPI после вызова встроенного обработчика HAL, записываем принятый байт в буфер и опять вызываем HAL_SPI_TransmitReceive_IT().
Правильно ли я понял порядок работы с HAL? Или как-то по другому организовать?
А может вообще забить на HAL? Где тогда брать CMSIS для STM32?
|