2017-06-15 4 views
0

Ich habe einen Stub schreiben für:Ich möchte die Syntax von '__attribute __ ((Leerzeichen (dma))) verstehen;'

extern ECAN1MSGBUF ecan1msgBuf __attribute__((space(dma))); 

Kann mir jemand erklären, was diesen Aufruf macht, wie es funktioniert und wie kann ich einen Stub für ein Testprogramm schreiben/verwenden? Ich habe die Hardware nicht zu Hause und muss einen Test schreiben, aber der XCode meldet als Warnung: unbekannter Attribute-Platz wird ignoriert. Ansonsten arbeite ich am MPLabX Compiler/Debugger mit Zugriff auf die Hardware. Es gibt natürlich kein Problem.

+1

veröffentlicht hat. Er deklariert 'ecan1msgBuf' als eine Variable vom Typ' ECAN1MSGBUF', die sich in einem DMA-Raum befindet. –

Antwort

0

DMA-Platz auf Dspics ist Dual-Port-RAM, auf die zugegriffen werden kann, ohne mit der ALU (der eigentlichen CPU) um die Speicherbandbreite zu konkurrieren.

In DspicE DMA-Raum ist jedoch jenseits der 32 kb Mark, die EDS Adressierung benötigt. Wenn ja, möchten Sie vielleicht den Beispielcode sehen, den ich über dspice CAN unter http://www.microchip.com/forums/m790729.aspx#792226

Verwandte Themen