189 похожих чатов

Всем привет. Что-то не могу подружиться с dma на stm32h7.

Постоянно падаю в прерывание с ошибкой Transfer error. Может кто подскажет? Пытаюсь настроить dma на отправку данных через uart.
SET_BIT(RCC->APB2ENR, RCC_APB1LENR_USART2EN);
CLEAR_BIT (USART2->CR1, USART_CR1_UE);
SET_BIT (USART2->CR1, USART_CR1_TE);
SET_BIT (USART2->CR3, USART_CR3_DMAT);
SET_BIT(RCC->AHB1ENR, RCC_AHB1ENR_DMA1EN);
__NVIC_SetPriority (DMA1_Stream0_IRQn, 2);
NVIC_EnableIRQ(DMA1_Stream0_IRQn);
DMA1_Stream0->CR = 0;
SET_BIT (DMA1_Stream0->CR, DMA_SxCR_PL_0);
SET_BIT (DMA1_Stream0->CR, DMA_SxCR_TEIE);
SET_BIT (DMA1_Stream0->CR, DMA_SxCR_TCIE);
SET_BIT (DMA1_Stream0->CR, DMA_SxCR_DIR_0);
SET_BIT (DMA1_Stream0->CR, DMA_SxCR_PFCTRL);
DMA1_Stream0->PAR =(uint32_t)(& USART2->TDR);
DMA1_Stream0->NDTR = 1;
DMA1_Stream0->M0AR = (uint32_t)(&gdata1);
SET_BIT (USART2->CR1, USART_CR1_UE);
CLEAR_BIT (USART2->ICR, USART_ICR_TCCF);
DMA1->LIFCR = DMA_LIFCR_CFEIF0 | DMA_LIFCR_CDMEIF0| DMA_LIFCR_CTEIF0| DMA_LIFCR_CHTIF0| DMA_LIFCR_CTCIF0;
SET_BIT (DMA1_Stream0->CR , DMA_SxCR_EN);

1 ответов

28 просмотров

Привет. В DMAMUX нужно еще UART выбрать

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта