-
- там в конечном итоге просто надо было очистить fifo перед чтением
данных с слэйва SPI. Везде говорили про обнуление одного бита в
статусе, но я решил тупо перед любым чтением делать просто -
BFSPI=SPI1->DR; И всё стало нормально. :-) Наш друг SciFi
смеялся, но нам татарам всё равно. :-) - Лaгyнoв(16.03.2024 20:20)
- Что до SPI, я вот год или два назад, вплотную занявшись STM32F303
(экранчик к ней подключал), охренел, что мой код, который стабильно
на F103 и F0xx работал, здесь внезапно сел в лужу! Eddy_Em(470 знак., 16.03.2024 20:30)
- Ну почему умники. Все правильно. Но как часто это бывает, сделано не очень красиво. На многих других архитектурах есть фифо, ибо ты же представляешь себе частоту прерываний если что... - RxTx(16.03.2024 21:51)
- вот-вот, примерно так. Хорошо, что я с DMA не работал. :-) Но
(повторюсь) проблем давно нет. Просто надо знать. - Лaгyнoв(16.03.2024 20:49)
- А я вот обожаю освобождать камень, если это возможно. А уж длинные
передачи только абдуринщики без DMA делают. Застопорить на сотню
миллисекунд суперлуп - это ж трындец какой-то! А если в это время
концевик отработает и обратно отщелкнется? Или еще какая хрень? А у
STM32 очень хреново с EXTI: просто через жопу прерывания сделаны
(думаю, поэтому ими никто и не пользуется). - Eddy_Em(16.03.2024 20:53)
- я активно пользуюсь EXTI. Опять же - надо просто делать всё
аккуратно. :-) - Лaгyнoв(17.03.2024 08:30)
- Дядя Серёжа аккуратист. Даже коньячок пиёт аккуратненько! :D - RxTx(17.03.2024 22:02)
- чо это. как раз, концевики. а обработка концевиков/безопасности через суперлуп - ну ты понял.. Впрочем, обработка концевиков через микроконтроллер... Гхм... У меня на что мелкие приборчики но и то, двойной концевик - опто чисто на калибровку и далее если что, то механичсекий толкач с полным обестоком всей елестроники. - RxTx(16.03.2024 21:54)
- я активно пользуюсь EXTI. Опять же - надо просто делать всё
аккуратно. :-) - Лaгyнoв(17.03.2024 08:30)
- А я вот обожаю освобождать камень, если это возможно. А уж длинные
передачи только абдуринщики без DMA делают. Застопорить на сотню
миллисекунд суперлуп - это ж трындец какой-то! А если в это время
концевик отработает и обратно отщелкнется? Или еще какая хрень? А у
STM32 очень хреново с EXTI: просто через жопу прерывания сделаны
(думаю, поэтому ими никто и не пользуется). - Eddy_Em(16.03.2024 20:53)
- Что до SPI, я вот год или два назад, вплотную занявшись STM32F303
(экранчик к ней подключал), охренел, что мой код, который стабильно
на F103 и F0xx работал, здесь внезапно сел в лужу! Eddy_Em(470 знак., 16.03.2024 20:30)
- там в конечном итоге просто надо было очистить fifo перед чтением
данных с слэйва SPI. Везде говорили про обнуление одного бита в
статусе, но я решил тупо перед любым чтением делать просто -
BFSPI=SPI1->DR; И всё стало нормально. :-) Наш друг SciFi
смеялся, но нам татарам всё равно. :-) - Лaгyнoв(16.03.2024 20:20)