ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
27 апреля
801576 Топик полностью
Дупкин (12.12.2017 17:12, просмотров: 1) ответил SciFi на Из любопытства включил уровень оптимизации gcc -O3. Код для работы с SPI флешкой перестал работать. Понаставил кучу задержек в разных местах, пока не задышало. Причём убираю любую задержку - и снова глючит. Чудеса!
1. Добавить проверку  while ((DMA1->HISR & DMA_HISR_TCIF7) == 0) { /* wait for DMA TCIF */ } 2. Включать следом: DMA1_Stream0->CR |= DMA_SxCR_EN; // enable stream DMA1_Stream7->CR |= DMA_SxCR_EN; // enable stream 3. Убрать ненужную проверку while ((SPI3->SR & SPI_SR_TXE) == 0) { /* wait for TXE */ }