316 lines
9.7 KiB
Text
316 lines
9.7 KiB
Text
|
|
|
|
|
|
ARM Macro Assembler Page 1
|
|
|
|
|
|
1 00000000 PRESERVE8
|
|
2 00000000 THUMB
|
|
3 00000000 include ./Driver/DriverJeuLaser.inc
|
|
1 00000000
|
|
2 00000000 ; Bibliotheque DriverJeuLaser (ancienne gassp72 adaptée
|
|
2021 - TR)
|
|
3 00000000 ; Accès en aux fonctions suivantes :
|
|
4 00000000 ; GPIO :
|
|
5 00000000 ; GPIOA_Set(char Broche), GPIOB_Set(char Broche), GPIOC_
|
|
Set(char Broche)
|
|
6 00000000 ; GPIOA_Clear(char Broche), GPIOB_Clear(char Broche), GP
|
|
IOC_Clear(char Broche)
|
|
7 00000000
|
|
8 00000000 ; PWM :
|
|
9 00000000 ;/**
|
|
10 00000000 ; * @brief Fixe une valeur de PWM, Val, en tick horloge
|
|
. La rapport cyclique effectif
|
|
11 00000000 ; * est donc : rcy = Thaut_ticks / Periode_ticks
|
|
12 00000000 ; * @note spécifique Jeu Laser, PWM liée exclusivement
|
|
au TIM3, chan3
|
|
13 00000000 ; * @param Thaut_ticks : durée de l'état haut d'une imp
|
|
ulsion en Ticks
|
|
14 00000000 ; * @retval None
|
|
15 00000000 ; */
|
|
16 00000000
|
|
17 00000000 ;void PWM_Set_Value_TIM3_Ch3( unsigned short int Thaut_t
|
|
icks);
|
|
18 00000000 import PWM_Set_Value_TIM3_Ch3
|
|
19 00000000
|
|
20 00000000
|
|
21 00000000
|
|
22 00000000 ;/**
|
|
23 00000000 ; * @brief Mise à 1 d'une broche GPIO
|
|
24 00000000 ; * @note Une fonction par GPIO
|
|
25 00000000 ; * @param Broche : 0 à 15
|
|
26 00000000 ; * @retval None
|
|
27 00000000 ; */
|
|
28 00000000
|
|
29 00000000 ;void GPIOA_Set(char Broche);
|
|
30 00000000 import GPIOA_Set
|
|
31 00000000
|
|
32 00000000 ;void GPIOB_Set(char Broche);
|
|
33 00000000 import GPIOB_Set
|
|
34 00000000
|
|
35 00000000 ;void GPIOC_Set(char Broche);
|
|
36 00000000 import GPIOC_Set
|
|
37 00000000
|
|
38 00000000
|
|
39 00000000
|
|
40 00000000 ;/**
|
|
41 00000000 ; * @brief Mise à 0 d'une broche GPIO
|
|
42 00000000 ; * @note Une fonction par GPIO
|
|
43 00000000 ; * @param Broche : 0 à 15
|
|
44 00000000 ; * @retval None
|
|
45 00000000 ; */
|
|
46 00000000
|
|
47 00000000 ;void GPIOA_Clear(char Broche);
|
|
48 00000000 import GPIOA_Clear
|
|
49 00000000
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 2
|
|
|
|
|
|
50 00000000 ;void GPIOB_Clear(char Broche);
|
|
51 00000000 import GPIOB_Clear
|
|
52 00000000
|
|
53 00000000 ;void GPIOC_Clear(char Broche);
|
|
54 00000000 import GPIOC_Clear
|
|
55 00000000
|
|
56 00000000 end
|
|
4 00000000
|
|
5 00000000
|
|
6 00000000 ; ====================== zone de réservation de données,
|
|
======================================
|
|
7 00000000 ;Section RAM (read only) :
|
|
8 00000000 area mesdata,data,readonly
|
|
9 00000000 extern Son
|
|
10 00000000
|
|
11 00000000 ;Section RAM (read write):
|
|
12 00000000 area maram,data,readwrite
|
|
13 00000000
|
|
14 00000000 export SortieSon
|
|
15 00000000 00 00 SortieSon
|
|
dcw 0 ;Declaration d'une
|
|
variable sur 16bits
|
|
|
|
16 00000002 00 00 00000000
|
|
index dcd 0
|
|
17 00000008
|
|
18 00000008
|
|
19 00000008
|
|
20 00000008 ; ======================================================
|
|
=========================================
|
|
21 00000008
|
|
22 00000008
|
|
23 00000008
|
|
24 00000008
|
|
25 00000008 ;Section ROM code (read only) :
|
|
26 00000008 area moncode,code,readonly
|
|
27 00000000 ; écrire le code ici
|
|
28 00000000
|
|
29 00000000 export CallbackSon
|
|
30 00000000 CallbackSon
|
|
proc
|
|
31 00000000 B500 push {lr}
|
|
32 00000002 480C ldr r0, =Son ;r0=&Son
|
|
33 00000004 4A0C ldr r2, =index ; r2=&index
|
|
34 00000006 6811 ldr r1, [r2] ; r1 = index
|
|
35 00000008 5E43 ldrsh r3, [r0, r1] ;r3=son[index]
|
|
36 0000000A ; on aurait pu faire ldrsh r3, [r0, r1, lsl #1] et incre
|
|
menter de 1
|
|
37 0000000A F101 0102 add r1, #2 ; index +=2
|
|
38 0000000E 6011 str r1, [r2] ; index en memoire=
|
|
r1
|
|
39 00000010
|
|
40 00000010 ;Normalisation de la valeur son [index]
|
|
41 00000010 F503 4300 add r3, #32768 ;r3+=32278
|
|
42 00000014
|
|
43 00000014 B410 push {r4}
|
|
44 00000016 F240 24CF mov r4, #719 ; r4 = 719
|
|
45 0000001A FB03 F304 mul r3,r4 ;r3*=719
|
|
46 0000001E EA4F 4323 asr r3, #16 ;r3/=65536
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 3
|
|
|
|
|
|
47 00000022 BC10 pop {r4}
|
|
48 00000024
|
|
49 00000024 ;On met la valeur modifiée dans SortieSon
|
|
50 00000024 4805 ldr r0, =SortieSon ;r0=&SortieSon
|
|
51 00000026 6003 str r3, [r0]
|
|
52 00000028
|
|
53 00000028 B40F push {r0-r3}
|
|
54 0000002A 4618 mov r0,r3
|
|
55 0000002C F7FF FFFE bl PWM_Set_Value_TIM3_Ch3
|
|
56 00000030 BC0F pop {r0-r3}
|
|
57 00000032
|
|
58 00000032 BD00 pop {pc}
|
|
59 00000034 endp
|
|
60 00000034
|
|
61 00000034
|
|
62 00000034
|
|
63 00000034
|
|
64 00000034
|
|
65 00000034
|
|
66 00000034
|
|
67 00000034
|
|
68 00000034 END
|
|
00000000
|
|
00000000
|
|
00000000
|
|
Command Line: --debug --xref --diag_suppress=9931 --cpu=Cortex-M3 --apcs=interw
|
|
ork --depend=.\obj\gestionson.d -o.\obj\gestionson.o -I.\RTE\_CibleSondeKEIL -I
|
|
C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include -IC:\Programda
|
|
ta\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include --predefine="__EVAL S
|
|
ETA 1" --predefine="__MICROLIB SETA 1" --predefine="__UVISION_VERSION SETA 534"
|
|
--predefine="_RTE_ SETA 1" --predefine="STM32F10X_MD SETA 1" --predefine="_RTE
|
|
_ SETA 1" --list=gestionson.lst Src\GestionSon.s
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 1 Alphabetic symbol ordering
|
|
Relocatable symbols
|
|
|
|
mesdata 00000000
|
|
|
|
Symbol: mesdata
|
|
Definitions
|
|
At line 8 in file Src\GestionSon.s
|
|
Uses
|
|
None
|
|
Comment: mesdata unused
|
|
1 symbol
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 1 Alphabetic symbol ordering
|
|
Relocatable symbols
|
|
|
|
SortieSon 00000000
|
|
|
|
Symbol: SortieSon
|
|
Definitions
|
|
At line 15 in file Src\GestionSon.s
|
|
Uses
|
|
At line 14 in file Src\GestionSon.s
|
|
At line 50 in file Src\GestionSon.s
|
|
|
|
index 00000004
|
|
|
|
Symbol: index
|
|
Definitions
|
|
At line 16 in file Src\GestionSon.s
|
|
Uses
|
|
At line 33 in file Src\GestionSon.s
|
|
Comment: index used once
|
|
maram 00000000
|
|
|
|
Symbol: maram
|
|
Definitions
|
|
At line 12 in file Src\GestionSon.s
|
|
Uses
|
|
None
|
|
Comment: maram unused
|
|
3 symbols
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 1 Alphabetic symbol ordering
|
|
Relocatable symbols
|
|
|
|
CallbackSon 00000000
|
|
|
|
Symbol: CallbackSon
|
|
Definitions
|
|
At line 30 in file Src\GestionSon.s
|
|
Uses
|
|
At line 29 in file Src\GestionSon.s
|
|
Comment: CallbackSon used once
|
|
moncode 00000000
|
|
|
|
Symbol: moncode
|
|
Definitions
|
|
At line 26 in file Src\GestionSon.s
|
|
Uses
|
|
None
|
|
Comment: moncode unused
|
|
2 symbols
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 1 Alphabetic symbol ordering
|
|
External symbols
|
|
|
|
GPIOA_Clear 00000000
|
|
|
|
Symbol: GPIOA_Clear
|
|
Definitions
|
|
At line 48 in file .\Driver\DriverJeuLaser.inc
|
|
Uses
|
|
None
|
|
Comment: GPIOA_Clear unused
|
|
GPIOA_Set 00000000
|
|
|
|
Symbol: GPIOA_Set
|
|
Definitions
|
|
At line 30 in file .\Driver\DriverJeuLaser.inc
|
|
Uses
|
|
None
|
|
Comment: GPIOA_Set unused
|
|
GPIOB_Clear 00000000
|
|
|
|
Symbol: GPIOB_Clear
|
|
Definitions
|
|
At line 51 in file .\Driver\DriverJeuLaser.inc
|
|
Uses
|
|
None
|
|
Comment: GPIOB_Clear unused
|
|
GPIOB_Set 00000000
|
|
|
|
Symbol: GPIOB_Set
|
|
Definitions
|
|
At line 33 in file .\Driver\DriverJeuLaser.inc
|
|
Uses
|
|
None
|
|
Comment: GPIOB_Set unused
|
|
GPIOC_Clear 00000000
|
|
|
|
Symbol: GPIOC_Clear
|
|
Definitions
|
|
At line 54 in file .\Driver\DriverJeuLaser.inc
|
|
Uses
|
|
None
|
|
Comment: GPIOC_Clear unused
|
|
GPIOC_Set 00000000
|
|
|
|
Symbol: GPIOC_Set
|
|
Definitions
|
|
At line 36 in file .\Driver\DriverJeuLaser.inc
|
|
Uses
|
|
None
|
|
Comment: GPIOC_Set unused
|
|
PWM_Set_Value_TIM3_Ch3 00000000
|
|
|
|
Symbol: PWM_Set_Value_TIM3_Ch3
|
|
Definitions
|
|
At line 18 in file .\Driver\DriverJeuLaser.inc
|
|
Uses
|
|
At line 55 in file Src\GestionSon.s
|
|
Comment: PWM_Set_Value_TIM3_Ch3 used once
|
|
Son 00000000
|
|
|
|
Symbol: Son
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 2 Alphabetic symbol ordering
|
|
External symbols
|
|
|
|
Definitions
|
|
At line 9 in file Src\GestionSon.s
|
|
Uses
|
|
At line 32 in file Src\GestionSon.s
|
|
Comment: Son used once
|
|
8 symbols
|
|
351 symbols in table
|