Raphael_lacroix-Aurelia_lej.../PjtKEIL_StepDeb_2/Src/Cligno.s

78 lines
1.2 KiB
ArmAsm

PRESERVE8
THUMB
include DriverJeuLaser.inc
; ====================== zone de réservation de données, ======================================
;Section RAM (read only) :
area mesdata,data,readonly
;Section RAM (read write):
area maram,data,readwrite
FlagCligno dcd 0
; ===============================================================================================
;Section ROM code (read only) :
area moncode,code,readonly
export FlagCligno
export timer_callback
; écrire le code ici
timer_callback proc
push {lr}
;r1 : &FlagCligno
ldr r1, =FlagCligno
; r2 : * (&FlagCligno)
ldr r2, [r1]
subs r2, #1
bne Action1
; on met la valeur 0 dans r0
mov r0, #0
; on stocke à l'adresse r1 la valeur dans r0
str r0, [r1]
;on prépare R0 pour l'appel de la fonction
mov r0, #1
bl GPIOB_Set
bne Fin
Action1
; on met la valeur 1 dans r0
mov r0, #1
; on stocke à l'adresse r1 la valeur dans r0
str r0, [r1]
;on a r0 à 1 pour l'appel de la fonction
bl GPIOB_Clear
Fin
pop {pc}
endp
;/*
;void timer_callback(void)
;{
; if (FlagCligno==1)
; {
; FlagCligno=0;
; GPIOB_Set(1);
; }
; else
; {
; FlagCligno=1;
; GPIOB_Clear(1);
; }
;}*/
END