ich habe im moment folgendes Problem. Zum Ansteuern eines DA Wandlers möchte ich einen Raspberry Pi (armV6) verwenden. Die Bitrate soll dabei etwa 10khz betragen. Das Problem ist allerdings das es aufgrund der Interrupts immer wieder zu ungewollten Pausen in der Ausgabe kommt. Aus diesem Grund wollte ich Interrupts für die kurze 16bit Wandlung deaktivieren und anschließend wieder aktivieren. Ich habe bereits einige Beispiele dafür mithilfe des Assemblers gefunden, allerdings bekomme ich bei der kompilierung immer wieder den Fehler das SPSR unbekannt ist.
Arm gibt als Beispielcode den folgenden Assembler Code an:
Code: Alles auswählen
disable_IRQ
LDMFD SP!, {R8, R12} ; Load R8, SPSR
ORR R12, R12, #0x80 ; Set IRQ flag to disable it
MSR SPSR_cxsf, R12 ; Set SPSR
LDMFD SP!, {R12, PC}^ ; Restore R12 and Return
enable_IRQ
LDMFD SP!, {R8, R12} ; Load R8, SPSR
BIC R12, R12, #0x80 ; Set IRQ flag to disable it
MSR SPSR_cxsf, R12 ; Set SPSR
LDMFD SP!, {R12, PC}^ ; Restore R12 and Return
FPC : 2.6
Schon einmal vielen Dank für eure Hilfe