diff --git a/soft/PjtKEIL_StepDeb_1/BacASable.uvoptx b/soft/PjtKEIL_StepDeb_1/BacASable.uvoptx index ed76561..5c54b20 100644 --- a/soft/PjtKEIL_StepDeb_1/BacASable.uvoptx +++ b/soft/PjtKEIL_StepDeb_1/BacASable.uvoptx @@ -10,7 +10,7 @@ *.s*; *.src; *.a* *.obj; *.o *.lib - *.txt; *.h; *.inc + *.txt; *.h; *.inc; *.md *.plm *.cpp 0 @@ -75,7 +75,7 @@ 1 0 - 1 + 0 18 @@ -153,7 +153,55 @@ -U066CFF574857847167074929 -O2254 -S0 -C0 -A0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL020000 -FP0($$Device:STM32F103RB$Flash\STM32F10x_128.FLM) - + + + 0 + 0 + 28 + 1 +
134218682
+ 0 + 0 + 0 + 0 + 0 + 1 + .\Src\principal.c + + \\BacASable\Src/principal.c\28 +
+ + 1 + 0 + 30 + 1 +
134218692
+ 0 + 0 + 0 + 0 + 0 + 1 + .\Src\principal.c + + \\BacASable\Src/principal.c\30 +
+
+ + + 0 + 1 + VarTime + + + + + 1 + 0 + 0x080003E0 + 0 + + 0 @@ -260,7 +308,7 @@ 1 0 - 0 + 1 18 @@ -339,6 +387,13 @@ + + + 0 + 1 + VarTime + + 1 @@ -609,7 +664,7 @@ 1 1 1 - 1 + 0 0 0 .\Src\principal.c diff --git a/soft/PjtKEIL_StepDeb_1/BacASable.uvprojx b/soft/PjtKEIL_StepDeb_1/BacASable.uvprojx index 9c192f5..2318c0c 100644 --- a/soft/PjtKEIL_StepDeb_1/BacASable.uvprojx +++ b/soft/PjtKEIL_StepDeb_1/BacASable.uvprojx @@ -10,7 +10,7 @@ Simu 0x4 ARM-ADS - 5060750::V5.06 update 6 (build 750)::.\ARMCC + 5060960::V5.06 update 7 (build 960)::.\ARMCC 0 @@ -424,7 +424,7 @@ CibleSondeKEIL 0x4 ARM-ADS - 5060750::V5.06 update 6 (build 750)::.\ARMCC + 5060960::V5.06 update 7 (build 960)::.\ARMCC 0 @@ -1338,11 +1338,6 @@ <Project Info> - - - - - 0 1 diff --git a/soft/PjtKEIL_StepDeb_1/Src/Delay.s b/soft/PjtKEIL_StepDeb_1/Src/Delay.s index bf49175..827c50b 100644 --- a/soft/PjtKEIL_StepDeb_1/Src/Delay.s +++ b/soft/PjtKEIL_StepDeb_1/Src/Delay.s @@ -1,6 +1,6 @@ PRESERVE8 THUMB - + ; ====================== zone de réservation de données, ====================================== ;Section RAM (read only) : @@ -12,7 +12,7 @@ VarTime dcd 0 - + ; =============================================================================================== ;constantes (équivalent du #define en C) @@ -20,8 +20,7 @@ TimeValue equ 900000 EXPORT Delay_100ms ; la fonction Delay_100ms est rendue publique donc utilisable par d'autres modules. - - + EXPORT VarTime ;Section ROM code (read only) : area moncode,code,readonly @@ -44,17 +43,18 @@ Delay_100ms proc ldr r0,=VarTime ldr r1,=TimeValue - str r1,[r0] + str r1,[r0]; TimeValue rangee a l adresse de r0 BoucleTempo - ldr r1,[r0] + ldr r1,[r0] ;r1 = valeur contenue à l'adresse de r0, = TimeValue - une constante subs r1,#1 - str r1,[r0] - bne BoucleTempo + ;r1 = r1 - 1 + str r1,[r0] ; rangee a l adresse de r0 + bne BoucleTempo ;branch vers le début de BoucleTempo si la valeur à l'adresse de r0 != 0 - bx lr - endp + bx lr ; branch permettant le retour de la fonction + endp ; fin de la procedure delay_100ms END \ No newline at end of file diff --git a/soft/PjtKEIL_StepDeb_2/BacASable.uvoptx b/soft/PjtKEIL_StepDeb_2/BacASable.uvoptx index f1315bb..3e18e06 100644 --- a/soft/PjtKEIL_StepDeb_2/BacASable.uvoptx +++ b/soft/PjtKEIL_StepDeb_2/BacASable.uvoptx @@ -10,7 +10,7 @@ *.s*; *.src; *.a* *.obj; *.o *.lib - *.txt; *.h; *.inc + *.txt; *.h; *.inc; *.md *.plm *.cpp 0 @@ -154,6 +154,26 @@ + + + 0 + 1 + portb + + + 1 + 1 + FlagCligno + + + + + 1 + 0 + 0x2000047C + 0 + + 0 @@ -174,7 +194,7 @@ 0 0 0 - 0 + 1 0 0 0 @@ -200,7 +220,7 @@ 0 ((portb & 0x00000002) >> 1 & 0x2) >> 1 - FF000000000000000000000000000000E0FFEF400100000000000000000000000000000028706F7274622026203078303030303030303229203E3E2031000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000001000000000000000000F03F160000000000000000000000000000000000000096020008 + FF000000000000000000000000000000E0FFEF400100000000000000000000000000000028706F7274622026203078303030303030303229203E3E2031000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000001000000000000000000F03F170000000000000000000000000000000000000096020008 @@ -374,7 +394,7 @@ 0 0 0 - 0 + 1 0 0 0 diff --git a/soft/PjtKEIL_StepDeb_2/BacASable.uvprojx b/soft/PjtKEIL_StepDeb_2/BacASable.uvprojx index d99d0f0..e77bfc6 100644 --- a/soft/PjtKEIL_StepDeb_2/BacASable.uvprojx +++ b/soft/PjtKEIL_StepDeb_2/BacASable.uvprojx @@ -10,7 +10,7 @@ Simu 0x4 ARM-ADS - 5060750::V5.06 update 6 (build 750)::.\ARMCC + 5060960::V5.06 update 7 (build 960)::.\ARMCC 0 @@ -1338,11 +1338,6 @@ <Project Info> - - - - - 0 1 diff --git a/soft/PjtKEIL_StepDeb_2/Src/Cligno.s b/soft/PjtKEIL_StepDeb_2/Src/Cligno.s index 8a75b7a..dacedbb 100644 --- a/soft/PjtKEIL_StepDeb_2/Src/Cligno.s +++ b/soft/PjtKEIL_StepDeb_2/Src/Cligno.s @@ -1,7 +1,8 @@ PRESERVE8 THUMB - + include ../Driver/DriverJeuLaser.inc + export timer_callback ; ====================== zone de réservation de données, ====================================== ;Section RAM (read only) : area mesdata,data,readonly @@ -10,8 +11,9 @@ ;Section RAM (read write): area maram,data,readwrite +FlagCligno dcd 0 + - ; =============================================================================================== @@ -20,11 +22,55 @@ ;Section ROM code (read only) : area moncode,code,readonly ; écrire le code ici + EXPORT FlagCligno +;void timer_callback(void) +;{ +; if (FlagCligno==1) +; { +; FlagCligno=0; +; GPIOB_Set(1); +; } +; else +; { +; FlagCligno=1; +; GPIOB_Clear(1); +; } +;} +;void timer_callback(void) +timer_callback proc +;{ + push {lr} + ldr r1,=FlagCligno + ldr r0, [r1] + cmp r0, #0 + beq flag_nul +; if (FlagCligno==1) + +; { + mov r0, #0 + str r0, [r1] + mov r0, #1 + bl GPIOB_Set + pop {pc} + +; FlagCligno=0; +; GPIOB_Set(1); +; } +; else +flag_nul +; { + mov r0, #1 + str r0, [r1] + + bl GPIOB_Clear +; FlagCligno=1; +; GPIOB_Clear(1); +; } +;} + pop {pc} + + endp - - - - END \ No newline at end of file diff --git a/soft/PjtKEIL_StepDeb_2/Src/principal.c b/soft/PjtKEIL_StepDeb_2/Src/principal.c index 4d726a1..4c0f80f 100644 --- a/soft/PjtKEIL_StepDeb_2/Src/principal.c +++ b/soft/PjtKEIL_StepDeb_2/Src/principal.c @@ -2,7 +2,7 @@ #include "DriverJeuLaser.h" -void timer_callback(void); +extern void timer_callback(void); int main(void) { @@ -18,6 +18,8 @@ CLOCK_Configure(); //** Placez votre code là ** // + Timer_1234_Init_ff(TIM4,7200000); + // Activation des interruptions issues du Timer 4 @@ -25,7 +27,7 @@ CLOCK_Configure(); // cette fonction (si écrite en ASM) doit être conforme à l'AAPCS //** Placez votre code là ** // - + Active_IT_Debordement_Timer(TIM4,2,timer_callback); // configuration de PortB.1 (PB1) en sortie push-pull @@ -39,9 +41,10 @@ GPIO_Configure(GPIOB, 1, OUTPUT, OUTPUT_PPULL); while (1) { + } } - +/* char FlagCligno; void timer_callback(void) @@ -56,6 +59,5 @@ void timer_callback(void) FlagCligno=1; GPIOB_Clear(1); } - } - +*/ diff --git a/soft/PjtKEIL_StepSon/Src/GestionSon.s b/soft/PjtKEIL_StepSon/Src/GestionSon.s index 8a75b7a..495ae23 100644 --- a/soft/PjtKEIL_StepSon/Src/GestionSon.s +++ b/soft/PjtKEIL_StepSon/Src/GestionSon.s @@ -1,6 +1,6 @@ PRESERVE8 THUMB - + export CallbackSon ; ====================== zone de réservation de données, ====================================== ;Section RAM (read only) : @@ -11,7 +11,8 @@ area maram,data,readwrite - +SortieSon dcd 0x0000 +Index dcd 0 ; =============================================================================================== @@ -21,10 +22,18 @@ area moncode,code,readonly ; écrire le code ici - - - - - +CallbackSon proc + ; + ldrh r2, Son + ldrh r3, Index + ldrh r1, [r2,r3] + add r1, #32768 + mov r0, #92 + udiv r1, r0 + strh r1, SortieSon + add r3, #16 + strh r3, Index + bx lr + endp END \ No newline at end of file diff --git a/soft/PjtKEIL_StepSon/Src/principal.c b/soft/PjtKEIL_StepSon/Src/principal.c index d09be75..5c5e967 100644 --- a/soft/PjtKEIL_StepSon/Src/principal.c +++ b/soft/PjtKEIL_StepSon/Src/principal.c @@ -14,8 +14,11 @@ int main(void) // Après exécution : le coeur CPU est clocké à 72MHz ainsi que tous les timers CLOCK_Configure(); - - + Timer_1234_Init_ff(TIM4,6552); + Timer_1234_Init_ff(TIM3,6552); + Active_IT_Debordement_Timer(TIM4,2,CallbackSon); + unsigned short int PWM_Init_ff(TIM3,4,720); + char GPIO_Configure(GPIOB, 0, OUTPUT, ALT_PPULL); //============================================================================ diff --git a/soft/PjtKEIL_StepSon/StepSon.uvoptx b/soft/PjtKEIL_StepSon/StepSon.uvoptx index a13d7da..03f6088 100644 --- a/soft/PjtKEIL_StepSon/StepSon.uvoptx +++ b/soft/PjtKEIL_StepSon/StepSon.uvoptx @@ -10,7 +10,7 @@ *.s*; *.src; *.a* *.obj; *.o *.lib - *.txt; *.h; *.inc + *.txt; *.h; *.inc; *.md *.plm *.cpp 0 @@ -666,6 +666,38 @@ + + Son + 1 + 0 + 0 + 0 + + 4 + 4 + 2 + 0 + 0 + 0 + .\Src\bruitverre.asm + bruitverre.asm + 0 + 0 + + + 4 + 5 + 2 + 0 + 0 + 0 + .\Src\GestionSon.s + GestionSon.s + 0 + 0 + + + ::CMSIS 0 diff --git a/soft/PjtKEIL_StepSon/StepSon.uvprojx b/soft/PjtKEIL_StepSon/StepSon.uvprojx index d0b5c10..839c3b9 100644 --- a/soft/PjtKEIL_StepSon/StepSon.uvprojx +++ b/soft/PjtKEIL_StepSon/StepSon.uvprojx @@ -410,6 +410,21 @@ + + Son + + + bruitverre.asm + 2 + .\Src\bruitverre.asm + + + GestionSon.s + 2 + .\Src\GestionSon.s + + + ::CMSIS @@ -819,6 +834,21 @@ + + Son + + + bruitverre.asm + 2 + .\Src\bruitverre.asm + + + GestionSon.s + 2 + .\Src\GestionSon.s + + + ::CMSIS @@ -897,7 +927,7 @@ CibleSondeST 0x4 ARM-ADS - 5060750::V5.06 update 6 (build 750)::.\ARMCC + 5060960::V5.06 update 7 (build 960)::.\ARMCC 0 @@ -1297,6 +1327,21 @@ + + Son + + + bruitverre.asm + 2 + .\Src\bruitverre.asm + + + GestionSon.s + 2 + .\Src\GestionSon.s + + + ::CMSIS @@ -1322,12 +1367,7 @@ - <Project Info> - - - - - + StepSon 0 1