DMA Verständnissfrage bei dsPics

Gast #2010806
Lesenswert?
• ▲
▼
Hallo zusammen. Ich werde irgendwie nicht schlau vom DMA im dsPic. DMA 
steht ja für Direct Memory Access, also direkter Speicherzugriff. Ist 
das so gemeint, dass man von der Pic-Peripherie z.b. ADC in den Pic-Ram 
schreiben kann, ohne groß Code zu haben, oder ist das so gemeint, dass 
man an bestimmte Pins bzw. SPI einen externen Ram anschließen kann, der 
aber als "Intern" angesehen wird, also dass man sich nich über die 
übertragung kümmern muss. Als Beispiel: 0x0000 - 0xFFFF ist PIC-Ram und 
0xE00000 - 0xEFFFFF ist der eigentlich externe Ram. Hier wäre der Pic 
dann sozusagen Peripherie, die direkt auf den (externen) Ram zugreift.

Letzteres wäre nämlich nicht schlecht, da man ja dort ein größeren Ram 
(evtl SD-Ram vom PC) anschließen könnte, als der der im Pic ist.

Sollte es, wie ich vermute, das erste sein, also das man "ohne" Code vom 
ADC ins Ram schreiben kann, wie kann man die 2. Möglichkeit am 
elegantesten verwirklichen, sodass ich die ADC-Daten schnell und mit so 
wenig Code wie möglich in einem externen Ram speichern kann.
Gast #2012185
Lesenswert?
• ▲
▼
Hallo,
Deine erste Vermutung ist richtig. Mit DMA können einige Schnittstellen 
auf einen speziellen RAM-Bereich (DMA-RAM) zugreifen, ohne die CPU damit 
zu belästigen. Die Zugriffe werden über entsprechende Register 
hardwaregesteuert und erfolgen meist über einen separaten Bus.
Um externes RAM anzuschließen könntest Du dir mal den Parallel Master 
Port (PMP) beim DsPic33F... ansehen. Der ist extra dafür vorgesehen.

Grüße
Gast #2012364
Lesenswert?
• ▲
▼
Hallo

Falls als externen Speicher ein EEPROM oder ein Flash möglich ist 
könntest du versuchen per DMA von ADC zulesen und mit einem zweiten DMA 
Kanal die Daten in den externen Speicher zu schreiben (z.B. SPI-EEPROM)

Gruss Manuel

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.