ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
26 апреля
1098334 Топик полностью
evgeniy1294 (07.05.2021 01:19 - 01:33, просмотров: 278) ответил Aleksey_75 на с АВР все ясно и логично как божий день! а здесь они даже доку выпустили (стр6 фиг 2), причем half transfer flag write выставляется когда еще ни одного бита в шину не всунули ))
Нужно понимать механизм работы DMA. Началом каждой транзакции служит request, которым физически является теневой флаг подключенной периферии, разумеется нужно разришение арбитра шины. После транзакции DMA получает ACK от шины, например APB, декрементирует счетчик байт и ждёт новый request. Но этот ACK для SPI означает просто копирование в сдвиговый регистр! Когда счетчик байт становится равен 0, dma поднимает флаг TC, что может вызвать прерывание. Так что это 

прерывание

означает только то, что dma закончил работу, теперь нужно реагировать на прерывание от периферии.