Hallo, wo genau kann ich nachlesen wie ich genau einen Interrupt durch einen Taster auslösen kann. Also was muß ich im AIC und PIO machen usw....und zwar mal in einem Satz! Weiß jemand eine Seite bei dem ich das nachlesen kann? Gruß Tobias
Datenblatt. (Ok, das ist kein richtiger Satz :)) Im groben: ISR schreiben, ISR in den AIC eintragen (Datenblatt), pin change interrupt im PIO controller aktivieren (Datenblatt), PIO controller konfigurieren (Datenblatt), Takt für PIO aktivieren (Datenblatt). Alternativ kann ich dir die Beispiele von Martin Thomas ans Herz legen.
ich habe den gleichen problem wie du tobias. hoffe meldet sich jemand . gruss!
Hallo Frank danke für die Antwort! Hart du zufällig noch einen Tip wo man das noch nachlesen kann? Martin Thomas benutzt eine lib_AT91SAM7S64_H die ich nicht kompliieren kann! Ich benutzte Ecplise-yagarto-openocd-olimex(ARM-USB-OCD)-Olimex EK Board. Vielleicht auch hier eine Idee? Gruß Tobi
Hm, stellt sich die Frage, warum das bei dir nicht klappt. Ich habe den gcc aus den sourcen kompiliert und da geht das eigentlich einwandfrei. Schreib doch einfach mal die Fehlermeldung.
Hallo, also ich habe einfach mal die lib_AT91SAM7S64_H in mein Projekt kopiert und dann in meiner main folgende Zeile kopiert: AT91F_PIO_ClearOutput( AT91C_BASE_PIOA, LED2 ); folgende Fehlermeldung bekam ich dann wenn ich unter Ecplise das "Build Project" gedrückt habe: make -k all .compiling arm-elf-gcc -I./ -c -fno-common -O0 -g main.c ..linking arm-elf-ld -v -Map main.map -Ttest123.cmd -o main.out crt.o main.o button2isr.o isrsupport.o lowlevelinit.o libc.a libm.a libgcc.a GNU ld version 2.17 main.o: In function `main': L:\Workspace\TEST mit Pollen/main.c:22: undefined reference to `AT91F_PIO_ClearOutput' make: *** [main.out] Error 1 make: Target `all' not remade because of errors. Hoffe, du hast eine Idee!? Gruß Tobias
Was meinst du mit "kopiert"? Die Datei? Auch mit #include eingebunden? Auf jeden Fall ist die Funktion nicht bekannt.
in den gleichen Ornder kopiert.....merh nicht. Da es ja eine header Datei sit habe ich sie nicht mit include eingebunden! Kann es sein, daß der Compiler die lib_AT91SAM7S64_H nicht versteht, obwohl sie Ansi C entspricht, zum Beispiel weil irgendwelche Schlagwörter ihm nicht bekannt sind? Gruß Tobias
Du musst sie einfach mit include einbinden. Die Funktionen sind inline in dieser Datei programmiert. Woher soll denn der Compiler wissen, dass diese Datei dazugehört? Am besten, du nimmst eines der Beispielprojekte von Martin Thomas und löschst die unnötigen Dinge raus.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.