DMA1 nem működik a USART1 a stm32f103c8?

szavazat
0

Próbálok lehetővé DMA1 a USART1 a stm32f103c8 de ez nem működik. i lehetővé tette a USART a munkát adó. majd lehetővé tette a DMA1, és ezt a konfigurációt: 1 engedélyezze a DMA1 órája RCC. 2-letiltotta a DMA1 Channel. 3-állítsa a DMA1 csatornát periority nagyon magas periority. 4-teszik az irányt DMA1 csatornát a memóriából a perifériás. 5-, hogy a memória mérete és a perifériás méretű byte. 6 engedélyezze memória növekmény és disable perifériás növekmény. 7-engedélyezze körkörös módban. 8-set a DMA megszakítást átutalás teljes. 7-set a memória címét puffert és állítsa be a periféria cím, mint usart1 adatregiszter. 8-set, hogy hányszor kell DMA átvitelt 6. 9 engedélyezze a DMA1 csatorna megszakítás a NVIC. 10 engedélyezze a DMAT a usart1 hogy a USART munkát a DMA1 11 engedélyezze a DMA1 munkába.

elvégre ez a konfiguráció a DMA nem wok de az USART feladat sikeres elvégzéséhez. A fő kód készítek intialize a usart1 majd intialize a DMA1 mint én mondta ki, majd küldje el egy karakterrel terminálról, és üres while (1). A terminál csak akkor kap csak a char Volt küldeni, de nem kapja meg a char a memóriában, és a DMA nem megy a felvezető a DMA azt jelenti, hogy a DMA nem működik soha miért?

A kérdést 02/12/2019 23:57
a forrás felhasználó
Más nyelveken...                            


1 válasz

szavazat
0

én már megoldotta a problémát, hogy hiba volt a konfigurációban. A hiba az volt, amikor én vagyok elhaladó címét az adatok nyilvántartásba én nem halad a cím már de én áthaladó adatok értékét regisztrálja címet

Válaszolt 08/12/2019 11:38
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more