Sida 1 av 1

Börjat leka lite med DMA i PIC32.

Postat: 3 juni 2020, 00:13:18
av TomasL
Har inte haft något behov av det tidigare.
Men nu skall jag skicka rut 500 tecken med jämna mellanrum via serieport.
Även om serieporten är satt till 115kb/s, så tog det lite tid, närmare 44ms att överföra detta.
Serieporten är då helt interruptstyrd både vid sändning och mottagning.

Med DMA istället, så tog hela sändningen (eller snarare tiden processorn var upptagen) 0,33ms, klart mycket bättre.

Re: Börjat leka lite med DMA i PIC32.

Postat: 3 juni 2020, 10:21:07
av Icecap
Jeps, en UART är - räknat i instruktioner - otrolig långsam.

Jag har länga använd interruptstyrd sändning (och mottagning) och det är "det enda" om man förväntar att skiten ska hinna med jobbet.

Sedan har jag inte använd DMA men en cirkulär buffer, effekten är dock den samma: utskriften går snabbt att få avklarat.

Re: Börjat leka lite med DMA i PIC32.

Postat: 3 juni 2020, 10:32:47
av Rick81
DMA är ju kung! Kör det i STM32 med UART, ADC, SPI m.m....

Interupt för varje datavärde är ju 80tal.....