atdalīts no acco/chti23
366 rindas
11 KiB
Text
366 rindas
11 KiB
Text
|
|
|
|
|
|
ARM Macro Assembler Page 1
|
|
|
|
|
|
1 00000000 PRESERVE8
|
|
2 00000000 THUMB
|
|
3 00000000
|
|
4 00000000 export CallbackSon
|
|
5 00000000 export StartSon
|
|
6 00000000 include 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
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 2
|
|
|
|
|
|
47 00000000 ;void GPIOA_Clear(char Broche);
|
|
48 00000000 import GPIOA_Clear
|
|
49 00000000
|
|
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
|
|
7 00000000
|
|
8 00000000
|
|
9 00000000 ; ====================== zone de réservation de données,
|
|
======================================
|
|
10 00000000 ;Section RAM (read only) :
|
|
11 00000000 area mesdata,data,readonly
|
|
12 00000000 IMPORT LongueurSon
|
|
13 00000000 IMPORT Son
|
|
14 00000000
|
|
15 00000000
|
|
16 00000000
|
|
17 00000000 ;Section RAM (read write):
|
|
18 00000000 area maram,data,readwrite
|
|
19 00000000
|
|
20 00000000 00000000
|
|
index dcd 0 ;
|
|
21 00000004
|
|
22 00000004 00 00 SortieSon
|
|
dcw 0 ;
|
|
23 00000006 EXPORT SortieSon ; valeur echelle ec
|
|
hantillon courant
|
|
24 00000006
|
|
25 00000006 ; ======================================================
|
|
=========================================
|
|
26 00000006
|
|
27 00000006
|
|
28 00000006
|
|
29 00000006
|
|
30 00000006 ;Section ROM code (read only) :
|
|
31 00000006 area moncode,code,readonly
|
|
32 00000000 ; écrire le code ici
|
|
33 00000000
|
|
34 00000000 CallbackSon
|
|
proc
|
|
35 00000000
|
|
36 00000000 B500 push{lr}
|
|
37 00000002
|
|
38 00000002 4812 ldr r0,=LongueurSon
|
|
39 00000004 4912 ldr r1,=index ; @ index
|
|
40 00000006 680A ldr r2,[r1]
|
|
41 00000008 6803 ldr r3,[r0]
|
|
42 0000000A 429A cmp r2,r3
|
|
43 0000000C D017 beq ret
|
|
44 0000000E
|
|
45 0000000E
|
|
46 0000000E 4811 ldr r0, =Son ; recuperer @ son
|
|
47 00000010 0052 movs r2,r2,lsl #1
|
|
48 00000012 4410 add r0,r2
|
|
49 00000014 F9B0 2000 ldrsh r2,[r0] ;valeur son
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 3
|
|
|
|
|
|
50 00000018
|
|
51 00000018 480F ldr r0, =SortieSon ;@ sortie son
|
|
52 0000001A
|
|
53 0000001A ;mise a l'echelle;
|
|
54 0000001A F502 4200 add r2,#32768
|
|
55 0000001E F240 23CF mov r3,#719
|
|
56 00000022 FB02 F203 mul r2,r3
|
|
57 00000026 EA4F 4222 mov r2,r2,asr #16
|
|
58 0000002A
|
|
59 0000002A ; mettre a jour SortieSon
|
|
60 0000002A 6002 str r2,[r0]
|
|
61 0000002C
|
|
62 0000002C
|
|
63 0000002C B402 push{r1}
|
|
64 0000002E 4610 mov r0,r2
|
|
65 00000030 F7FF FFFE bl PWM_Set_Value_TIM3_Ch3
|
|
66 00000034 BC02 pop{r1}
|
|
67 00000036
|
|
68 00000036 ;incrementer index
|
|
69 00000036 6808 ldr r0,[r1] ; valeur index
|
|
70 00000038 F100 0001 add r0,#1 ;
|
|
71 0000003C 6008 str r0,[r1] ;mettre a jour inde
|
|
x
|
|
72 0000003E
|
|
73 0000003E
|
|
74 0000003E
|
|
75 0000003E
|
|
76 0000003E ret
|
|
77 0000003E BD00 pop{pc}
|
|
78 00000040 4770 bx lr
|
|
79 00000042
|
|
80 00000042
|
|
81 00000042 endp
|
|
82 00000042
|
|
83 00000042 StartSon
|
|
proc
|
|
84 00000042
|
|
85 00000042 4803 ldr r0,=index ; @ index
|
|
86 00000044 F04F 0100 mov r1,#0
|
|
87 00000048 6001 str r1,[r0]
|
|
88 0000004A
|
|
89 0000004A 4770 bx lr
|
|
90 0000004C
|
|
91 0000004C endp
|
|
92 0000004C
|
|
93 0000004C END
|
|
00000000
|
|
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.\Driver -I.\RTE\_CibleS
|
|
ondeKEIL -IC:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include -IC
|
|
:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include --predefin
|
|
e="__EVAL SETA 1" --predefine="__MICROLIB SETA 1" --predefine="__UVISION_VERSIO
|
|
N SETA 534" --predefine="_RTE_ SETA 1" --predefine="STM32F10X_MD SETA 1" --pred
|
|
efine="_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 11 in file Src\GestionSon.s
|
|
Uses
|
|
None
|
|
Comment: mesdata unused
|
|
1 symbol
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 1 Alphabetic symbol ordering
|
|
Relocatable symbols
|
|
|
|
SortieSon 00000004
|
|
|
|
Symbol: SortieSon
|
|
Definitions
|
|
At line 22 in file Src\GestionSon.s
|
|
Uses
|
|
At line 23 in file Src\GestionSon.s
|
|
At line 51 in file Src\GestionSon.s
|
|
|
|
index 00000000
|
|
|
|
Symbol: index
|
|
Definitions
|
|
At line 20 in file Src\GestionSon.s
|
|
Uses
|
|
At line 39 in file Src\GestionSon.s
|
|
At line 85 in file Src\GestionSon.s
|
|
|
|
maram 00000000
|
|
|
|
Symbol: maram
|
|
Definitions
|
|
At line 18 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 34 in file Src\GestionSon.s
|
|
Uses
|
|
At line 4 in file Src\GestionSon.s
|
|
Comment: CallbackSon used once
|
|
StartSon 00000042
|
|
|
|
Symbol: StartSon
|
|
Definitions
|
|
At line 83 in file Src\GestionSon.s
|
|
Uses
|
|
At line 5 in file Src\GestionSon.s
|
|
Comment: StartSon used once
|
|
moncode 00000000
|
|
|
|
Symbol: moncode
|
|
Definitions
|
|
At line 31 in file Src\GestionSon.s
|
|
Uses
|
|
None
|
|
Comment: moncode unused
|
|
ret 0000003E
|
|
|
|
Symbol: ret
|
|
Definitions
|
|
At line 76 in file Src\GestionSon.s
|
|
Uses
|
|
At line 43 in file Src\GestionSon.s
|
|
Comment: ret used once
|
|
4 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
|
|
LongueurSon 00000000
|
|
|
|
Symbol: LongueurSon
|
|
Definitions
|
|
At line 12 in file Src\GestionSon.s
|
|
Uses
|
|
At line 38 in file Src\GestionSon.s
|
|
Comment: LongueurSon used once
|
|
PWM_Set_Value_TIM3_Ch3 00000000
|
|
|
|
Symbol: PWM_Set_Value_TIM3_Ch3
|
|
|
|
|
|
|
|
ARM Macro Assembler Page 2 Alphabetic symbol ordering
|
|
External symbols
|
|
|
|
Definitions
|
|
At line 18 in file .\Driver\DriverJeuLaser.inc
|
|
Uses
|
|
At line 65 in file Src\GestionSon.s
|
|
Comment: PWM_Set_Value_TIM3_Ch3 used once
|
|
Son 00000000
|
|
|
|
Symbol: Son
|
|
Definitions
|
|
At line 13 in file Src\GestionSon.s
|
|
Uses
|
|
At line 46 in file Src\GestionSon.s
|
|
Comment: Son used once
|
|
9 symbols
|
|
354 symbols in table
|