Я получил тот же код ошибки, что и у вас, но с платой расширения IHM01A1 и платой Nucleo F411RE. Я не знаю, сработает ли это для вашей доски, но я думаю, что стоит попробовать. Имена разные, но, кроме того, код выглядит аналогично.
Использование чистого металлического профиля работает без каких-либо изменений, но это изменение работает и с OS5.
В файле Components / L6474 / L6474 .h закомментируйте следующую строку:
void L6474_DisableIrq(void)
{
// __disable_irq();
}
Эта функция вызывается в основном файле при чтении или записи с использованием SPI.
Я не знаю, почему это работает, поскольку API Mbed просит отключить прерывания перед использованием функции записи SPI, но каким-то образом удаление этой строки, которая отключает прерывание, заставляет его работать.