PRESERVE8 THUMB ; ====================== zone de réservation de données, ====================================== ;Section RAM (read only) : area mesdata,data,readonly ;Section RAM (read write): area maram,data,readwrite SortieSon dcw 0 index dcd 0 ; =============================================================================================== EXPORT CallbackSon ; EXTERN bruitverre ; EXTERN Son ; EXTERN LongueurSon ; EXPORT SortieSon ; //pour evaluer la variable lors des tests ;Section ROM code (read only) : area moncode,code,readonly ; écrire le code ici CallbackSon ldr r1, =index ldr r2, [r1] ldr r3, =Son push {r6} ldr r6, LongueurSon cmp r2, r6 ble notEqual pop {r6} notEqual mov r6, #2 mul r6, r2 LDRSH r0, [r3, r6] add r0, #32768 push {r4} mov r4, #719 mul r0, r4 mov r4, #65535 udiv r0, r4 push {r7} ldr r7, =SortieSon str r0, [r7] pop {r7} add r2, #1 push {r5} ldr r5, =index str r2, [r5] pop {r5} pop {r4} END