hi Leute
Kann mir jemanden erklären, wie ich I/O Pins von AT91SAM7S256
konfigureiren kann
es gibt viele register(PIO_SODR,PIO_OSR....) und das macht mich
durcheinander
ich möchte nur 10 pins als outputs haben
vielen Dank
Das ist ja klasse!!! Genau das brauch ich auch. Könnt ihr das (brauch
nur einen Port) auch in ASM posten? C ist leider überhaupt nicht meine
Welt. Und wenn ich mir das Listing vom C - Code anschaue nach dem
compilen, dann verwirrt mich das nur. Ich lese da überhaupt nichts
heraus...
Also wenn ich den C-Code compiliere, öffnet sich bei mir automatisch ein
"Disassembly"-Fenster . Da hätt ich dann mein ASM-Code. Das Problem
ist nur, dass ich im ASM-Code keine menschliche Logik erkenne. Und das
Listing habe ich dann natürlich auch. Es ist wirklich nur so, dass ich
mit dem disassemblierten C-Code nichts anfangen kann. Ich bräuchte
einen geschriebenen Code. Das wäre klasse....nur find erst mal
einen....
Hallo,
ich möchte eigentlich nur ein kleines Programm in ASM, welches den PORT
P0 AUF HIGH und wieder AUF LOW schaltet. Hab Erfahrung mit dem MSP430.
Da hatte ich keine Probleme mit der Peripherie. Jetzt möcht ich mich in
den AT91SAM7 reinarbeiten und bin doch überrascht wie unterschiedlich
seine Architektur ist. Auch sind mir diese Cstartup-Files neu. Beim
MSP430 brauchte ich ja keine. Ports initialisieren und fertig. Jetzt
übe ich grad mit dem Atmel µC, aber auf der Hardware geht gar nichts.
Das heißt, Programm läuft, aber der scheint auf seine Begehle nicht zu
reagieren.
Man muss aber auch sagen,ich hab NUR versucht einen Port zu init und
anzusteuren. Ich habe nichts mit diesen Startup-Files gemacht (hab sie
weggelassen weil ich meine, das läuft auch ohne, also mit
Standard-Einstellungen eben....außerdem weiß ich auch nicht was ich mit
diesen Startup-Files machen soll)
Im Zweifel macht man mit den Startup-Files garnichs und nimmt sie
erstmal so wie sie sind aus Beispielen. Spaeter kann man immer noch
daran herumbasteln, wenn man etwas mehr gelernt hat. In den
Keil-Beispielen findet man "reinen" Assembler-Startup. Atmel trennt
in deren Beispielen die Initialiserung ueblicherweise in eine minimalen
Assembler-Teil und ruft sobald moeglich eine C-Routine fuer die restlich
Initialisierung. Fuer reine Assemblerentwicklung koennte statt BX main
seinen eigenen Assembler-Code reinbasteln bzw. eine Assembler-Routine
auszurufen (bx meine_routine, im asm-Code .global
meine_routine/.function maine_routine).
(Einen ARM/SAM7 aussschliesslich in Assembler zu programmieren, ist
schon eine anerkennenswerte Selbstkasteiung - viel Erfolg)
Martin Thomas
@mthomas:
Selbstmord auf Raten ist das!!! Aber, wenn man ARM Assembler als
Aufgabenstellung für ein Projekt hat?
Dachte auch erst, na super, RISC Befehlssatz, klein, kompakt, kannte
ich noch vom PIC. Und beim ARM: der Teufel soll es holen!!!
Vom PIC oder 8051 ist man da sehr verwöhnt. Aber gelegentlich muß man
schon mal was in Assembler schreiben, und wenn es z.B. ein direkter
Zugriff auf den ARM-Core ist (z.B. Anfügen der Spurious Interrupt
Behandlung direkt in der Startup.s am Interruptvektor, o.ä.).
Gruß
Dietmar