STM32F103 UART DMA

Martin Locker locker na vosrk.cz
Úterý Prosinec 26 19:43:10 CET 2023


Díky za postřeh, už jsem to opravil. Máte pravdu, někdy to může být velmi ošemetné.

Martin Locker

----- Původní zpráva -----
Odesilatel: Petr Labaj (labaj na volny.cz)
Datum: 26/12/2023 17:15
Příjemce: hw-list na list.hw.cz
Předmět: Re: STM32F103 UART DMA

Můžu drobnou poznámku, která je ale obecnější a s daným problémem nesouvisí?

Vy všude používáte "orování" parametrů, které zadáváte do řídících registrů.
Např.:
USART2->CR1 |= USART_CR1_TE | USART_CR1_RE;
nebo
DMA1_Channel6->CCR |= DMA_CCR_MINC | DMA_CCR_CIRC | DMA_CCR_TCIE;

Ale používáte to i při prvním zápisu do daného registru.
Tedy jinými slovy spoléháte na to, že předtím tam byly samé nuly.
Což může být velice zrádné, když tu konstrukci použijete třeba i někdy
později, kdy už v těch registrech něco je.

Takže by podle mě měl první zápis vypadat takhle:
USART2->CR1 = USART_CR1_TE | USART_CR1_RE;
nebo
DMA1_Channel6->CCR = DMA_CCR_MINC | DMA_CCR_CIRC | DMA_CCR_TCIE;

A orování použít až když tam už dodatečně něco přidáváte.

PL
_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list