c2809a59c6a9c43f79ddae19f35b7b19

Jeg prøver å gjøre det mulig DMA1 med USART1 i stm32f103c8 men det fungerer ikke. Jeg aktiverte usart til å arbeide som sender. og deretter aktivert DMA1 og gjøre denne konfigurasjonen til det en aktivere DMA1 klokke fra RCC. 2-deaktivert DMA1 Channel. 3-set DMA1 kanalen periority så meget høy periority. 4-gjøre retningen av DMA1 kanal fra hukommelsen til ekstern enhet. 5-gjøre minnet størrelse og perifer størrelse som byte. 6-aktiver hukommelse tilvekst og deaktivere perifere inkrement. 7-aktiver sirkulær modus. 8-set DMA avbruddet for overføring fullført. 7-set minneadressebufferen og sette den perifere adresse som usart1 dataregister. 8-angi antall ganger til DMA-overførings som 6. 9-aktivere DMA1 kanal avbruddet i NVIC. 10-aktivere DMAT i usart1 å gjøre usart arbeidet med DMA1 11-aktivere DMA1 å starte arbeidet.


etter all denne konfigurasjonen DMA ikke wok men usart arbeidet lykkes. i hoved koden jeg gjøre intialize den usart1 og deretter intialize den DMA1 som meg sa opp og deretter sende ett tegn til terminalen og gjøre tom while (1). terminalen bare får bare røye jeg hadde sende den, men ikke motta røye i minnet og DMA ikke gå til behandleren av DMA det at DMA ikke fungerer aldri hvorfor?

 
DMA1 fungerer ikke med USART1 i stm32f103c8?
============================================


coredump.biz
2019.51

Jeg har blitt løst mitt problem det var en feil i konfigurasjonen. feilen var da jeg passerer adressen til dataregisteret jeg er ikke bestått adresse allerede, men jeg har bestått verdien av dataregisteret adresse

 