From efe2996a783cc9c6faa49ab7f9713444c0ed7d06 Mon Sep 17 00:00:00 2001 From: Oussama Hannouch Date: Mon, 15 May 2023 21:36:12 +0200 Subject: [PATCH] Update 'soft/PjtKEIL_StepDFT/Src/DFT.s' --- soft/PjtKEIL_StepDFT/Src/DFT.s | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/soft/PjtKEIL_StepDFT/Src/DFT.s b/soft/PjtKEIL_StepDFT/Src/DFT.s index a76ff9a..7ba5f72 100644 --- a/soft/PjtKEIL_StepDFT/Src/DFT.s +++ b/soft/PjtKEIL_StepDFT/Src/DFT.s @@ -27,29 +27,29 @@ DFT_ModuleAuCarre proc push {r4, r5, r6, r8, r9, r10} ; mov r2, #0 ; partie imaginaire = 0 mov r3, #0 ; partie reelle = 0 - mov r7, #0 ; - mov r4, #0 ; - ldr r5, =TabCos - ldr r6, =TabSin + mov r7, #0 ; compteur pour parcourir les tableaux "TabCos" et "TabSin" + mov r4, #0 ; compteur pour parcourir le signal d'entrée + ldr r5, =TabCos ; les adresses du tableau "TabCos" + ldr r6, =TabSin ; les adresses du tableau "TabSin" SumLoop - ldrsh r8, [r0, r4, lsl #1] ; + ldrsh r8, [r0, r4, lsl #1] ; Chargement des éléments du signal d'entrée ldrsh r9, [r5, r7, lsl #1] ; - ldrsh r10,[r6, r7, lsl #1] - smull r9, r8, r8, r9 - smull r10, r8, r8, r10 - add r3, r3, r9 - add r2, r2, r10 + ldrsh r10,[r6, r7, lsl #1] ; + smull r9, r8, r8, r9 ; Multiplication de l'élément du signal d'entrée avec l'élément correspondant des tableaux "TabCos" et "TabSin" (en utilisant une multiplication longue pour éviter la saturation). + smull r10, r8, r8, r10 ; + add r3, r3, r9 ; Mise à jour des parties réelles et imaginaires du résultat. + add r2, r2, r10 ; add r7, r1 ; add r4, #1 ; ++n - cmp r4, #64 + cmp r4, #64 ; bcc SumLoop ; if n < 64 refaire ;mov r0, r3 ; partie reelle comme resultat mov r1, r2 ;abs - cmp r3, #0 + cmp r3, #0 ; Calcul de la valeur absolue du résultat en stockant le maximum entre "r3" et 0 dans "r0". movge r0, r3 neglt r0, r3