début de la dft (somme réelle et imaginaire commmentée)

This commit is contained in:
Firmin Rousseau 2023-04-19 13:07:16 +02:00
vanhempi d553a2b2e4
commit 788676daa7

Näytä tiedosto

@ -10,6 +10,9 @@
;Section RAM (read write): ;Section RAM (read write):
area maram,data,readwrite area maram,data,readwrite
ModuleAuCarre dcd 0
PartieReelle dcd 0
PartieIm dcd 0
; =============================================================================================== ; ===============================================================================================
@ -160,7 +163,47 @@ TabSin
DCW -6393 ; 62 0xe707 -0.19510 DCW -6393 ; 62 0xe707 -0.19510
DCW -3212 ; 63 0xf374 -0.09802 DCW -3212 ; 63 0xf374 -0.09802
DFT_ModuleAuCarre proc
push {r4, r5, r6, r7, r8}
ldr r0, =TabCos
ldr r8, =TabSin
ldr r1, =LeSignal
ldr r6, =PartieReelle
ldr r7, =PartieIm
mov r3, #0
debut_boucle
ldrsh r4, [r1,r3, lsl #1];lecture de la valeur du signal à l'adresse r1 décalé de l'index r3
ldrsh r2, [r0,r3, lsl #1];lecture de la valeur du cos à l'adresse r0 décalé de l'index r3
;attention format à prendre en compte.............................
mul r5, r2, r4 ;calcul
ldr r2, [r6] ;lecture de la valeur de la partie réelle
add r2, r5 ; on y ajoute la valeur calculée
strh r2, [r6] ; on store la valeur à l'adresse
ldrsh r2, [r8,r3, lsl #1];lecture de la valeur du sin
mul r5, r2, r4 ; calcul en reprenant la valeur du signal qui ne change pas dans r4
ldr r2, [r7];lecture de la valeur de la partie imaginaire
add r2, r5
strh r2, [r7]
add r3, #1 ;incrémentation de l'index
cmp r3, #64 ;on compare pour sortir de la boucle
bne debut_boucle
fin_boucle
pop {r4, r5, r6, r7, r8}
bx lr
endp
END END