PRESERVE8 THUMB INCLUDE DriverJeuLaser.inc EXPORT timer_callback ; ====================== 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 ; =============================================================================================== ;void timer_callback(void) ;{ ; if (FlagCligno==1) ; { ; FlagCligno=0; ; GPIOB_Set(1); ; } ; else ; { ; FlagCligno=1; ; GPIOB_Clear(1); ; } ; ;} ;Section ROM code (read only) : area moncode,code,readonly ; écrire le code ici ;void timer_callback(void) ;.global timer_callback timer_callback proc push {lr} ldr r2,=FlagCligno ldr r1,[r2] ;{ ; if (FlagCligno==1) ; { cmp r1,#1 bne pasegal ; FlagCligno=0; mov r1,#0 ; GPIOB_Set(1); mov r0,#1 bl GPIOB_Set ; } b egal ; else pasegal ; { ; FlagCligno=1; mov r1,#1 ; GPIOB_Clear(1); mov r0,#1 push {r1} bl GPIOB_Clear pop {r1} ; } egal ; ;} str r1,[r2] pop{pc} ;ou pop {lx} bx lr ENDFUNC END