Hallo Leute, nachdem ich mein ip an den plb-bus angebunden habe, möchte ich diesen mit microblaze ansprechen. Ich bin noch ein Anfänger und weiß nicht, welche Funktion ich zum schreiben/lesen benötige. Sind neben den oben genannten Funktionen noch weitere zu implementieren? Vielen Dank.
Gast
#3332253
Hi, normalerweise wird der Speicher das PLB-Slaves in den Adressraum des MB gemappt. Du kannst also direkt über einen Pointer darauf zugreifen. In Deinen Sourcen müsste irgendwo ein vom SDK automatisch generiertes File liegen, in dem ein #define für die Basisadresse steht.
Vielen Dank pks :) Ich habe vergessen zu erwähnen, dass ich keine software register eingebaut habe. Inwiefern hat dies Einfluss auf das lesen/schreiben. ... Welche weiteren Funktionen sind noch erforderlich?
Gast
#3332316
Tim S. schrieb: > Ich habe vergessen zu erwähnen, dass ich keine software register > eingebaut habe. Was meinst Du damit?
Es gibt unter "Import Peripheral" die Option Register mit einzubauen. In dem Fall habe ich diese nicht eingebaut.
Gast
#3332402
Sorry, das sagt mir nichts...habe auch auf diesem Weg noch kein Peripheral eingebunden. Ich habe in einem Project z.B. eine PLB/Wishbone bridge von Open Cores verwendet. Diese liegt dann im pcores Verzeichnis und hat den Namen "plbv46_2_wb". Wenn ich das Design ins SDK exportiere und ein BSP generiere, entsteht da unter anderem eine Datei "xparameters.h". Hier steht die Adresse, unter der ich das Modul ansprechen kann:
1 | |
2 | |
3 | |
Das ist ja witzig :)
Bei meinem eingebundenen Core handelt es sich um den "plbv46_2_wb".
Wie sieht bei dir die main()-Funktion aus.
Vielleicht so:
int main(){
Xil_Out32((BaseAddress_vonBridge), (Xuint32)(0x00000001));
...
}
Gast
#3332470
So klein ist die Welt...:-) Nein, so sieht meine main() nicht aus ;-) Die Zugriffe solltest Du, wie gesagt, einfach so machen können:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
Das sollte den gleichen Effekt haben wie Dein Zugriff oben.
Gast
#3332472
muss natürlich uint32_t *pWB heißen...
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.