Etape 3 #1

Merged
yoboujon merged 29 commits from etape_3 into main 2023-05-29 22:57:47 +02:00
35 changed files with 1925 additions and 705 deletions
Showing only changes of commit d2756c0249 - Show all commits

File diff suppressed because one or more lines are too long

View file

@ -125,7 +125,7 @@
<SetRegEntry>
<Number>0</Number>
<Key>DLGDARM</Key>
<Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=15,39,661,712,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=1148,258,1639,750,0)(121=1166,171,1587,598,1)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
<Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=15,39,661,712,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=1148,258,1639,750,0)(121=1190,75,1611,502,1)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
@ -142,9 +142,9 @@
<Bp>
<Number>0</Number>
<Type>0</Type>
<LineNumber>80</LineNumber>
<LineNumber>87</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>134222420</Address>
<Address>134222384</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
@ -153,28 +153,28 @@
<BreakIfRCount>1</BreakIfRCount>
<Filename>.\Principale.asm</Filename>
<ExecCommand></ExecCommand>
<Expression>\\Simu_Etape0\Principale.asm\80</Expression>
<Expression>\\Simu_Etape0\Principale.asm\87</Expression>
</Bp>
<Bp>
<Number>1</Number>
<Type>0</Type>
<LineNumber>91</LineNumber>
<LineNumber>80</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>134222442</Address>
<Address>0</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>1</BreakIfRCount>
<BreakIfRCount>0</BreakIfRCount>
<Filename>.\Principale.asm</Filename>
<ExecCommand></ExecCommand>
<Expression>\\Simu_Etape0\Principale.asm\91</Expression>
<Expression></Expression>
</Bp>
<Bp>
<Number>2</Number>
<Type>0</Type>
<LineNumber>87</LineNumber>
<LineNumber>91</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>0</Address>
<ByteObject>0</ByteObject>
@ -410,24 +410,7 @@
<Name>-UAny -O206 -S8 -C0 -P00 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO65554 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_CL.FLM -FS08000000 -FL080000 -FP0($$Device:STM32F107VC$Flash\STM32F10x_CL.FLM)</Name>
</SetRegEntry>
</TargetDriverDllRegistry>
<Breakpoint>
<Bp>
<Number>0</Number>
<Type>0</Type>
<LineNumber>109</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>0</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>.\Principale.asm</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
</Breakpoint>
<Breakpoint/>
<MemoryWindow1>
<Mm>
<WinNumber>1</WinNumber>
@ -456,7 +439,7 @@
<AscS3>0</AscS3>
<aSer3>0</aSer3>
<eProf>0</eProf>
<aLa>0</aLa>
<aLa>1</aLa>
<aPa1>0</aPa1>
<AscS4>0</AscS4>
<aSer4>0</aSer4>
@ -518,6 +501,18 @@
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>3</FileNumber>
<FileType>2</FileType>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\FonctionEtape2.asm</PathWithFileName>
<FilenameWithoutPath>FonctionEtape2.asm</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
@ -528,7 +523,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>3</FileNumber>
<FileNumber>4</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>

View file

@ -393,6 +393,11 @@
<FileType>2</FileType>
<FilePath>.\FonctionEtape.asm</FilePath>
</File>
<File>
<FileName>FonctionEtape2.asm</FileName>
<FileType>2</FileType>
<FilePath>.\FonctionEtape2.asm</FilePath>
</File>
</Files>
</Group>
<Group>
@ -800,6 +805,11 @@
<FileType>2</FileType>
<FilePath>.\FonctionEtape.asm</FilePath>
</File>
<File>
<FileName>FonctionEtape2.asm</FileName>
<FileType>2</FileType>
<FilePath>.\FonctionEtape2.asm</FilePath>
</File>
</Files>
</Group>
<Group>

View file

@ -11,7 +11,9 @@
;***************IMPORT/EXPORT**********************************************
EXPORT Eteint_LED
EXPORT Allume_LED
EXPORT Inverse_LED
;**************************************************************************
@ -53,10 +55,65 @@
;------------------------------------------------------------------------
;*******************************************************************************
; On eteint la LED
;*******************************************************************************
Eteint_LED PROC
PUSH {R12,R0} ;On stocke R12 dans R0
LDR R12,=GPIOBASEB ;On recupère l'adresse de base
MOV R5,#(0x01 << 10) ;1 décalé de 10 dans R5
STRH R5,[R12,#OffsetReset] ;On stocke la variable R5 à l'adresse 0x0X40010C14 (reset)
POP {R12,R0} ;On restitue R12 dans R0
BX LR ;Retour
;LDR R5,[R12,#0x0C] ;Valeur à l'adresse de l'output
;AND R5, R5,#~(0x01 << 10) ;OU LOGIQUE pour calculer la valeur a mettre dans l'output
;STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans l'output
ENDP
;*******************************************************************************
; On allume la LED
;*******************************************************************************
Allume_LED PROC
PUSH {R12,R0} ;On stocke R12 dans R0
LDR R12,=GPIOBASEB ;On recupère l'adresse de base
MOV R5,#(0x01 << 10) ;1 décalé de 10 dans R5
STRH R5,[R12,#OffsetSet] ;On stocke la variable R5 à l'adresse 0x0X40010C10 (set)
POP {R12,R0} ;On restitue R12 dans R0
BX LR ;Retour
;LDR R5,[R12,#0x0C] ;Valeur à l'adresse de l'output
;ORR R5, R5,#(0x01 << 10) ;OU LOGIQUE pour calculer la valeur a mettre dans l'output
;STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans l'output
ENDP
;*******************************************************************************
; On inverse la LED (besoin de R3)
;*******************************************************************************
Inverse_LED PROC
PUSH {R12,R0} ;On stocke R12 dans R0
LDR R12,=GPIOBASEB ;On recupère l'adresse de base
MOV R5,#(0x01 << 10) ;1 décalé de 10 dans R5
CMP R3,#0 ;Si R3=0 (default) alors on allume, sinon on eteint
;BEQ Allume
;B Eteint
BNE Eteint
Allume
STRH R5,[R12,#OffsetSet] ;On stocke la variable R5 à l'adresse 0x0X40010C10 (set)
MOV R3,#1; ;On remet la variable à 1
B Fin ;Retour
Eteint
STRH R5,[R12,#OffsetReset] ;On stocke la variable R5 à l'adresse 0x0X40010C14 (reset)
MOV R3,#0; ;On remet la variable à 0
B Fin
Fin
POP {R12,R0} ;On restitue R12 dans R0
BX LR ;Retour
ENDP
;**************************************************************************
END

93
FonctionEtape2.asm Normal file
View file

@ -0,0 +1,93 @@
;***************************************************************************
THUMB
REQUIRE8
PRESERVE8
;**************************************************************************
; Fichier Vierge.asm
; Auteur : V.MAHOUT
; Date : 12/11/2013
;**************************************************************************
;***************IMPORT/EXPORT**********************************************
EXPORT Set_SCLK
EXPORT Reset_SCLK
EXPORT DriverGlobal
;**************************************************************************
;***************CONSTANTES*************************************************
include REG_UTILES.inc
;**************************************************************************
;***************VARIABLES**************************************************
AREA MesDonnees, data, readwrite
;**************************************************************************
Barette1 DCB 0,1,0
DCB 0,1,0
DCB 0,1,0
DCB 0,1,0
DCB 0,1,0
DCB 0,1,0
DCB 0,1,0
;**************************************************************************
;***************CODE*******************************************************
AREA moncode, code, readonly
;**************************************************************************
Set_SCLK PROC
PUSH {R12,R0} ;On stocke R12 dans R0
LDR R12,=GPIOBASEA ;On recupère l'adresse de base
LDR R5,[R12,#MaskSclk] ;Valeur à l'adresse de l'output
ORR R5, R5,#(0x01 << 5) ;OU LOGIQUE pour calculer la valeur a mettre dans l'output
STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans l'output
BX LR ;Retour
ENDP
Reset_SCLK PROC
PUSH {R12,R0} ;On stocke R12 dans R0
LDR R12,=GPIOBASEB ;On recupère l'adresse de base
LDR R5,[R12,#MaskSclk] ;Valeur à l'adresse de l'SCLK
AND R5, R5,#~(0x01 << 5) ;OU LOGIQUE pour calculer la valeur a mettre dans l'output
STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans l'output
BX LR ;Retour
ENDP
;****************************************************************************
;R6 = NBLed
;R7 = *ValCourante
;R8 = ValCourante[NBLed]
;****************************************************************************
DriverGlobal PROC
BL Set_SCLK;
MOV R6, #0;
WHILE_NBLED
;Pour NbLed = 1 à 48
LDR R7,=Barette1 ;On recupère l'adresse de base
LDRB R8,[R7,R6] ;R8 = ValCourante[...NBLed]
LSL R8,#24 ;ValCourante[NBLed]<<24
ADD R6, R6, #1 ;On incrémente R6
CMP R6, #47 ; SI R6==47 alors on arrête la boucle
BNE WHILE_NBLED
ENDP
;**************************************************************************
END

View file

@ -4,6 +4,10 @@ Component: ARM Compiler 5.06 update 7 (build 960) Tool: armlink [4d3601]
Section Cross References
principale.o(mesdonnees) refers (Special) to fonctionetape.o(moncode) for Allume_LED
principale.o(mesdonnees) refers (Special) to fonctionetape2.o(moncode) for Reset_SCLK
principale.o(moncode) refers (Special) to fonctionetape.o(moncode) for Allume_LED
principale.o(moncode) refers (Special) to fonctionetape2.o(moncode) for Reset_SCLK
principale.o(moncode) refers to initialisation.o(i.Init_Cible) for Init_Cible
startup_stm32f10x_cl.o(RESET) refers to startup_stm32f10x_cl.o(STACK) for __initial_sp
startup_stm32f10x_cl.o(RESET) refers to startup_stm32f10x_cl.o(.text) for Reset_Handler
@ -119,7 +123,7 @@ Removing Unused input sections from the image.
Removing principale.o(mesdonnees), (0 bytes).
Removing fonctionetape.o(MesDonnees), (0 bytes).
Removing fonctionetape.o(moncode), (0 bytes).
Removing fonctionetape2.o(MesDonnees), (0 bytes).
Removing startup_stm32f10x_cl.o(HEAP), (512 bytes).
Removing system_stm32f10x_1.o(.rev16_text), (4 bytes).
Removing system_stm32f10x_1.o(.revsh_text), (4 bytes).
@ -164,21 +168,21 @@ Image Symbol Table
Symbol Name Value Ov Type Size Object(Section)
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry12a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry12a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry12b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry12b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE
@ -186,8 +190,8 @@ Image Symbol Table
../fplib/microlib/f2d.c 0x00000000 Number 0 f2d.o ABSOLUTE
../fplib/microlib/fpdiv.c 0x00000000 Number 0 fdiv.o ABSOLUTE
../fplib/microlib/fpdiv.c 0x00000000 Number 0 ddiv.o ABSOLUTE
../fplib/microlib/fpepilogue.c 0x00000000 Number 0 fepilogue.o ABSOLUTE
../fplib/microlib/fpepilogue.c 0x00000000 Number 0 depilogue.o ABSOLUTE
../fplib/microlib/fpepilogue.c 0x00000000 Number 0 fepilogue.o ABSOLUTE
../fplib/microlib/fpfix.c 0x00000000 Number 0 ffixui.o ABSOLUTE
../fplib/microlib/fpflt.c 0x00000000 Number 0 ffltui.o ABSOLUTE
../fplib/microlib/fpmul.c 0x00000000 Number 0 fmul.o ABSOLUTE
@ -198,6 +202,7 @@ Image Symbol Table
..\pilotes\Sources\pilote_IO.c 0x00000000 Number 0 pilote_io_1.o ABSOLUTE
FoncAsm.asm 0x00000000 Number 0 foncasm.o ABSOLUTE
FonctionEtape.asm 0x00000000 Number 0 fonctionetape.o ABSOLUTE
FonctionEtape2.asm 0x00000000 Number 0 fonctionetape2.o ABSOLUTE
FonctionTimer.c 0x00000000 Number 0 fonctiontimer.o ABSOLUTE
FonctionTimer.c 0x00000000 Number 0 fonctiontimer.o ABSOLUTE
Initialisation.c 0x00000000 Number 0 initialisation.o ABSOLUTE
@ -235,8 +240,8 @@ Image Symbol Table
.text 0x08000488 Section 48 cdcmple.o(.text)
.text 0x080004b8 Section 48 cdrcmple.o(.text)
.text 0x080004e8 Section 0 d2f.o(.text)
.text 0x08000520 Section 0 fepilogue.o(.text)
.text 0x08000520 Section 0 iusefp.o(.text)
.text 0x08000520 Section 0 fepilogue.o(.text)
.text 0x0800058e Section 0 depilogue.o(.text)
.text 0x08000648 Section 36 init.o(.text)
.text 0x0800066c Section 0 llshl.o(.text)
@ -268,9 +273,11 @@ Image Symbol Table
i.__scatterload_copy 0x080012b0 Section 14 handlers.o(i.__scatterload_copy)
i.__scatterload_null 0x080012be Section 2 handlers.o(i.__scatterload_null)
i.__scatterload_zeroinit 0x080012c0 Section 14 handlers.o(i.__scatterload_zeroinit)
moncode 0x080012d0 Section 148 principale.o(moncode)
Inverse_LED 0x080012fd Thumb Code 40 principale.o(moncode)
moncode 0x08001364 Section 200 foncasm.o(moncode)
moncode 0x080012d0 Section 10 principale.o(moncode)
moncode 0x080012dc Section 92 fonctionetape.o(moncode)
moncode 0x08001338 Section 132 fonctionetape2.o(moncode)
Barette1 0x08001338 Data 48 fonctionetape2.o(moncode)
moncode 0x080013bc Section 200 foncasm.o(moncode)
.data 0x20000000 Section 19 initialisation.o(.data)
.data 0x20000014 Section 24 fonctiontimer.o(.data)
incre 0x20000024 Data 4 fonctiontimer.o(.data)
@ -414,11 +421,17 @@ Image Symbol Table
__scatterload_copy 0x080012b1 Thumb Code 14 handlers.o(i.__scatterload_copy)
__scatterload_null 0x080012bf Thumb Code 2 handlers.o(i.__scatterload_null)
__scatterload_zeroinit 0x080012c1 Thumb Code 14 handlers.o(i.__scatterload_zeroinit)
main 0x08001325 Thumb Code 56 principale.o(moncode)
Envoie192Boucle 0x08001365 Thumb Code 108 foncasm.o(moncode)
Envoie96Dot 0x080013d1 Thumb Code 78 foncasm.o(moncode)
Region$$Table$$Base 0x0800142c Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x0800144c Number 0 anon$$obj.o(Region$$Table)
main 0x080012d1 Thumb Code 10 principale.o(moncode)
Eteint_LED 0x080012dd Thumb Code 22 fonctionetape.o(moncode)
Allume_LED 0x080012f3 Thumb Code 22 fonctionetape.o(moncode)
Inverse_LED 0x08001309 Thumb Code 42 fonctionetape.o(moncode)
Set_SCLK 0x08001369 Thumb Code 22 fonctionetape2.o(moncode)
Reset_SCLK 0x0800137f Thumb Code 22 fonctionetape2.o(moncode)
DriverGlobal 0x08001395 Thumb Code 26 fonctionetape2.o(moncode)
Envoie192Boucle 0x080013bd Thumb Code 108 foncasm.o(moncode)
Envoie96Dot 0x08001429 Thumb Code 78 foncasm.o(moncode)
Region$$Table$$Base 0x08001484 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x080014a4 Number 0 anon$$obj.o(Region$$Table)
PrtSurImage 0x20000000 Data 4 initialisation.o(.data)
BarretEnCours 0x20000004 Data 4 initialisation.o(.data)
DataSend 0x20000008 Data 1 initialisation.o(.data)
@ -439,83 +452,86 @@ Memory Map of the image
Image Entry point : 0x08000151
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x000014dc, Max: 0x00040000, ABSOLUTE)
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00001534, Max: 0x00040000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x0000144c, Max: 0x00040000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000014a4, Max: 0x00040000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x08000000 0x08000000 0x00000150 Data RO 12 RESET startup_stm32f10x_cl.o
0x08000150 0x08000150 0x00000000 Code RO 439 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x08000150 0x08000150 0x00000004 Code RO 462 .ARM.Collect$$$$00000001 mc_w.l(entry2.o)
0x08000154 0x08000154 0x00000004 Code RO 465 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x08000158 0x08000158 0x00000000 Code RO 467 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x08000158 0x08000158 0x00000000 Code RO 469 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x08000158 0x08000158 0x00000008 Code RO 470 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x08000160 0x08000160 0x00000004 Code RO 477 .ARM.Collect$$$$0000000E mc_w.l(entry12b.o)
0x08000164 0x08000164 0x00000000 Code RO 472 .ARM.Collect$$$$0000000F mc_w.l(entry10a.o)
0x08000164 0x08000164 0x00000000 Code RO 474 .ARM.Collect$$$$00000011 mc_w.l(entry11a.o)
0x08000164 0x08000164 0x00000004 Code RO 463 .ARM.Collect$$$$00002712 mc_w.l(entry2.o)
0x08000168 0x08000168 0x00000024 Code RO 13 .text startup_stm32f10x_cl.o
0x0800018c 0x0800018c 0x00000064 Code RO 442 .text mf_w.l(fmul.o)
0x080001f0 0x080001f0 0x0000007c Code RO 444 .text mf_w.l(fdiv.o)
0x0800026c 0x0800026c 0x000000e4 Code RO 446 .text mf_w.l(dmul.o)
0x08000350 0x08000350 0x000000de Code RO 448 .text mf_w.l(ddiv.o)
0x0800042e 0x0800042e 0x0000000a Code RO 450 .text mf_w.l(ffltui.o)
0x08000438 0x08000438 0x00000028 Code RO 452 .text mf_w.l(ffixui.o)
0x08000460 0x08000460 0x00000026 Code RO 454 .text mf_w.l(f2d.o)
0x08000000 0x08000000 0x00000150 Data RO 20 RESET startup_stm32f10x_cl.o
0x08000150 0x08000150 0x00000000 Code RO 447 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x08000150 0x08000150 0x00000004 Code RO 470 .ARM.Collect$$$$00000001 mc_w.l(entry2.o)
0x08000154 0x08000154 0x00000004 Code RO 473 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x08000158 0x08000158 0x00000000 Code RO 475 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x08000158 0x08000158 0x00000000 Code RO 477 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x08000158 0x08000158 0x00000008 Code RO 478 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x08000160 0x08000160 0x00000004 Code RO 485 .ARM.Collect$$$$0000000E mc_w.l(entry12b.o)
0x08000164 0x08000164 0x00000000 Code RO 480 .ARM.Collect$$$$0000000F mc_w.l(entry10a.o)
0x08000164 0x08000164 0x00000000 Code RO 482 .ARM.Collect$$$$00000011 mc_w.l(entry11a.o)
0x08000164 0x08000164 0x00000004 Code RO 471 .ARM.Collect$$$$00002712 mc_w.l(entry2.o)
0x08000168 0x08000168 0x00000024 Code RO 21 .text startup_stm32f10x_cl.o
0x0800018c 0x0800018c 0x00000064 Code RO 450 .text mf_w.l(fmul.o)
0x080001f0 0x080001f0 0x0000007c Code RO 452 .text mf_w.l(fdiv.o)
0x0800026c 0x0800026c 0x000000e4 Code RO 454 .text mf_w.l(dmul.o)
0x08000350 0x08000350 0x000000de Code RO 456 .text mf_w.l(ddiv.o)
0x0800042e 0x0800042e 0x0000000a Code RO 458 .text mf_w.l(ffltui.o)
0x08000438 0x08000438 0x00000028 Code RO 460 .text mf_w.l(ffixui.o)
0x08000460 0x08000460 0x00000026 Code RO 462 .text mf_w.l(f2d.o)
0x08000486 0x08000486 0x00000002 PAD
0x08000488 0x08000488 0x00000030 Code RO 456 .text mf_w.l(cdcmple.o)
0x080004b8 0x080004b8 0x00000030 Code RO 458 .text mf_w.l(cdrcmple.o)
0x080004e8 0x080004e8 0x00000038 Code RO 460 .text mf_w.l(d2f.o)
0x08000520 0x08000520 0x00000000 Code RO 478 .text mc_w.l(iusefp.o)
0x08000520 0x08000520 0x0000006e Code RO 479 .text mf_w.l(fepilogue.o)
0x0800058e 0x0800058e 0x000000ba Code RO 481 .text mf_w.l(depilogue.o)
0x08000648 0x08000648 0x00000024 Code RO 483 .text mc_w.l(init.o)
0x0800066c 0x0800066c 0x0000001e Code RO 485 .text mc_w.l(llshl.o)
0x0800068a 0x0800068a 0x00000020 Code RO 487 .text mc_w.l(llushr.o)
0x08000488 0x08000488 0x00000030 Code RO 464 .text mf_w.l(cdcmple.o)
0x080004b8 0x080004b8 0x00000030 Code RO 466 .text mf_w.l(cdrcmple.o)
0x080004e8 0x080004e8 0x00000038 Code RO 468 .text mf_w.l(d2f.o)
0x08000520 0x08000520 0x00000000 Code RO 486 .text mc_w.l(iusefp.o)
0x08000520 0x08000520 0x0000006e Code RO 487 .text mf_w.l(fepilogue.o)
0x0800058e 0x0800058e 0x000000ba Code RO 489 .text mf_w.l(depilogue.o)
0x08000648 0x08000648 0x00000024 Code RO 491 .text mc_w.l(init.o)
0x0800066c 0x0800066c 0x0000001e Code RO 493 .text mc_w.l(llshl.o)
0x0800068a 0x0800068a 0x00000020 Code RO 495 .text mc_w.l(llushr.o)
0x080006aa 0x080006aa 0x00000002 PAD
0x080006ac 0x080006ac 0x00000028 Code RO 215 i.Anim Matos.lib(fonctiontimer.o)
0x080006d4 0x080006d4 0x0000014c Code RO 338 i.GPIO_Configure Matos.lib(pilote_io_1.o)
0x08000820 0x08000820 0x0000010c Code RO 89 i.Init_Cible Matos.lib(initialisation.o)
0x0800092c 0x0800092c 0x00000078 Code RO 90 i.Init_Dot Matos.lib(initialisation.o)
0x080009a4 0x080009a4 0x00000090 Code RO 91 i.Init_Port Matos.lib(initialisation.o)
0x08000a34 0x08000a34 0x0000016c Code RO 93 i.Init_Timer1 Matos.lib(initialisation.o)
0x08000ba0 0x08000ba0 0x0000011c Code RO 94 i.Init_Timer2_PWM Matos.lib(initialisation.o)
0x08000cbc 0x08000cbc 0x00000070 Code RO 95 i.Init_Timer3_Slave Matos.lib(initialisation.o)
0x08000d2c 0x08000d2c 0x00000074 Code RO 96 i.Init_Timer4 Matos.lib(initialisation.o)
0x08000da0 0x08000da0 0x00000010 Code RO 344 i.Port_IO_Reset Matos.lib(pilote_io_1.o)
0x08000db0 0x08000db0 0x00000010 Code RO 345 i.Port_IO_Set Matos.lib(pilote_io_1.o)
0x08000dc0 0x08000dc0 0x00000008 Code RO 20 i.SetSysClock system_stm32f10x_1.o
0x08000dc8 0x08000dc8 0x00000118 Code RO 21 i.SetSysClockTo72 system_stm32f10x_1.o
0x08000ee0 0x08000ee0 0x00000010 Code RO 404 i.SysTick_Handler Matos.lib(timer_systick_1.o)
0x08000ef0 0x08000ef0 0x0000006c Code RO 23 i.SystemInit system_stm32f10x_1.o
0x08000f5c 0x08000f5c 0x00000110 Code RO 405 i.Systick_Period Matos.lib(timer_systick_1.o)
0x0800106c 0x0800106c 0x00000024 Code RO 406 i.Systick_Prio_IT Matos.lib(timer_systick_1.o)
0x08001090 0x08001090 0x000000b4 Code RO 224 i.TIM1_CC_IRQHandler Matos.lib(fonctiontimer.o)
0x08001144 0x08001144 0x000000ac Code RO 225 i.TIM1_UP_IRQHandler Matos.lib(fonctiontimer.o)
0x080011f0 0x080011f0 0x00000004 Code RO 226 i.TIM2_IRQHandler Matos.lib(fonctiontimer.o)
0x080011f4 0x080011f4 0x00000050 Code RO 227 i.TIM3_IRQHandler Matos.lib(fonctiontimer.o)
0x08001244 0x08001244 0x0000006c Code RO 228 i.TIM4_IRQHandler Matos.lib(fonctiontimer.o)
0x080012b0 0x080012b0 0x0000000e Code RO 491 i.__scatterload_copy mc_w.l(handlers.o)
0x080012be 0x080012be 0x00000002 Code RO 492 i.__scatterload_null mc_w.l(handlers.o)
0x080012c0 0x080012c0 0x0000000e Code RO 493 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x080006ac 0x080006ac 0x00000028 Code RO 223 i.Anim Matos.lib(fonctiontimer.o)
0x080006d4 0x080006d4 0x0000014c Code RO 346 i.GPIO_Configure Matos.lib(pilote_io_1.o)
0x08000820 0x08000820 0x0000010c Code RO 97 i.Init_Cible Matos.lib(initialisation.o)
0x0800092c 0x0800092c 0x00000078 Code RO 98 i.Init_Dot Matos.lib(initialisation.o)
0x080009a4 0x080009a4 0x00000090 Code RO 99 i.Init_Port Matos.lib(initialisation.o)
0x08000a34 0x08000a34 0x0000016c Code RO 101 i.Init_Timer1 Matos.lib(initialisation.o)
0x08000ba0 0x08000ba0 0x0000011c Code RO 102 i.Init_Timer2_PWM Matos.lib(initialisation.o)
0x08000cbc 0x08000cbc 0x00000070 Code RO 103 i.Init_Timer3_Slave Matos.lib(initialisation.o)
0x08000d2c 0x08000d2c 0x00000074 Code RO 104 i.Init_Timer4 Matos.lib(initialisation.o)
0x08000da0 0x08000da0 0x00000010 Code RO 352 i.Port_IO_Reset Matos.lib(pilote_io_1.o)
0x08000db0 0x08000db0 0x00000010 Code RO 353 i.Port_IO_Set Matos.lib(pilote_io_1.o)
0x08000dc0 0x08000dc0 0x00000008 Code RO 28 i.SetSysClock system_stm32f10x_1.o
0x08000dc8 0x08000dc8 0x00000118 Code RO 29 i.SetSysClockTo72 system_stm32f10x_1.o
0x08000ee0 0x08000ee0 0x00000010 Code RO 412 i.SysTick_Handler Matos.lib(timer_systick_1.o)
0x08000ef0 0x08000ef0 0x0000006c Code RO 31 i.SystemInit system_stm32f10x_1.o
0x08000f5c 0x08000f5c 0x00000110 Code RO 413 i.Systick_Period Matos.lib(timer_systick_1.o)
0x0800106c 0x0800106c 0x00000024 Code RO 414 i.Systick_Prio_IT Matos.lib(timer_systick_1.o)
0x08001090 0x08001090 0x000000b4 Code RO 232 i.TIM1_CC_IRQHandler Matos.lib(fonctiontimer.o)
0x08001144 0x08001144 0x000000ac Code RO 233 i.TIM1_UP_IRQHandler Matos.lib(fonctiontimer.o)
0x080011f0 0x080011f0 0x00000004 Code RO 234 i.TIM2_IRQHandler Matos.lib(fonctiontimer.o)
0x080011f4 0x080011f4 0x00000050 Code RO 235 i.TIM3_IRQHandler Matos.lib(fonctiontimer.o)
0x08001244 0x08001244 0x0000006c Code RO 236 i.TIM4_IRQHandler Matos.lib(fonctiontimer.o)
0x080012b0 0x080012b0 0x0000000e Code RO 499 i.__scatterload_copy mc_w.l(handlers.o)
0x080012be 0x080012be 0x00000002 Code RO 500 i.__scatterload_null mc_w.l(handlers.o)
0x080012c0 0x080012c0 0x0000000e Code RO 501 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x080012ce 0x080012ce 0x00000002 PAD
0x080012d0 0x080012d0 0x00000094 Code RO 2 moncode principale.o
0x08001364 0x08001364 0x000000c8 Code RO 331 moncode Matos.lib(foncasm.o)
0x0800142c 0x0800142c 0x00000020 Data RO 489 Region$$Table anon$$obj.o
0x080012d0 0x080012d0 0x0000000a Code RO 2 moncode principale.o
0x080012da 0x080012da 0x00000002 PAD
0x080012dc 0x080012dc 0x0000005c Code RO 9 moncode fonctionetape.o
0x08001338 0x08001338 0x00000084 Code RO 14 moncode fonctionetape2.o
0x080013bc 0x080013bc 0x000000c8 Code RO 339 moncode Matos.lib(foncasm.o)
0x08001484 0x08001484 0x00000020 Data RO 497 Region$$Table anon$$obj.o
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x0800144c, Size: 0x00000490, Max: 0x00010000, ABSOLUTE)
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x080014a4, Size: 0x00000490, Max: 0x00010000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 0x0800144c 0x00000013 Data RW 97 .data Matos.lib(initialisation.o)
0x20000013 0x0800145f 0x00000001 PAD
0x20000014 0x08001460 0x00000018 Data RW 229 .data Matos.lib(fonctiontimer.o)
0x2000002c 0x08001478 0x00000060 Data RW 321 .data Matos.lib(warning.o)
0x2000008c 0x080014d8 0x00000004 Data RW 407 .data Matos.lib(timer_systick_1.o)
0x20000090 - 0x00000400 Zero RW 10 STACK startup_stm32f10x_cl.o
0x20000000 0x080014a4 0x00000013 Data RW 105 .data Matos.lib(initialisation.o)
0x20000013 0x080014b7 0x00000001 PAD
0x20000014 0x080014b8 0x00000018 Data RW 237 .data Matos.lib(fonctiontimer.o)
0x2000002c 0x080014d0 0x00000060 Data RW 329 .data Matos.lib(warning.o)
0x2000008c 0x08001530 0x00000004 Data RW 415 .data Matos.lib(timer_systick_1.o)
0x20000090 - 0x00000400 Zero RW 18 STACK startup_stm32f10x_cl.o
==============================================================================
@ -525,14 +541,16 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Object Name
148 8 0 0 0 480 principale.o
92 6 0 0 0 408 fonctionetape.o
132 62 0 0 0 400 fonctionetape2.o
10 0 0 0 0 328 principale.o
36 8 336 0 1024 796 startup_stm32f10x_cl.o
396 32 0 0 0 6457 system_stm32f10x_1.o
----------------------------------------------------------------------
580 48 368 0 1024 7733 Object Totals
668 108 368 0 1024 8389 Object Totals
0 0 32 0 0 0 (incl. Generated)
0 0 0 0 0 0 (incl. Padding)
2 0 0 0 0 0 (incl. Padding)
----------------------------------------------------------------------
@ -593,15 +611,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
4828 390 368 144 1024 245352 Grand Totals
4828 390 368 144 1024 245352 ELF Image Totals
4828 390 368 144 0 0 ROM Totals
4916 450 368 144 1024 245904 Grand Totals
4916 450 368 144 1024 245904 ELF Image Totals
4916 450 368 144 0 0 ROM Totals
==============================================================================
Total RO Size (Code + RO Data) 5196 ( 5.07kB)
Total RO Size (Code + RO Data) 5284 ( 5.16kB)
Total RW Size (RW Data + ZI Data) 1168 ( 1.14kB)
Total ROM Size (Code + RO Data + RW Data) 5340 ( 5.21kB)
Total ROM Size (Code + RO Data + RW Data) 5428 ( 5.30kB)
==============================================================================

View file

@ -4,7 +4,12 @@ Component: ARM Compiler 5.06 update 7 (build 960) Tool: armlink [4d3601]
Section Cross References
principale.o(mesdonnees) refers (Special) to fonctionetape.o(moncode) for Allume_LED
principale.o(mesdonnees) refers (Special) to fonctionetape2.o(moncode) for Reset_SCLK
principale.o(moncode) refers (Special) to fonctionetape.o(moncode) for Allume_LED
principale.o(moncode) refers (Special) to fonctionetape2.o(moncode) for Reset_SCLK
principale.o(moncode) refers to initialisation.o(i.Init_Cible) for Init_Cible
fonctionetape2.o(moncode) refers to fonctionetape2.o(MesDonnees) for Barette1
startup_stm32f10x_md.o(RESET) refers to startup_stm32f10x_md.o(STACK) for __initial_sp
startup_stm32f10x_md.o(RESET) refers to startup_stm32f10x_md.o(.text) for Reset_Handler
startup_stm32f10x_md.o(RESET) refers to timer_systick_1.o(i.SysTick_Handler) for SysTick_Handler
@ -119,7 +124,6 @@ Removing Unused input sections from the image.
Removing principale.o(mesdonnees), (0 bytes).
Removing fonctionetape.o(MesDonnees), (0 bytes).
Removing fonctionetape.o(moncode), (0 bytes).
Removing startup_stm32f10x_md.o(HEAP), (512 bytes).
Removing system_stm32f10x.o(.rev16_text), (4 bytes).
Removing system_stm32f10x.o(.revsh_text), (4 bytes).
@ -154,7 +158,7 @@ Removing Unused input sections from the image.
Removing timer_systick_1.o(.revsh_text), (4 bytes).
Removing timer_systick_1.o(.rrx_text), (6 bytes).
36 unused section(s) (total 1220 bytes) removed from the image.
35 unused section(s) (total 1220 bytes) removed from the image.
==============================================================================
@ -164,21 +168,21 @@ Image Symbol Table
Symbol Name Value Ov Type Size Object(Section)
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry12b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry12a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry12b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE
@ -190,14 +194,15 @@ Image Symbol Table
../fplib/microlib/fpepilogue.c 0x00000000 Number 0 depilogue.o ABSOLUTE
../fplib/microlib/fpfix.c 0x00000000 Number 0 ffixui.o ABSOLUTE
../fplib/microlib/fpflt.c 0x00000000 Number 0 ffltui.o ABSOLUTE
../fplib/microlib/fpmul.c 0x00000000 Number 0 fmul.o ABSOLUTE
../fplib/microlib/fpmul.c 0x00000000 Number 0 dmul.o ABSOLUTE
../fplib/microlib/fpmul.c 0x00000000 Number 0 fmul.o ABSOLUTE
..\\pilotes\\Sources\\Timer_Systick.c 0x00000000 Number 0 timer_systick_1.o ABSOLUTE
..\\pilotes\\Sources\\pilote_IO.c 0x00000000 Number 0 pilote_io_1.o ABSOLUTE
..\pilotes\Sources\Timer_Systick.c 0x00000000 Number 0 timer_systick_1.o ABSOLUTE
..\pilotes\Sources\pilote_IO.c 0x00000000 Number 0 pilote_io_1.o ABSOLUTE
FoncAsm.asm 0x00000000 Number 0 foncasm.o ABSOLUTE
FonctionEtape.asm 0x00000000 Number 0 fonctionetape.o ABSOLUTE
FonctionEtape2.asm 0x00000000 Number 0 fonctionetape2.o ABSOLUTE
FonctionTimer.c 0x00000000 Number 0 fonctiontimer.o ABSOLUTE
FonctionTimer.c 0x00000000 Number 0 fonctiontimer.o ABSOLUTE
Initialisation.c 0x00000000 Number 0 initialisation.o ABSOLUTE
@ -268,9 +273,10 @@ Image Symbol Table
i.__scatterload_copy 0x08001208 Section 14 handlers.o(i.__scatterload_copy)
i.__scatterload_null 0x08001216 Section 2 handlers.o(i.__scatterload_null)
i.__scatterload_zeroinit 0x08001218 Section 14 handlers.o(i.__scatterload_zeroinit)
moncode 0x08001228 Section 148 principale.o(moncode)
Inverse_LED 0x08001255 Thumb Code 42 principale.o(moncode)
moncode 0x080012bc Section 200 foncasm.o(moncode)
moncode 0x08001228 Section 10 principale.o(moncode)
moncode 0x08001234 Section 92 fonctionetape.o(moncode)
moncode 0x08001290 Section 84 fonctionetape2.o(moncode)
moncode 0x080012e4 Section 200 foncasm.o(moncode)
.data 0x20000000 Section 19 initialisation.o(.data)
.data 0x20000014 Section 24 fonctiontimer.o(.data)
incre 0x20000024 Data 4 fonctiontimer.o(.data)
@ -278,7 +284,9 @@ Image Symbol Table
.data 0x2000002c Section 96 warning.o(.data)
.data 0x2000008c Section 4 timer_systick_1.o(.data)
Ptr_Systick 0x2000008c Data 4 timer_systick_1.o(.data)
STACK 0x20000090 Section 1024 startup_stm32f10x_md.o(STACK)
MesDonnees 0x20000090 Section 21 fonctionetape2.o(MesDonnees)
Barette1 0x20000090 Data 3 fonctionetape2.o(MesDonnees)
STACK 0x200000a8 Section 1024 startup_stm32f10x_md.o(STACK)
Global Symbols
@ -396,11 +404,17 @@ Image Symbol Table
__scatterload_copy 0x08001209 Thumb Code 14 handlers.o(i.__scatterload_copy)
__scatterload_null 0x08001217 Thumb Code 2 handlers.o(i.__scatterload_null)
__scatterload_zeroinit 0x08001219 Thumb Code 14 handlers.o(i.__scatterload_zeroinit)
main 0x0800127f Thumb Code 54 principale.o(moncode)
Envoie192Boucle 0x080012bd Thumb Code 108 foncasm.o(moncode)
Envoie96Dot 0x08001329 Thumb Code 78 foncasm.o(moncode)
Region$$Table$$Base 0x08001384 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x080013a4 Number 0 anon$$obj.o(Region$$Table)
main 0x08001229 Thumb Code 10 principale.o(moncode)
Eteint_LED 0x08001235 Thumb Code 22 fonctionetape.o(moncode)
Allume_LED 0x0800124b Thumb Code 22 fonctionetape.o(moncode)
Inverse_LED 0x08001261 Thumb Code 42 fonctionetape.o(moncode)
Set_SCLK 0x08001291 Thumb Code 22 fonctionetape2.o(moncode)
Reset_SCLK 0x080012a7 Thumb Code 22 fonctionetape2.o(moncode)
DriverGlobal 0x080012bd Thumb Code 26 fonctionetape2.o(moncode)
Envoie192Boucle 0x080012e5 Thumb Code 108 foncasm.o(moncode)
Envoie96Dot 0x08001351 Thumb Code 78 foncasm.o(moncode)
Region$$Table$$Base 0x080013ac Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x080013cc Number 0 anon$$obj.o(Region$$Table)
PrtSurImage 0x20000000 Data 4 initialisation.o(.data)
BarretEnCours 0x20000004 Data 4 initialisation.o(.data)
DataSend 0x20000008 Data 1 initialisation.o(.data)
@ -411,7 +425,7 @@ Image Symbol Table
ImageEnCours 0x2000001c Data 4 fonctiontimer.o(.data)
increment 0x20000020 Data 4 fonctiontimer.o(.data)
warning 0x2000002c Data 96 warning.o(.data)
__initial_sp 0x20000490 Data 0 startup_stm32f10x_md.o(STACK)
__initial_sp 0x200004a8 Data 0 startup_stm32f10x_md.o(STACK)
@ -421,83 +435,88 @@ Memory Map of the image
Image Entry point : 0x080000ed
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00001434, Max: 0x00020000, ABSOLUTE)
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00001474, Max: 0x00020000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000013a4, Max: 0x00020000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000013cc, Max: 0x00020000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x08000000 0x08000000 0x000000ec Data RO 12 RESET startup_stm32f10x_md.o
0x080000ec 0x080000ec 0x00000000 Code RO 439 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x080000ec 0x080000ec 0x00000004 Code RO 462 .ARM.Collect$$$$00000001 mc_w.l(entry2.o)
0x080000f0 0x080000f0 0x00000004 Code RO 465 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x080000f4 0x080000f4 0x00000000 Code RO 467 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x080000f4 0x080000f4 0x00000000 Code RO 469 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x080000f4 0x080000f4 0x00000008 Code RO 470 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x080000fc 0x080000fc 0x00000004 Code RO 477 .ARM.Collect$$$$0000000E mc_w.l(entry12b.o)
0x08000100 0x08000100 0x00000000 Code RO 472 .ARM.Collect$$$$0000000F mc_w.l(entry10a.o)
0x08000100 0x08000100 0x00000000 Code RO 474 .ARM.Collect$$$$00000011 mc_w.l(entry11a.o)
0x08000100 0x08000100 0x00000004 Code RO 463 .ARM.Collect$$$$00002712 mc_w.l(entry2.o)
0x08000104 0x08000104 0x00000024 Code RO 13 .text startup_stm32f10x_md.o
0x08000128 0x08000128 0x00000064 Code RO 442 .text mf_w.l(fmul.o)
0x0800018c 0x0800018c 0x0000007c Code RO 444 .text mf_w.l(fdiv.o)
0x08000208 0x08000208 0x000000e4 Code RO 446 .text mf_w.l(dmul.o)
0x080002ec 0x080002ec 0x000000de Code RO 448 .text mf_w.l(ddiv.o)
0x080003ca 0x080003ca 0x0000000a Code RO 450 .text mf_w.l(ffltui.o)
0x080003d4 0x080003d4 0x00000028 Code RO 452 .text mf_w.l(ffixui.o)
0x080003fc 0x080003fc 0x00000026 Code RO 454 .text mf_w.l(f2d.o)
0x08000000 0x08000000 0x000000ec Data RO 20 RESET startup_stm32f10x_md.o
0x080000ec 0x080000ec 0x00000000 Code RO 447 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x080000ec 0x080000ec 0x00000004 Code RO 470 .ARM.Collect$$$$00000001 mc_w.l(entry2.o)
0x080000f0 0x080000f0 0x00000004 Code RO 473 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x080000f4 0x080000f4 0x00000000 Code RO 475 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x080000f4 0x080000f4 0x00000000 Code RO 477 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x080000f4 0x080000f4 0x00000008 Code RO 478 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x080000fc 0x080000fc 0x00000004 Code RO 485 .ARM.Collect$$$$0000000E mc_w.l(entry12b.o)
0x08000100 0x08000100 0x00000000 Code RO 480 .ARM.Collect$$$$0000000F mc_w.l(entry10a.o)
0x08000100 0x08000100 0x00000000 Code RO 482 .ARM.Collect$$$$00000011 mc_w.l(entry11a.o)
0x08000100 0x08000100 0x00000004 Code RO 471 .ARM.Collect$$$$00002712 mc_w.l(entry2.o)
0x08000104 0x08000104 0x00000024 Code RO 21 .text startup_stm32f10x_md.o
0x08000128 0x08000128 0x00000064 Code RO 450 .text mf_w.l(fmul.o)
0x0800018c 0x0800018c 0x0000007c Code RO 452 .text mf_w.l(fdiv.o)
0x08000208 0x08000208 0x000000e4 Code RO 454 .text mf_w.l(dmul.o)
0x080002ec 0x080002ec 0x000000de Code RO 456 .text mf_w.l(ddiv.o)
0x080003ca 0x080003ca 0x0000000a Code RO 458 .text mf_w.l(ffltui.o)
0x080003d4 0x080003d4 0x00000028 Code RO 460 .text mf_w.l(ffixui.o)
0x080003fc 0x080003fc 0x00000026 Code RO 462 .text mf_w.l(f2d.o)
0x08000422 0x08000422 0x00000002 PAD
0x08000424 0x08000424 0x00000030 Code RO 456 .text mf_w.l(cdcmple.o)
0x08000454 0x08000454 0x00000030 Code RO 458 .text mf_w.l(cdrcmple.o)
0x08000484 0x08000484 0x00000038 Code RO 460 .text mf_w.l(d2f.o)
0x080004bc 0x080004bc 0x00000000 Code RO 478 .text mc_w.l(iusefp.o)
0x080004bc 0x080004bc 0x0000006e Code RO 479 .text mf_w.l(fepilogue.o)
0x0800052a 0x0800052a 0x000000ba Code RO 481 .text mf_w.l(depilogue.o)
0x080005e4 0x080005e4 0x00000024 Code RO 483 .text mc_w.l(init.o)
0x08000608 0x08000608 0x0000001e Code RO 485 .text mc_w.l(llshl.o)
0x08000626 0x08000626 0x00000020 Code RO 487 .text mc_w.l(llushr.o)
0x08000424 0x08000424 0x00000030 Code RO 464 .text mf_w.l(cdcmple.o)
0x08000454 0x08000454 0x00000030 Code RO 466 .text mf_w.l(cdrcmple.o)
0x08000484 0x08000484 0x00000038 Code RO 468 .text mf_w.l(d2f.o)
0x080004bc 0x080004bc 0x00000000 Code RO 486 .text mc_w.l(iusefp.o)
0x080004bc 0x080004bc 0x0000006e Code RO 487 .text mf_w.l(fepilogue.o)
0x0800052a 0x0800052a 0x000000ba Code RO 489 .text mf_w.l(depilogue.o)
0x080005e4 0x080005e4 0x00000024 Code RO 491 .text mc_w.l(init.o)
0x08000608 0x08000608 0x0000001e Code RO 493 .text mc_w.l(llshl.o)
0x08000626 0x08000626 0x00000020 Code RO 495 .text mc_w.l(llushr.o)
0x08000646 0x08000646 0x00000002 PAD
0x08000648 0x08000648 0x00000028 Code RO 215 i.Anim Matos.lib(fonctiontimer.o)
0x08000670 0x08000670 0x0000014c Code RO 338 i.GPIO_Configure Matos.lib(pilote_io_1.o)
0x080007bc 0x080007bc 0x0000010c Code RO 89 i.Init_Cible Matos.lib(initialisation.o)
0x080008c8 0x080008c8 0x00000078 Code RO 90 i.Init_Dot Matos.lib(initialisation.o)
0x08000940 0x08000940 0x00000090 Code RO 91 i.Init_Port Matos.lib(initialisation.o)
0x080009d0 0x080009d0 0x0000016c Code RO 93 i.Init_Timer1 Matos.lib(initialisation.o)
0x08000b3c 0x08000b3c 0x0000011c Code RO 94 i.Init_Timer2_PWM Matos.lib(initialisation.o)
0x08000c58 0x08000c58 0x00000070 Code RO 95 i.Init_Timer3_Slave Matos.lib(initialisation.o)
0x08000cc8 0x08000cc8 0x00000074 Code RO 96 i.Init_Timer4 Matos.lib(initialisation.o)
0x08000d3c 0x08000d3c 0x00000010 Code RO 344 i.Port_IO_Reset Matos.lib(pilote_io_1.o)
0x08000d4c 0x08000d4c 0x00000010 Code RO 345 i.Port_IO_Set Matos.lib(pilote_io_1.o)
0x08000d5c 0x08000d5c 0x00000008 Code RO 20 i.SetSysClock system_stm32f10x.o
0x08000d64 0x08000d64 0x000000e0 Code RO 21 i.SetSysClockTo72 system_stm32f10x.o
0x08000e44 0x08000e44 0x00000010 Code RO 404 i.SysTick_Handler Matos.lib(timer_systick_1.o)
0x08000e54 0x08000e54 0x00000060 Code RO 23 i.SystemInit system_stm32f10x.o
0x08000eb4 0x08000eb4 0x00000110 Code RO 405 i.Systick_Period Matos.lib(timer_systick_1.o)
0x08000fc4 0x08000fc4 0x00000024 Code RO 406 i.Systick_Prio_IT Matos.lib(timer_systick_1.o)
0x08000fe8 0x08000fe8 0x000000b4 Code RO 224 i.TIM1_CC_IRQHandler Matos.lib(fonctiontimer.o)
0x0800109c 0x0800109c 0x000000ac Code RO 225 i.TIM1_UP_IRQHandler Matos.lib(fonctiontimer.o)
0x08001148 0x08001148 0x00000004 Code RO 226 i.TIM2_IRQHandler Matos.lib(fonctiontimer.o)
0x0800114c 0x0800114c 0x00000050 Code RO 227 i.TIM3_IRQHandler Matos.lib(fonctiontimer.o)
0x0800119c 0x0800119c 0x0000006c Code RO 228 i.TIM4_IRQHandler Matos.lib(fonctiontimer.o)
0x08001208 0x08001208 0x0000000e Code RO 491 i.__scatterload_copy mc_w.l(handlers.o)
0x08001216 0x08001216 0x00000002 Code RO 492 i.__scatterload_null mc_w.l(handlers.o)
0x08001218 0x08001218 0x0000000e Code RO 493 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x08000648 0x08000648 0x00000028 Code RO 223 i.Anim Matos.lib(fonctiontimer.o)
0x08000670 0x08000670 0x0000014c Code RO 346 i.GPIO_Configure Matos.lib(pilote_io_1.o)
0x080007bc 0x080007bc 0x0000010c Code RO 97 i.Init_Cible Matos.lib(initialisation.o)
0x080008c8 0x080008c8 0x00000078 Code RO 98 i.Init_Dot Matos.lib(initialisation.o)
0x08000940 0x08000940 0x00000090 Code RO 99 i.Init_Port Matos.lib(initialisation.o)
0x080009d0 0x080009d0 0x0000016c Code RO 101 i.Init_Timer1 Matos.lib(initialisation.o)
0x08000b3c 0x08000b3c 0x0000011c Code RO 102 i.Init_Timer2_PWM Matos.lib(initialisation.o)
0x08000c58 0x08000c58 0x00000070 Code RO 103 i.Init_Timer3_Slave Matos.lib(initialisation.o)
0x08000cc8 0x08000cc8 0x00000074 Code RO 104 i.Init_Timer4 Matos.lib(initialisation.o)
0x08000d3c 0x08000d3c 0x00000010 Code RO 352 i.Port_IO_Reset Matos.lib(pilote_io_1.o)
0x08000d4c 0x08000d4c 0x00000010 Code RO 353 i.Port_IO_Set Matos.lib(pilote_io_1.o)
0x08000d5c 0x08000d5c 0x00000008 Code RO 28 i.SetSysClock system_stm32f10x.o
0x08000d64 0x08000d64 0x000000e0 Code RO 29 i.SetSysClockTo72 system_stm32f10x.o
0x08000e44 0x08000e44 0x00000010 Code RO 412 i.SysTick_Handler Matos.lib(timer_systick_1.o)
0x08000e54 0x08000e54 0x00000060 Code RO 31 i.SystemInit system_stm32f10x.o
0x08000eb4 0x08000eb4 0x00000110 Code RO 413 i.Systick_Period Matos.lib(timer_systick_1.o)
0x08000fc4 0x08000fc4 0x00000024 Code RO 414 i.Systick_Prio_IT Matos.lib(timer_systick_1.o)
0x08000fe8 0x08000fe8 0x000000b4 Code RO 232 i.TIM1_CC_IRQHandler Matos.lib(fonctiontimer.o)
0x0800109c 0x0800109c 0x000000ac Code RO 233 i.TIM1_UP_IRQHandler Matos.lib(fonctiontimer.o)
0x08001148 0x08001148 0x00000004 Code RO 234 i.TIM2_IRQHandler Matos.lib(fonctiontimer.o)
0x0800114c 0x0800114c 0x00000050 Code RO 235 i.TIM3_IRQHandler Matos.lib(fonctiontimer.o)
0x0800119c 0x0800119c 0x0000006c Code RO 236 i.TIM4_IRQHandler Matos.lib(fonctiontimer.o)
0x08001208 0x08001208 0x0000000e Code RO 499 i.__scatterload_copy mc_w.l(handlers.o)
0x08001216 0x08001216 0x00000002 Code RO 500 i.__scatterload_null mc_w.l(handlers.o)
0x08001218 0x08001218 0x0000000e Code RO 501 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x08001226 0x08001226 0x00000002 PAD
0x08001228 0x08001228 0x00000094 Code RO 2 moncode principale.o
0x080012bc 0x080012bc 0x000000c8 Code RO 331 moncode Matos.lib(foncasm.o)
0x08001384 0x08001384 0x00000020 Data RO 489 Region$$Table anon$$obj.o
0x08001228 0x08001228 0x0000000a Code RO 2 moncode principale.o
0x08001232 0x08001232 0x00000002 PAD
0x08001234 0x08001234 0x0000005c Code RO 9 moncode fonctionetape.o
0x08001290 0x08001290 0x00000054 Code RO 14 moncode fonctionetape2.o
0x080012e4 0x080012e4 0x000000c8 Code RO 339 moncode Matos.lib(foncasm.o)
0x080013ac 0x080013ac 0x00000020 Data RO 497 Region$$Table anon$$obj.o
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x080013a4, Size: 0x00000490, Max: 0x00005000, ABSOLUTE)
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x080013cc, Size: 0x000004a8, Max: 0x00005000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 0x080013a4 0x00000013 Data RW 97 .data Matos.lib(initialisation.o)
0x20000013 0x080013b7 0x00000001 PAD
0x20000014 0x080013b8 0x00000018 Data RW 229 .data Matos.lib(fonctiontimer.o)
0x2000002c 0x080013d0 0x00000060 Data RW 321 .data Matos.lib(warning.o)
0x2000008c 0x08001430 0x00000004 Data RW 407 .data Matos.lib(timer_systick_1.o)
0x20000090 - 0x00000400 Zero RW 10 STACK startup_stm32f10x_md.o
0x20000000 0x080013cc 0x00000013 Data RW 105 .data Matos.lib(initialisation.o)
0x20000013 0x080013df 0x00000001 PAD
0x20000014 0x080013e0 0x00000018 Data RW 237 .data Matos.lib(fonctiontimer.o)
0x2000002c 0x080013f8 0x00000060 Data RW 329 .data Matos.lib(warning.o)
0x2000008c 0x08001458 0x00000004 Data RW 415 .data Matos.lib(timer_systick_1.o)
0x20000090 0x0800145c 0x00000015 Data RW 13 MesDonnees fonctionetape2.o
0x200000a5 0x08001471 0x00000003 PAD
0x200000a8 - 0x00000400 Zero RW 18 STACK startup_stm32f10x_md.o
==============================================================================
@ -507,14 +526,16 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Object Name
148 8 0 0 0 480 principale.o
92 6 0 0 0 408 fonctionetape.o
84 14 0 21 0 400 fonctionetape2.o
10 0 0 0 0 328 principale.o
36 8 236 0 1024 796 startup_stm32f10x_md.o
328 28 0 0 0 6425 system_stm32f10x.o
----------------------------------------------------------------------
512 44 268 0 1024 7701 Object Totals
552 56 268 24 1024 8357 Object Totals
0 0 32 0 0 0 (incl. Generated)
0 0 0 0 0 0 (incl. Padding)
2 0 0 3 0 0 (incl. Padding)
----------------------------------------------------------------------
@ -575,15 +596,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
4760 386 268 144 1024 245320 Grand Totals
4760 386 268 144 1024 245320 ELF Image Totals
4760 386 268 144 0 0 ROM Totals
4800 398 268 168 1024 245872 Grand Totals
4800 398 268 168 1024 245872 ELF Image Totals
4800 398 268 168 0 0 ROM Totals
==============================================================================
Total RO Size (Code + RO Data) 5028 ( 4.91kB)
Total RW Size (RW Data + ZI Data) 1168 ( 1.14kB)
Total ROM Size (Code + RO Data + RW Data) 5172 ( 5.05kB)
Total RO Size (Code + RO Data) 5068 ( 4.95kB)
Total RW Size (RW Data + ZI Data) 1192 ( 1.16kB)
Total ROM Size (Code + RO Data + RW Data) 5236 ( 5.11kB)
==============================================================================

View file

@ -21,17 +21,19 @@ ARM Macro Assembler Page 1
12 00000000 ;***************IMPORT/EXPORT***************************
*******************
13 00000000
14 00000000
15 00000000
16 00000000 ;*******************************************************
*******************
14 00000000 EXPORT Eteint_LED
15 00000000 EXPORT Allume_LED
16 00000000 EXPORT Inverse_LED
17 00000000
18 00000000
19 00000000
20 00000000 ;***************CONSTANTES******************************
18 00000000 ;*******************************************************
*******************
19 00000000
20 00000000
21 00000000
22 00000000 include REG_UTILES.inc
22 00000000 ;***************CONSTANTES******************************
*******************
23 00000000
24 00000000 include REG_UTILES.inc
1 00000000
2 00000000 ;**************************************
3 00000000 ; Les adresess utiles
@ -61,14 +63,14 @@ ARM Macro Assembler Page 1
25 00000000 40010C00
GPIOBASEB
EQU 0X40010C00
26 00000000
27 00000000 00000008
ARM Macro Assembler Page 2
26 00000000
27 00000000 00000008
OffsetInput
EQU 0x08
28 00000000 0000000C
@ -126,63 +128,172 @@ ARM Macro Assembler Page 2
50 00000000
51 00000000
52 00000000
53 00000000 END
23 00000000
ARM Macro Assembler Page 3
24 00000000 ;*******************************************************
*******************
53 00000000 END
25 00000000
26 00000000
27 00000000 ;***************VARIABLES*******************************
26 00000000 ;*******************************************************
*******************
28 00000000 AREA MesDonnees, data, readwrite
29 00000000 ;*******************************************************
27 00000000
28 00000000
29 00000000 ;***************VARIABLES*******************************
*******************
30 00000000 AREA MesDonnees, data, readwrite
31 00000000 ;*******************************************************
*******************
30 00000000
31 00000000
32 00000000
33 00000000 ;*******************************************************
*******************
33 00000000
34 00000000
35 00000000
35 00000000 ;*******************************************************
*******************
36 00000000
37 00000000 ;***************CODE************************************
37 00000000
38 00000000
39 00000000 ;***************CODE************************************
*******************
38 00000000 AREA moncode, code, readonly
39 00000000 ;*******************************************************
40 00000000 AREA moncode, code, readonly
41 00000000 ;*******************************************************
*******************
40 00000000
41 00000000
42 00000000
43 00000000
44 00000000
45 00000000 ;#######################################################
#################
46 00000000 ; Procédure ????
45 00000000
46 00000000
47 00000000 ;#######################################################
#################
48 00000000 ;
49 00000000 ; Paramètre entrant : ???
50 00000000 ; Paramètre sortant : ???
51 00000000 ; Variables globales : ???
52 00000000 ; Registres modifiés : ???
53 00000000 ;-------------------------------------------------------
48 00000000 ; Procédure ????
49 00000000 ;#######################################################
#################
50 00000000 ;
51 00000000 ; Paramètre entrant : ???
52 00000000 ; Paramètre sortant : ???
53 00000000 ; Variables globales : ???
54 00000000 ; Registres modifiés : ???
55 00000000 ;-------------------------------------------------------
-----------------
54 00000000
55 00000000
56 00000000
57 00000000
58 00000000
59 00000000
60 00000000
61 00000000 ;*******************************************************
58 00000000 ;*******************************************************
************************
59 00000000 ; On eteint la LED
60 00000000 ;*******************************************************
************************
61 00000000 Eteint_LED
PROC
62 00000000
63 00000000 E92D 1001 PUSH {R12,R0} ;On stocke R12 dans
R0
64 00000004 F8DF C050 LDR R12,=GPIOBASEB ;On recupère l'a
dresse de base
65 00000008 F44F 6580 MOV R5,#(0x01 << 10) ;1 décalé de 1
0 dans R5
66 0000000C F8AC 5014 STRH R5,[R12,#OffsetReset] ;On stock
e la variable R5 à
ARM Macro Assembler Page 4
l'adresse 0x0X40010
C14 (reset)
67 00000010 E8BD 1001 POP {R12,R0} ;On restitue R12 da
ns R0
68 00000014 4770 BX LR ;Retour
69 00000016 ;LDR R5,[R12,#0x0C] ;Valeur à l'adresse de l'output
70 00000016 ;AND R5, R5,#~(0x01 << 10) ;OU LOGIQUE pour calculer la
valeur a mettre dans l'output
71 00000016 ;STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans
l'output
72 00000016 ENDP
73 00000016
74 00000016 ;*******************************************************
************************
75 00000016 ; On allume la LED
76 00000016 ;*******************************************************
************************
77 00000016 Allume_LED
PROC
78 00000016
79 00000016 E92D 1001 PUSH {R12,R0} ;On stocke R12 dans
R0
80 0000001A F8DF C03C LDR R12,=GPIOBASEB ;On recupère l'a
dresse de base
81 0000001E F44F 6580 MOV R5,#(0x01 << 10) ;1 décalé de 1
0 dans R5
82 00000022 F8AC 5010 STRH R5,[R12,#OffsetSet] ;On stocke
la variable R5 à l'
adresse 0x0X40010C1
0 (set)
83 00000026 E8BD 1001 POP {R12,R0} ;On restitue R12 da
ns R0
84 0000002A 4770 BX LR ;Retour
85 0000002C ;LDR R5,[R12,#0x0C] ;Valeur à l'adresse de l'output
86 0000002C ;ORR R5, R5,#(0x01 << 10) ;OU LOGIQUE pour calculer la v
aleur a mettre dans l'output
87 0000002C ;STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans
l'output
88 0000002C
89 0000002C ENDP
90 0000002C
91 0000002C ;*******************************************************
************************
92 0000002C ; On inverse la LED (besoin de R3)
93 0000002C ;*******************************************************
************************
94 0000002C Inverse_LED
PROC
95 0000002C E92D 1001 PUSH {R12,R0} ;On stocke R12 dans
R0
96 00000030 F8DF C024 LDR R12,=GPIOBASEB ;On recupère l'a
dresse de base
97 00000034 F44F 6580 MOV R5,#(0x01 << 10) ;1 décalé de 1
0 dans R5
98 00000038 2B00 CMP R3,#0 ;Si R3=0 (default)
alors on allume, si
non on eteint
99 0000003A ;BEQ Allume
100 0000003A ;B Eteint
ARM Macro Assembler Page 5
101 0000003A D104 BNE Eteint
102 0000003C Allume
103 0000003C F8AC 5010 STRH R5,[R12,#OffsetSet] ;On stocke
la variable R5 à l'
adresse 0x0X40010C1
0 (set)
104 00000040 F04F 0301 MOV R3,#1 ; ;On remet la
variable à 1
105 00000044 E004 B Fin ;Retour
106 00000046 Eteint
107 00000046 F8AC 5014 STRH R5,[R12,#OffsetReset] ;On stock
e la variable R5 à
l'adresse 0x0X40010
C14 (reset)
108 0000004A F04F 0300 MOV R3,#0 ; ;On remet la
variable à 0
109 0000004E E7FF B Fin
110 00000050
111 00000050
112 00000050 Fin
113 00000050 E8BD 1001 POP {R12,R0} ;On restitue R12 da
ns R0
114 00000054 4770 BX LR ;Retour
115 00000056
116 00000056 ENDP
117 00000056
118 00000056 ;*******************************************************
*******************
62 00000000 END
119 00000056 END
00 00 40010C00
Command Line: --debug --xref --diag_suppress=9931 --cpu=Cortex-M3 --apcs=interw
ork --depend=.\objects\fonctionetape.d -o.\objects\fonctionetape.o -I.\RTE\Devi
ce\STM32F103RB -I.\RTE\_Simul_ -IC:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\
@ -201,7 +312,7 @@ MesDonnees 00000000
Symbol: MesDonnees
Definitions
At line 28 in file FonctionEtape.asm
At line 30 in file FonctionEtape.asm
Uses
None
Comment: MesDonnees unused
@ -212,15 +323,64 @@ Comment: MesDonnees unused
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Relocatable symbols
Allume 0000003C
Symbol: Allume
Definitions
At line 102 in file FonctionEtape.asm
Uses
None
Comment: Allume unused
Allume_LED 00000016
Symbol: Allume_LED
Definitions
At line 77 in file FonctionEtape.asm
Uses
At line 15 in file FonctionEtape.asm
Comment: Allume_LED used once
Eteint 00000046
Symbol: Eteint
Definitions
At line 106 in file FonctionEtape.asm
Uses
At line 101 in file FonctionEtape.asm
Comment: Eteint used once
Eteint_LED 00000000
Symbol: Eteint_LED
Definitions
At line 61 in file FonctionEtape.asm
Uses
At line 14 in file FonctionEtape.asm
Comment: Eteint_LED used once
Fin 00000050
Symbol: Fin
Definitions
At line 112 in file FonctionEtape.asm
Uses
At line 105 in file FonctionEtape.asm
At line 109 in file FonctionEtape.asm
Inverse_LED 0000002C
Symbol: Inverse_LED
Definitions
At line 94 in file FonctionEtape.asm
Uses
At line 16 in file FonctionEtape.asm
Comment: Inverse_LED used once
moncode 00000000
Symbol: moncode
Definitions
At line 38 in file FonctionEtape.asm
At line 40 in file FonctionEtape.asm
Uses
None
Comment: moncode unused
1 symbol
7 symbols
@ -241,8 +401,10 @@ Symbol: GPIOBASEB
Definitions
At line 25 in file REG_UTILES.inc
Uses
None
Comment: GPIOBASEB unused
At line 64 in file FonctionEtape.asm
At line 80 in file FonctionEtape.asm
At line 96 in file FonctionEtape.asm
MaskBlank 00000004
Symbol: MaskBlank
@ -285,13 +447,13 @@ Symbol: MaskSerial_Dots
Comment: MaskSerial_Dots unused
MaskSerial_In1 00000080
Symbol: MaskSerial_In1
ARM Macro Assembler Page 2 Alphabetic symbol ordering
Absolute symbols
Symbol: MaskSerial_In1
Definitions
At line 33 in file REG_UTILES.inc
Uses
@ -335,28 +497,30 @@ Symbol: OffsetReset
Definitions
At line 30 in file REG_UTILES.inc
Uses
None
Comment: OffsetReset unused
At line 66 in file FonctionEtape.asm
At line 107 in file FonctionEtape.asm
OffsetSet 00000010
Symbol: OffsetSet
Definitions
At line 29 in file REG_UTILES.inc
Uses
None
Comment: OffsetSet unused
At line 82 in file FonctionEtape.asm
At line 103 in file FonctionEtape.asm
SCB_VTOR E000ED08
Symbol: SCB_VTOR
Definitions
At line 43 in file REG_UTILES.inc
Uses
ARM Macro Assembler Page 3 Alphabetic symbol ordering
Absolute symbols
Symbol: SCB_VTOR
Definitions
At line 43 in file REG_UTILES.inc
Uses
None
Comment: SCB_VTOR unused
TIM1_CNT 40012C24
@ -392,4 +556,4 @@ Symbol: TIM4_SR
None
Comment: TIM4_SR unused
19 symbols
356 symbols in table
364 symbols in table

502
Listings/fonctionetape2.lst Normal file
View file

@ -0,0 +1,502 @@
ARM Macro Assembler Page 1
1 00000000 ;*******************************************************
********************
2 00000000 THUMB
3 00000000 REQUIRE8
4 00000000 PRESERVE8
5 00000000
6 00000000 ;*******************************************************
*******************
7 00000000 ; Fichier Vierge.asm
8 00000000 ; Auteur : V.MAHOUT
9 00000000 ; Date : 12/11/2013
10 00000000 ;*******************************************************
*******************
11 00000000
12 00000000 ;***************IMPORT/EXPORT***************************
*******************
13 00000000
14 00000000 EXPORT Set_SCLK
15 00000000 EXPORT Reset_SCLK
16 00000000 EXPORT DriverGlobal
17 00000000
18 00000000 ;*******************************************************
*******************
19 00000000
20 00000000
21 00000000
22 00000000 ;***************CONSTANTES******************************
*******************
23 00000000
24 00000000 include REG_UTILES.inc
1 00000000
2 00000000 ;**************************************
3 00000000 ; Les adresess utiles
4 00000000 ;***************************************
5 00000000
6 00000000
7 00000000 ;**************************************
8 00000000 ; Affectation des bits GPIO
9 00000000 ;***************************************
10 00000000 ; GSLCK..... PA0
11 00000000 ; DSPRG..... PA1
12 00000000 ; BLANK..... PA2
13 00000000 ; XLAT...... PA3
14 00000000 ; VPRG...... PA4
15 00000000 ; SCLK...... PA5
16 00000000 ; SIN1...... PA7
17 00000000 ;Capteur.....PA8
18 00000000
19 00000000 ;LED.........PB10
20 00000000 ;****************************************/
21 00000000
22 00000000
23 00000000
24 00000000 40010800
GPIOBASEA
EQU 0X40010800
25 00000000 40010C00
GPIOBASEB
EQU 0X40010C00
ARM Macro Assembler Page 2
26 00000000
27 00000000 00000008
OffsetInput
EQU 0x08
28 00000000 0000000C
OffsetOutput
EQU 0x0C
29 00000000 00000010
OffsetSet
EQU 0x10
30 00000000 00000014
OffsetReset
EQU 0x14
31 00000000
32 00000000
33 00000000 00000080
MaskSerial_In1
equ 0x80
34 00000000 00000080
MaskSerial_Dots
equ 0x80
35 00000000 00000010
MaskVprg
equ 0x10
36 00000000 00000008
MaskXlat
equ 0x08
37 00000000 00000004
MaskBlank
equ 0x04
38 00000000 00000020
MaskSclk
equ 0x20
39 00000000 00000002
MaskDsprg
equ 0x02
40 00000000 00000001
MaskGsclk
equ 0x01
41 00000000
42 00000000
43 00000000 E000ED08
SCB_VTOR
EQU 0xE000ED08
44 00000000 40012C10
TIM1_SR EQU 0x40012c10
45 00000000 40012C24
TIM1_CNT
EQU 0x40012c24
46 00000000 4000082C
TIM4_ARR
EQU 0x4000082C
47 00000000 40000810
TIM4_SR EQU 0x40000810
48 00000000
49 00000000
50 00000000
51 00000000
52 00000000
ARM Macro Assembler Page 3
53 00000000 END
25 00000000
26 00000000 ;*******************************************************
*******************
27 00000000
28 00000000
29 00000000 ;***************VARIABLES*******************************
*******************
30 00000000 AREA MesDonnees, data, readwrite
31 00000000 ;*******************************************************
*******************
32 00000000
33 00000000
34 00000000 00 01 00
Barette1
DCB 0,1,0
35 00000003 00 01 00 DCB 0,1,0
36 00000006 00 01 00 DCB 0,1,0
37 00000009 00 01 00 DCB 0,1,0
38 0000000C 00 01 00 DCB 0,1,0
39 0000000F 00 01 00 DCB 0,1,0
40 00000012 00 01 00 DCB 0,1,0
41 00000015
42 00000015
43 00000015
44 00000015 ;*******************************************************
*******************
45 00000015
46 00000015
47 00000015
48 00000015 ;***************CODE************************************
*******************
49 00000015 AREA moncode, code, readonly
50 00000000 ;*******************************************************
*******************
51 00000000
52 00000000 Set_SCLK
PROC
53 00000000 E92D 1001 PUSH {R12,R0} ;On stocke R12 dans
R0
54 00000004 F8DF C040 LDR R12,=GPIOBASEA ;On recupère l'a
dresse de base
55 00000008 F8DC 5020 LDR R5,[R12,#MaskSclk] ;Valeur à l'
adresse de l'output
56 0000000C F045 0520 ORR R5, R5,#(0x01 << 5) ;OU LOGIQUE
pour calculer la v
aleur a mettre dans
l'output
57 00000010 F8AC 500C STRH R5,[R12,#0x0C] ;Etat du port B
(R5) stocké dans l'
output
58 00000014 4770 BX LR ;Retour
59 00000016
60 00000016 ENDP
61 00000016
62 00000016 Reset_SCLK
PROC
63 00000016 E92D 1001 PUSH {R12,R0} ;On stocke R12 dans
ARM Macro Assembler Page 4
R0
64 0000001A F8DF C030 LDR R12,=GPIOBASEB ;On recupère l'a
dresse de base
65 0000001E F8DC 5020 LDR R5,[R12,#MaskSclk] ;Valeur à l'
adresse de l'SCLK
66 00000022 F025 0520 AND R5, R5,#~(0x01 << 5) ;OU LOGIQU
E pour calculer la
valeur a mettre dan
s l'output
67 00000026 F8AC 500C STRH R5,[R12,#0x0C] ;Etat du port B
(R5) stocké dans l'
output
68 0000002A 4770 BX LR ;Retour
69 0000002C
70 0000002C ENDP
71 0000002C
72 0000002C ;*******************************************************
*********************
73 0000002C ;R6 = NBLed
74 0000002C ;R7 = *ValCourante
75 0000002C ;R8 = ValCourante[NBLed]
76 0000002C ;*******************************************************
*********************
77 0000002C DriverGlobal
PROC
78 0000002C F7FF FFFE BL Set_SCLK ;
79 00000030 F04F 0600 MOV R6, #0 ;
80 00000034 WHILE_NBLED
81 00000034 ;Pour NbLed = 1 à 48
82 00000034 4F06 LDR R7,=Barette1 ;On recupère l'adr
esse de base
83 00000036 F817 8006 LDRB R8,[R7,R6] ;R8 = ValCourante[.
..NBLed]
84 0000003A
85 0000003A EA4F 6808 LSL R8,#24 ;ValCourante[NBLed]
<<24
86 0000003E
87 0000003E F106 0601 ADD R6, R6, #1 ;On incrémente R6
88 00000042 2E2F CMP R6, #47 ; SI R6==47 alors o
n arrête la boucle
89 00000044 D1F6 BNE WHILE_NBLED
90 00000046 ENDP
91 00000046
92 00000046 ;*******************************************************
*******************
93 00000046 END
00 00 40010800
40010C00
00000000
Command Line: --debug --xref --diag_suppress=9931 --cpu=Cortex-M3 --apcs=interw
ork --depend=.\objects\fonctionetape2.d -o.\objects\fonctionetape2.o -I.\RTE\De
vice\STM32F103RB -I.\RTE\_Simul_ -IC:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.
0\CMSIS\Core\Include -IC:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\D
evice\Include --predefine="__EVAL SETA 1" --predefine="__MICROLIB SETA 1" --pre
define="__UVISION_VERSION SETA 534" --predefine="_RTE_ SETA 1" --predefine="STM
32F10X_MD SETA 1" --predefine="_RTE_ SETA 1" --predefine="STM32F10X_MD SETA 1"
--list=.\listings\fonctionetape2.lst FonctionEtape2.asm
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Relocatable symbols
Barette1 00000000
Symbol: Barette1
Definitions
At line 34 in file FonctionEtape2.asm
Uses
At line 82 in file FonctionEtape2.asm
Comment: Barette1 used once
MesDonnees 00000000
Symbol: MesDonnees
Definitions
At line 30 in file FonctionEtape2.asm
Uses
None
Comment: MesDonnees unused
2 symbols
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Relocatable symbols
DriverGlobal 0000002C
Symbol: DriverGlobal
Definitions
At line 77 in file FonctionEtape2.asm
Uses
At line 16 in file FonctionEtape2.asm
Comment: DriverGlobal used once
Reset_SCLK 00000016
Symbol: Reset_SCLK
Definitions
At line 62 in file FonctionEtape2.asm
Uses
At line 15 in file FonctionEtape2.asm
Comment: Reset_SCLK used once
Set_SCLK 00000000
Symbol: Set_SCLK
Definitions
At line 52 in file FonctionEtape2.asm
Uses
At line 14 in file FonctionEtape2.asm
At line 78 in file FonctionEtape2.asm
WHILE_NBLED 00000034
Symbol: WHILE_NBLED
Definitions
At line 80 in file FonctionEtape2.asm
Uses
At line 89 in file FonctionEtape2.asm
Comment: WHILE_NBLED used once
moncode 00000000
Symbol: moncode
Definitions
At line 49 in file FonctionEtape2.asm
Uses
None
Comment: moncode unused
5 symbols
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Absolute symbols
GPIOBASEA 40010800
Symbol: GPIOBASEA
Definitions
At line 24 in file REG_UTILES.inc
Uses
At line 54 in file FonctionEtape2.asm
Comment: GPIOBASEA used once
GPIOBASEB 40010C00
Symbol: GPIOBASEB
Definitions
At line 25 in file REG_UTILES.inc
Uses
At line 64 in file FonctionEtape2.asm
Comment: GPIOBASEB used once
MaskBlank 00000004
Symbol: MaskBlank
Definitions
At line 37 in file REG_UTILES.inc
Uses
None
Comment: MaskBlank unused
MaskDsprg 00000002
Symbol: MaskDsprg
Definitions
At line 39 in file REG_UTILES.inc
Uses
None
Comment: MaskDsprg unused
MaskGsclk 00000001
Symbol: MaskGsclk
Definitions
At line 40 in file REG_UTILES.inc
Uses
None
Comment: MaskGsclk unused
MaskSclk 00000020
Symbol: MaskSclk
Definitions
At line 38 in file REG_UTILES.inc
Uses
At line 55 in file FonctionEtape2.asm
At line 65 in file FonctionEtape2.asm
MaskSerial_Dots 00000080
Symbol: MaskSerial_Dots
Definitions
At line 34 in file REG_UTILES.inc
Uses
None
Comment: MaskSerial_Dots unused
MaskSerial_In1 00000080
ARM Macro Assembler Page 2 Alphabetic symbol ordering
Absolute symbols
Symbol: MaskSerial_In1
Definitions
At line 33 in file REG_UTILES.inc
Uses
None
Comment: MaskSerial_In1 unused
MaskVprg 00000010
Symbol: MaskVprg
Definitions
At line 35 in file REG_UTILES.inc
Uses
None
Comment: MaskVprg unused
MaskXlat 00000008
Symbol: MaskXlat
Definitions
At line 36 in file REG_UTILES.inc
Uses
None
Comment: MaskXlat unused
OffsetInput 00000008
Symbol: OffsetInput
Definitions
At line 27 in file REG_UTILES.inc
Uses
None
Comment: OffsetInput unused
OffsetOutput 0000000C
Symbol: OffsetOutput
Definitions
At line 28 in file REG_UTILES.inc
Uses
None
Comment: OffsetOutput unused
OffsetReset 00000014
Symbol: OffsetReset
Definitions
At line 30 in file REG_UTILES.inc
Uses
None
Comment: OffsetReset unused
OffsetSet 00000010
Symbol: OffsetSet
Definitions
At line 29 in file REG_UTILES.inc
Uses
None
Comment: OffsetSet unused
SCB_VTOR E000ED08
Symbol: SCB_VTOR
Definitions
At line 43 in file REG_UTILES.inc
ARM Macro Assembler Page 3 Alphabetic symbol ordering
Absolute symbols
Uses
None
Comment: SCB_VTOR unused
TIM1_CNT 40012C24
Symbol: TIM1_CNT
Definitions
At line 45 in file REG_UTILES.inc
Uses
None
Comment: TIM1_CNT unused
TIM1_SR 40012C10
Symbol: TIM1_SR
Definitions
At line 44 in file REG_UTILES.inc
Uses
None
Comment: TIM1_SR unused
TIM4_ARR 4000082C
Symbol: TIM4_ARR
Definitions
At line 46 in file REG_UTILES.inc
Uses
None
Comment: TIM4_ARR unused
TIM4_SR 40000810
Symbol: TIM4_SR
Definitions
At line 47 in file REG_UTILES.inc
Uses
None
Comment: TIM4_SR unused
19 symbols
363 symbols in table

371
Listings/lumiere.lst Normal file
View file

@ -0,0 +1,371 @@
ARM Macro Assembler Page 1
1 00000000 ;*******************************************************
********************
2 00000000 THUMB
3 00000000 REQUIRE8
4 00000000 PRESERVE8
5 00000000
6 00000000 ;*******************************************************
*******************
7 00000000 ; Lumiere.asm
8 00000000 ; Auteur : Yohan Boujon et Simon Paris
9 00000000 ; Date : 16/03/2023
10 00000000 ;*******************************************************
*******************
11 00000000
12 00000000 ;***************IMPORT/EXPORT***************************
*******************
13 00000000
14 00000000
15 00000000
16 00000000 ;*******************************************************
*******************
17 00000000
18 00000000
19 00000000
20 00000000 ;***************CONSTANTES******************************
*******************
21 00000000
22 00000000 include REG_UTILES.inc
1 00000000
2 00000000 ;**************************************
3 00000000 ; Les adresess utiles
4 00000000 ;***************************************
5 00000000
6 00000000
7 00000000 ;**************************************
8 00000000 ; Affectation des bits GPIO
9 00000000 ;***************************************
10 00000000 ; GSLCK..... PA0
11 00000000 ; DSPRG..... PA1
12 00000000 ; BLANK..... PA2
13 00000000 ; XLAT...... PA3
14 00000000 ; VPRG...... PA4
15 00000000 ; SCLK...... PA5
16 00000000 ; SIN1...... PA7
17 00000000 ;Capteur.....PA8
18 00000000
19 00000000 ;LED.........PB10
20 00000000 ;****************************************/
21 00000000
22 00000000
23 00000000
24 00000000 40010800
GPIOBASEA
EQU 0X40010800
25 00000000 40010C00
GPIOBASEB
EQU 0X40010C00
26 00000000
27 00000000 00000008
ARM Macro Assembler Page 2
OffsetInput
EQU 0x08
28 00000000 0000000C
OffsetOutput
EQU 0x0C
29 00000000 00000010
OffsetSet
EQU 0x10
30 00000000 00000014
OffsetReset
EQU 0x14
31 00000000
32 00000000
33 00000000 00000080
MaskSerial_In1
equ 0x80
34 00000000 00000080
MaskSerial_Dots
equ 0x80
35 00000000 00000010
MaskVprg
equ 0x10
36 00000000 00000008
MaskXlat
equ 0x08
37 00000000 00000004
MaskBlank
equ 0x04
38 00000000 00000020
MaskSclk
equ 0x20
39 00000000 00000002
MaskDsprg
equ 0x02
40 00000000 00000001
MaskGsclk
equ 0x01
41 00000000
42 00000000
43 00000000 E000ED08
SCB_VTOR
EQU 0xE000ED08
44 00000000 40012C10
TIM1_SR EQU 0x40012c10
45 00000000 40012C24
TIM1_CNT
EQU 0x40012c24
46 00000000 4000082C
TIM4_ARR
EQU 0x4000082C
47 00000000 40000810
TIM4_SR EQU 0x40000810
48 00000000
49 00000000
50 00000000
51 00000000
52 00000000
53 00000000 END
23 00000000
ARM Macro Assembler Page 3
24 00000000 ;*******************************************************
*******************
25 00000000
26 00000000 ;***************VARIABLES*******************************
*******************
27 00000000 AREA MesDonnees, data, readwrite
28 00000000 ;*******************************************************
*******************
29 00000000
30 00000000 ;***************CODE************************************
*******************
31 00000000 AREA moncode, code, readonly
32 00000000 ;*******************************************************
*******************
33 00000000
34 00000000 END
Command Line: --debug --xref --diag_suppress=9931 --cpu=Cortex-M3 --apcs=interw
ork --depend=.\objects\lumiere.d -o.\objects\lumiere.o -I.\RTE\Device\STM32F107
VC -I.\RTE\_R_el -IC:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Inc
lude -IC:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include --
predefine="__EVAL SETA 1" --predefine="__MICROLIB SETA 1" --predefine="__UVISIO
N_VERSION SETA 534" --predefine="_RTE_ SETA 1" --predefine="STM32F10X_CL SETA 1
" --predefine="_RTE_ SETA 1" --predefine="STM32F10X_CL SETA 1" --list=.\listing
s\lumiere.lst Lumiere.asm
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Relocatable symbols
MesDonnees 00000000
Symbol: MesDonnees
Definitions
At line 27 in file Lumiere.asm
Uses
None
Comment: MesDonnees unused
1 symbol
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Relocatable symbols
END 00000000
Symbol: END
Definitions
At line 34 in file Lumiere.asm
Uses
None
Comment: END unused
moncode 00000000
Symbol: moncode
Definitions
At line 31 in file Lumiere.asm
Uses
None
Comment: moncode unused
2 symbols
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Absolute symbols
GPIOBASEA 40010800
Symbol: GPIOBASEA
Definitions
At line 24 in file REG_UTILES.inc
Uses
None
Comment: GPIOBASEA unused
GPIOBASEB 40010C00
Symbol: GPIOBASEB
Definitions
At line 25 in file REG_UTILES.inc
Uses
None
Comment: GPIOBASEB unused
MaskBlank 00000004
Symbol: MaskBlank
Definitions
At line 37 in file REG_UTILES.inc
Uses
None
Comment: MaskBlank unused
MaskDsprg 00000002
Symbol: MaskDsprg
Definitions
At line 39 in file REG_UTILES.inc
Uses
None
Comment: MaskDsprg unused
MaskGsclk 00000001
Symbol: MaskGsclk
Definitions
At line 40 in file REG_UTILES.inc
Uses
None
Comment: MaskGsclk unused
MaskSclk 00000020
Symbol: MaskSclk
Definitions
At line 38 in file REG_UTILES.inc
Uses
None
Comment: MaskSclk unused
MaskSerial_Dots 00000080
Symbol: MaskSerial_Dots
Definitions
At line 34 in file REG_UTILES.inc
Uses
None
Comment: MaskSerial_Dots unused
MaskSerial_In1 00000080
Symbol: MaskSerial_In1
ARM Macro Assembler Page 2 Alphabetic symbol ordering
Absolute symbols
Definitions
At line 33 in file REG_UTILES.inc
Uses
None
Comment: MaskSerial_In1 unused
MaskVprg 00000010
Symbol: MaskVprg
Definitions
At line 35 in file REG_UTILES.inc
Uses
None
Comment: MaskVprg unused
MaskXlat 00000008
Symbol: MaskXlat
Definitions
At line 36 in file REG_UTILES.inc
Uses
None
Comment: MaskXlat unused
OffsetInput 00000008
Symbol: OffsetInput
Definitions
At line 27 in file REG_UTILES.inc
Uses
None
Comment: OffsetInput unused
OffsetOutput 0000000C
Symbol: OffsetOutput
Definitions
At line 28 in file REG_UTILES.inc
Uses
None
Comment: OffsetOutput unused
OffsetReset 00000014
Symbol: OffsetReset
Definitions
At line 30 in file REG_UTILES.inc
Uses
None
Comment: OffsetReset unused
OffsetSet 00000010
Symbol: OffsetSet
Definitions
At line 29 in file REG_UTILES.inc
Uses
None
Comment: OffsetSet unused
SCB_VTOR E000ED08
Symbol: SCB_VTOR
Definitions
At line 43 in file REG_UTILES.inc
Uses
ARM Macro Assembler Page 3 Alphabetic symbol ordering
Absolute symbols
None
Comment: SCB_VTOR unused
TIM1_CNT 40012C24
Symbol: TIM1_CNT
Definitions
At line 45 in file REG_UTILES.inc
Uses
None
Comment: TIM1_CNT unused
TIM1_SR 40012C10
Symbol: TIM1_SR
Definitions
At line 44 in file REG_UTILES.inc
Uses
None
Comment: TIM1_SR unused
TIM4_ARR 4000082C
Symbol: TIM4_ARR
Definitions
At line 46 in file REG_UTILES.inc
Uses
None
Comment: TIM4_ARR unused
TIM4_SR 40000810
Symbol: TIM4_SR
Definitions
At line 47 in file REG_UTILES.inc
Uses
None
Comment: TIM4_SR unused
19 symbols
357 symbols in table

View file

@ -134,181 +134,95 @@ WEAK]
ARM Macro Assembler Page 3
25 00000000
26 00000000 EXPORT main
27 00000000
28 00000000 ;*******************************************************
************************
29 00000000
30 00000000
31 00000000 ;*******************************************************
************************
32 00000000 AREA mesdonnees, data, readwrite
33 00000000
25 00000000 IMPORT Eteint_LED
26 00000000 IMPORT Allume_LED
27 00000000 IMPORT Inverse_LED
28 00000000
29 00000000 IMPORT Set_SCLK
30 00000000 IMPORT Reset_SCLK
31 00000000 IMPORT DriverGlobal
32 00000000
33 00000000 EXPORT main
34 00000000
35 00000000
36 00000000
37 00000000 ;*******************************************************
35 00000000 ;*******************************************************
************************
38 00000000
39 00000000 AREA moncode, code, readonly
36 00000000
37 00000000
38 00000000 ;*******************************************************
************************
39 00000000 AREA mesdonnees, data, readwrite
40 00000000
41 00000000
42 00000000
43 00000000 ;*******************************************************
43 00000000
44 00000000 ;*******************************************************
************************
44 00000000 ; On eteint la LED
45 00000000 ;*******************************************************
************************
46 00000000 Eteint_LED
PROC
45 00000000
46 00000000 AREA moncode, code, readonly
47 00000000
48 00000000 E92D 1001 PUSH {R12,R0} ;On stocke R12 dans
R0
49 00000004 F8DF C084 LDR R12,=GPIOBASEB ;On recupère l'a
dresse de base
50 00000008 F44F 6580 MOV R5,#(0x01 << 10) ;1 décalé de 1
0 dans R5
51 0000000C F8AC 5014 STRH R5,[R12,#OffsetReset] ;On stock
e la variable R5 à
l'adresse 0x0X40010
C14 (reset)
52 00000010 E8BD 1001 POP {R12,R0} ;On restitue R12 da
ns R0
53 00000014 4770 BX LR ;Retour
54 00000016 ;LDR R5,[R12,#0x0C] ;Valeur à l'adresse de l'output
55 00000016 ;AND R5, R5,#~(0x01 << 10) ;OU LOGIQUE pour calculer la
valeur a mettre dans l'output
56 00000016 ;STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans
l'output
57 00000016 ENDP
58 00000016
59 00000016 ;*******************************************************
48 00000000
49 00000000
50 00000000 ;*******************************************************
************************
60 00000016 ; On allume la LED
61 00000016 ;*******************************************************
51 00000000 ; Procédure principale et point d'entrée du projet
52 00000000 ;*******************************************************
************************
53 00000000 main PROC
54 00000000 ;*******************************************************
************************
62 00000016 Allume_LED
PROC
63 00000016
64 00000016 E92D 1001 PUSH {R12,R0} ;On stocke R12 dans
R0
55 00000000
56 00000000
57 00000000 F7FF FFFE BL Init_Cible ;
58 00000004 ;*******************************************************
************************
59 00000004 ; ETAPE 2
60 00000004 ;*******************************************************
************************
61 00000004 F7FF FFFE BL DriverGlobal ;
62 00000008
63 00000008 ;*******************************************************
************************
64 00000008 ; ETAPE 1
65 00000008 ;*******************************************************
************************
66 00000008 ; MOV R0,#0;
67 00000008 ; MOV R1,#0;
68 00000008 ; MOV R3,#0;
69 00000008 ;Boucle
70 00000008 ; LDR R12,=GPIOBASEA ;On récup l'adresse du GPIOA
71 00000008 ; LDR R0,[R12,#OffsetInput] ;On charge sa valeur avec l
'OffsetInput
72 00000008 ; AND R0, R0, #(0x01 << 8) ;R0 est masqué pour n'avoir
ARM Macro Assembler Page 4
65 0000001A F8DF C070 LDR R12,=GPIOBASEB ;On recupère l'a
dresse de base
66 0000001E F44F 6580 MOV R5,#(0x01 << 10) ;1 décalé de 1
0 dans R5
67 00000022 F8AC 5010 STRH R5,[R12,#OffsetSet] ;On stocke
la variable R5 à l'
adresse 0x0X40010C1
0 (set)
68 00000026 E8BD 1001 POP {R12,R0} ;On restitue R12 da
ns R0
69 0000002A 4770 BX LR ;Retour
70 0000002C ;LDR R5,[R12,#0x0C] ;Valeur à l'adresse de l'output
71 0000002C ;ORR R5, R5,#(0x01 << 10) ;OU LOGIQUE pour calculer la v
aleur a mettre dans l'output
72 0000002C ;STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans
l'output
73 0000002C
74 0000002C ENDP
75 0000002C
76 0000002C ;*******************************************************
que le bit de l'offset input
73 00000008 ; CMP R0, #(0x01 << 8) ;On compare R0 doit etre egal à
1 pour le front montant
74 00000008 ; BNE Is_detect ;On allume
75 00000008 ; MOV R1,R0 ;R1 possède la valeur de R0 avant
76 00000008 ; BL Boucle ;Sinon on boucle
77 00000008 ;
78 00000008 ;Is_detect
79 00000008 ; CMP R1, #(0x01 << 8) ;R1 doit etre egal à 0 pour le
front montant
80 00000008 ; BNE Boucle
81 00000008 ;
82 00000008 ;T_Oui
83 00000008 ; BL Inverse_LED ;On inverse le status de la led gra
ce a R3
84 00000008 ; B Boucle
85 00000008 ;
86 00000008 ;*******************************************************
************************
77 0000002C ; On inverse la LED
78 0000002C ;*******************************************************
************************
79 0000002C Inverse_LED
PROC
80 0000002C E92D 1001 PUSH {R12,R0} ;On stocke R12 dans
R0
81 00000030 F8DF C058 LDR R12,=GPIOBASEB ;On recupère l'a
dresse de base
82 00000034 F44F 6580 MOV R5,#(0x01 << 10) ;1 décalé de 1
0 dans R5
83 00000038 2B00 CMP R3,#0
84 0000003A ;BEQ Allume
85 0000003A ;B Eteint
86 0000003A D104 BNE Eteint
87 0000003C Allume
88 0000003C F8AC 5010 STRH R5,[R12,#OffsetSet] ;On stocke
la variable R5 à l'
adresse 0x0X40010C1
0 (set)
89 00000040 F04F 0301 MOV R3,#1 ;
90 00000044 E004 B Fin ;Retour
91 00000046 Eteint
92 00000046 F8AC 5014 STRH R5,[R12,#OffsetReset] ;On stock
e la variable R5 à
l'adresse 0x0X40010
C14 (reset)
93 0000004A F04F 0300 MOV R3,#0 ;
94 0000004E E7FF B Fin
95 00000050
96 00000050
97 00000050 Fin
98 00000050 E8BD 1001 POP {R12,R0} ;On restitue R12 da
ns R0
99 00000054 4770 BX LR ;Retour
100 00000056
101 00000056
102 00000056 ;*******************************************************
ARM Macro Assembler Page 5
************************
103 00000056 ; Procédure principale et point d'entrée du projet
104 00000056 ;*******************************************************
************************
105 00000056 main PROC
106 00000056 ;*******************************************************
************************
107 00000056
108 00000056
109 00000056 F7FF FFFE BL Init_Cible ;
110 0000005A F04F 0000 MOV R0,#0 ;
111 0000005E F04F 0100 MOV R1,#0 ;
112 00000062 F04F 0300 MOV R3,#0 ;
113 00000066 Boucle
114 00000066 F8DF C028 LDR R12,=GPIOBASEA ;On récup l'adre
sse du GPIOA
115 0000006A F8DC 0008 LDR R0,[R12,#OffsetInput] ;On charg
e sa valeur avec l'
OffsetInput
116 0000006E F400 7080 AND R0, R0, #(0x01 << 8) ;R0 est ma
squé pour n'avoir q
ue le bit de l'offs
et input
117 00000072 F5B0 7F80 CMP R0, #(0x01 << 8)
;On compare R0 à 1
118 00000076 D102 BNE Is_detect ;On allume
119 00000078 4601 MOV R1,R0
120 0000007A F7FF FFF4 BL Boucle ;Sinon on boucle
121 0000007E
122 0000007E Is_detect
123 0000007E F5B1 7F80 CMP R1, #(0x01 << 8)
;On compare R1 à 1
124 00000082 D1F0 BNE Boucle
125 00000084
126 00000084 T_Oui
127 00000084 F7FF FFFE BL Inverse_LED
128 00000088 E7ED B Boucle
129 0000008A
130 0000008A E7FE B . ; boucle inifinie t
87 00000008 E7FE B . ; boucle inifinie t
erminale...
131 0000008C ENDP
132 0000008C
133 0000008C END
40010C00
40010800
88 0000000A ENDP
89 0000000A
90 0000000A END
Command Line: --debug --xref --diag_suppress=9931 --cpu=Cortex-M3 --apcs=interw
ork --depend=.\objects\principale.d -o.\objects\principale.o -I.\RTE\Device\STM
32F103RB -I.\RTE\_Simul_ -IC:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\
@ -327,7 +241,7 @@ mesdonnees 00000000
Symbol: mesdonnees
Definitions
At line 32 in file Principale.asm
At line 39 in file Principale.asm
Uses
None
Comment: mesdonnees unused
@ -338,104 +252,23 @@ Comment: mesdonnees unused
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Relocatable symbols
Allume 0000003C
Symbol: Allume
Definitions
At line 87 in file Principale.asm
Uses
None
Comment: Allume unused
Allume_LED 00000016
Symbol: Allume_LED
Definitions
At line 62 in file Principale.asm
Uses
None
Comment: Allume_LED unused
Boucle 00000066
Symbol: Boucle
Definitions
At line 113 in file Principale.asm
Uses
At line 120 in file Principale.asm
At line 124 in file Principale.asm
At line 128 in file Principale.asm
Eteint 00000046
Symbol: Eteint
Definitions
At line 91 in file Principale.asm
Uses
At line 86 in file Principale.asm
Comment: Eteint used once
Eteint_LED 00000000
Symbol: Eteint_LED
Definitions
At line 46 in file Principale.asm
Uses
None
Comment: Eteint_LED unused
Fin 00000050
Symbol: Fin
Definitions
At line 97 in file Principale.asm
Uses
At line 90 in file Principale.asm
At line 94 in file Principale.asm
Inverse_LED 0000002C
Symbol: Inverse_LED
Definitions
At line 79 in file Principale.asm
Uses
At line 127 in file Principale.asm
Comment: Inverse_LED used once
ARM Macro Assembler Page 2 Alphabetic symbol ordering
Relocatable symbols
Is_detect 0000007E
Symbol: Is_detect
Definitions
At line 122 in file Principale.asm
Uses
At line 118 in file Principale.asm
Comment: Is_detect used once
T_Oui 00000084
Symbol: T_Oui
Definitions
At line 126 in file Principale.asm
Uses
None
Comment: T_Oui unused
main 00000056
main 00000000
Symbol: main
Definitions
At line 105 in file Principale.asm
At line 53 in file Principale.asm
Uses
At line 26 in file Principale.asm
At line 33 in file Principale.asm
Comment: main used once
moncode 00000000
Symbol: moncode
Definitions
At line 39 in file Principale.asm
At line 46 in file Principale.asm
Uses
None
Comment: moncode unused
11 symbols
2 symbols
@ -448,18 +281,16 @@ Symbol: GPIOBASEA
Definitions
At line 24 in file REG_UTILES.inc
Uses
At line 114 in file Principale.asm
Comment: GPIOBASEA used once
None
Comment: GPIOBASEA unused
GPIOBASEB 40010C00
Symbol: GPIOBASEB
Definitions
At line 25 in file REG_UTILES.inc
Uses
At line 49 in file Principale.asm
At line 65 in file Principale.asm
At line 81 in file Principale.asm
None
Comment: GPIOBASEB unused
MaskBlank 00000004
Symbol: MaskBlank
@ -502,13 +333,13 @@ Symbol: MaskSerial_Dots
Comment: MaskSerial_Dots unused
MaskSerial_In1 00000080
Symbol: MaskSerial_In1
ARM Macro Assembler Page 2 Alphabetic symbol ordering
Absolute symbols
Symbol: MaskSerial_In1
Definitions
At line 33 in file REG_UTILES.inc
Uses
@ -536,8 +367,8 @@ Symbol: OffsetInput
Definitions
At line 27 in file REG_UTILES.inc
Uses
At line 115 in file Principale.asm
Comment: OffsetInput used once
None
Comment: OffsetInput unused
OffsetOutput 0000000C
Symbol: OffsetOutput
@ -552,30 +383,28 @@ Symbol: OffsetReset
Definitions
At line 30 in file REG_UTILES.inc
Uses
At line 51 in file Principale.asm
At line 92 in file Principale.asm
None
Comment: OffsetReset unused
OffsetSet 00000010
Symbol: OffsetSet
Definitions
At line 29 in file REG_UTILES.inc
Uses
At line 67 in file Principale.asm
At line 88 in file Principale.asm
None
Comment: OffsetSet unused
SCB_VTOR E000ED08
Symbol: SCB_VTOR
Definitions
At line 43 in file REG_UTILES.inc
Uses
ARM Macro Assembler Page 3 Alphabetic symbol ordering
Absolute symbols
Symbol: SCB_VTOR
Definitions
At line 43 in file REG_UTILES.inc
Uses
None
Comment: SCB_VTOR unused
TIM1_CNT 40012C24
@ -617,21 +446,75 @@ Comment: TIM4_SR unused
ARM Macro Assembler Page 1 Alphabetic symbol ordering
External symbols
Allume_LED 00000000
Symbol: Allume_LED
Definitions
At line 26 in file Principale.asm
Uses
None
Comment: Allume_LED unused
DriverGlobal 00000000
Symbol: DriverGlobal
Definitions
At line 31 in file Principale.asm
Uses
At line 61 in file Principale.asm
Comment: DriverGlobal used once
Eteint_LED 00000000
Symbol: Eteint_LED
Definitions
At line 25 in file Principale.asm
Uses
None
Comment: Eteint_LED unused
Init_Cible 00000000
Symbol: Init_Cible
Definitions
At line 23 in file Principale.asm
Uses
At line 109 in file Principale.asm
At line 57 in file Principale.asm
Comment: Init_Cible used once
Inverse_LED 00000000
Symbol: Inverse_LED
Definitions
At line 27 in file Principale.asm
Uses
None
Comment: Inverse_LED unused
Reset_SCLK 00000000
Symbol: Reset_SCLK
Definitions
At line 30 in file Principale.asm
Uses
None
Comment: Reset_SCLK unused
Set_SCLK 00000000
Symbol: Set_SCLK
Definitions
At line 29 in file Principale.asm
Uses
None
Comment: Set_SCLK unused
|Lib$$Request$$armlib| 00000000
Symbol: |Lib$$Request$$armlib|
ARM Macro Assembler Page 2 Alphabetic symbol ordering
External symbols
Definitions
At line 16 in file Principale.asm
Uses
None
Comment: |Lib$$Request$$armlib| unused
2 symbols
370 symbols in table
8 symbols
365 symbols in table

34
Lumiere.asm Normal file
View file

@ -0,0 +1,34 @@
;***************************************************************************
THUMB
REQUIRE8
PRESERVE8
;**************************************************************************
; Lumiere.asm
; Auteur : Yohan Boujon et Simon Paris
; Date : 16/03/2023
;**************************************************************************
;***************IMPORT/EXPORT**********************************************
;**************************************************************************
;***************CONSTANTES*************************************************
include REG_UTILES.inc
;**************************************************************************
;***************VARIABLES**************************************************
AREA MesDonnees, data, readwrite
;**************************************************************************
;***************CODE*******************************************************
AREA moncode, code, readonly
;**************************************************************************
END

23
Objects/Etape_2_Réel.dep Normal file
View file

@ -0,0 +1,23 @@
Dependencies for Project 'Etape_2', Target 'Réel': (DO NOT MODIFY !)
CompilerVersion: 5060960::V5.06 update 7 (build 960)::.\ARMCC
F (.\Principale.asm)(0x6412F558)(--cpu Cortex-M3 --pd "__EVAL SETA 1" -g --apcs=interwork --pd "__MICROLIB SETA 1" -I.\RTE\Device\STM32F107VC -I.\RTE\_R_el -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 --pd "__UVISION_VERSION SETA 534" --pd "_RTE_ SETA 1" --pd "STM32F10X_CL SETA 1" --pd "_RTE_ SETA 1" --pd "STM32F10X_CL SETA 1" --list .\listings\principale.lst --xref -o .\objects\principale.o --depend .\objects\principale.d)
I (REG_UTILES.inc)(0x6412D4E6)
F (.\FonctionEtape.asm)(0x6412F33B)(--cpu Cortex-M3 --pd "__EVAL SETA 1" -g --apcs=interwork --pd "__MICROLIB SETA 1" -I.\RTE\Device\STM32F107VC -I.\RTE\_R_el -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 --pd "__UVISION_VERSION SETA 534" --pd "_RTE_ SETA 1" --pd "STM32F10X_CL SETA 1" --pd "_RTE_ SETA 1" --pd "STM32F10X_CL SETA 1" --list .\listings\fonctionetape.lst --xref -o .\objects\fonctionetape.o --depend .\objects\fonctionetape.d)
I (REG_UTILES.inc)(0x6412D4E6)
F (.\FonctionEtape2.asm)(0x6412F725)(--cpu Cortex-M3 --pd "__EVAL SETA 1" -g --apcs=interwork --pd "__MICROLIB SETA 1" -I.\RTE\Device\STM32F107VC -I.\RTE\_R_el -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 --pd "__UVISION_VERSION SETA 534" --pd "_RTE_ SETA 1" --pd "STM32F10X_CL SETA 1" --pd "_RTE_ SETA 1" --pd "STM32F10X_CL SETA 1" --list .\listings\fonctionetape2.lst --xref -o .\objects\fonctionetape2.o --depend .\objects\fonctionetape2.d)
I (REG_UTILES.inc)(0x6412D4E6)
F (.\Matos.lib)(0x6412D4E6)()
F (RTE\Device\STM32F103RB\RTE_Device.h)(0x6412D4E6)()
F (RTE\Device\STM32F103RB\startup_stm32f10x_md.s)(0x6412D4E6)()
F (RTE\Device\STM32F103RB\system_stm32f10x.c)(0x6412D4E6)()
F (RTE\Device\STM32F107VC\RTE_Device.h)(0x6412D4E6)()
F (RTE\Device\STM32F107VC\startup_stm32f10x_cl.s)(0x6412D4E6)(--cpu Cortex-M3 --pd "__EVAL SETA 1" -g --apcs=interwork --pd "__MICROLIB SETA 1" -I.\RTE\Device\STM32F107VC -I.\RTE\_R_el -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 --pd "__UVISION_VERSION SETA 534" --pd "_RTE_ SETA 1" --pd "STM32F10X_CL SETA 1" --pd "_RTE_ SETA 1" --pd "STM32F10X_CL SETA 1" --list .\listings\startup_stm32f10x_cl.lst --xref -o .\objects\startup_stm32f10x_cl.o --depend .\objects\startup_stm32f10x_cl.d)
F (RTE\Device\STM32F107VC\system_stm32f10x.c)(0x6412D4E6)(--c99 -c --cpu Cortex-M3 -D__EVAL -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\pilotes\Include -I.\RTE\Device\STM32F107VC -I.\RTE\_R_el -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 -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F10X_CL -D_RTE_ -DSTM32F10X_CL -o .\objects\system_stm32f10x_1.o --omf_browse .\objects\system_stm32f10x_1.crf --depend .\objects\system_stm32f10x_1.d)
I (C:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include\stm32f10x.h)(0x58258CCC)
I (.\RTE\_R_el\RTE_Components.h)(0x6412ECB1)
I (C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\core_cm3.h)(0x5E8F2582)
I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x5E8E9122)
I (C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_version.h)(0x5E8F2582)
I (C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_compiler.h)(0x5E835B22)
I (C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_armcc.h)(0x5E8F2582)
I (C:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include\system_stm32f10x.h)(0x58258CCC)

View file

@ -0,0 +1,23 @@
Dependencies for Project 'Etape_2', Target 'Simulé': (DO NOT MODIFY !)
CompilerVersion: 5060960::V5.06 update 7 (build 960)::.\ARMCC
F (.\Principale.asm)(0x6412F558)(--cpu Cortex-M3 --pd "__EVAL SETA 1" -g --apcs=interwork --pd "__MICROLIB SETA 1" -I.\RTE\Device\STM32F103RB -I.\RTE\_Simul_ -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 --pd "__UVISION_VERSION SETA 534" --pd "_RTE_ SETA 1" --pd "STM32F10X_MD SETA 1" --pd "_RTE_ SETA 1" --pd "STM32F10X_MD SETA 1" --list .\listings\principale.lst --xref -o .\objects\principale.o --depend .\objects\principale.d)
I (REG_UTILES.inc)(0x6412D4E6)
F (.\FonctionEtape.asm)(0x6412F33B)(--cpu Cortex-M3 --pd "__EVAL SETA 1" -g --apcs=interwork --pd "__MICROLIB SETA 1" -I.\RTE\Device\STM32F103RB -I.\RTE\_Simul_ -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 --pd "__UVISION_VERSION SETA 534" --pd "_RTE_ SETA 1" --pd "STM32F10X_MD SETA 1" --pd "_RTE_ SETA 1" --pd "STM32F10X_MD SETA 1" --list .\listings\fonctionetape.lst --xref -o .\objects\fonctionetape.o --depend .\objects\fonctionetape.d)
I (REG_UTILES.inc)(0x6412D4E6)
F (.\FonctionEtape2.asm)(0x6412F95B)(--cpu Cortex-M3 --pd "__EVAL SETA 1" -g --apcs=interwork --pd "__MICROLIB SETA 1" -I.\RTE\Device\STM32F103RB -I.\RTE\_Simul_ -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 --pd "__UVISION_VERSION SETA 534" --pd "_RTE_ SETA 1" --pd "STM32F10X_MD SETA 1" --pd "_RTE_ SETA 1" --pd "STM32F10X_MD SETA 1" --list .\listings\fonctionetape2.lst --xref -o .\objects\fonctionetape2.o --depend .\objects\fonctionetape2.d)
I (REG_UTILES.inc)(0x6412D4E6)
F (.\Matos.lib)(0x6412D4E6)()
F (RTE\Device\STM32F103RB\RTE_Device.h)(0x6412D4E6)()
F (RTE\Device\STM32F103RB\startup_stm32f10x_md.s)(0x6412D4E6)(--cpu Cortex-M3 --pd "__EVAL SETA 1" -g --apcs=interwork --pd "__MICROLIB SETA 1" -I.\RTE\Device\STM32F103RB -I.\RTE\_Simul_ -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 --pd "__UVISION_VERSION SETA 534" --pd "_RTE_ SETA 1" --pd "STM32F10X_MD SETA 1" --pd "_RTE_ SETA 1" --pd "STM32F10X_MD SETA 1" --list .\listings\startup_stm32f10x_md.lst --xref -o .\objects\startup_stm32f10x_md.o --depend .\objects\startup_stm32f10x_md.d)
F (RTE\Device\STM32F103RB\system_stm32f10x.c)(0x6412D4E6)(--c99 -c --cpu Cortex-M3 -D__EVAL -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\pilotes\Include -I.\RTE\Device\STM32F103RB -I.\RTE\_Simul_ -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 -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DSTM32F10X_MD -o .\objects\system_stm32f10x.o --omf_browse .\objects\system_stm32f10x.crf --depend .\objects\system_stm32f10x.d)
I (C:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include\stm32f10x.h)(0x58258CCC)
I (.\RTE\_Simul_\RTE_Components.h)(0x6412EA84)
I (C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\core_cm3.h)(0x5E8F2582)
I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x5E8E9122)
I (C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_version.h)(0x5E8F2582)
I (C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_compiler.h)(0x5E835B22)
I (C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_armcc.h)(0x5E8F2582)
I (C:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include\system_stm32f10x.h)(0x58258CCC)
F (RTE\Device\STM32F107VC\RTE_Device.h)(0x6412D4E6)()
F (RTE\Device\STM32F107VC\startup_stm32f10x_cl.s)(0x6412D4E6)()
F (RTE\Device\STM32F107VC\system_stm32f10x.c)(0x6412D4E6)()

Binary file not shown.

View file

@ -21,21 +21,23 @@ Target DLL: UL2CM3.DLL V1.163.9.0
Dialog DLL: TCM.DLL V1.48.0.0
<h2>Project:</h2>
U:\Windows\Bureau\roue_assembler\Etape_1.uvprojx
U:\Windows\Bureau\roue_assembler\Etape_2.uvprojx
Project File Date: 03/16/2023
<h2>Output:</h2>
*** Using Compiler 'V5.06 update 7 (build 960)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Rebuild target 'Réel'
Note: source file 'RTE\Device\STM32F107VC\system_stm32f10x.c' - object file renamed from '.\Objects\system_stm32f10x.o' to '.\Objects\system_stm32f10x_1.o'.
assembling FonctionEtape.asm...
assembling Principale.asm...
Principale.asm(98): warning: A1488W: PROC/FUNC at line 79 in 'Principale.asm' without matching ENDP/ENDFUNC
assembling FonctionEtape.asm...
FonctionEtape.asm(119): warning: A1581W: Added 2 bytes of padding at address 0x56
assembling startup_stm32f10x_cl.s...
assembling FonctionEtape2.asm...
FonctionEtape2.asm(84): warning: A1581W: Added 2 bytes of padding at address 0x76
compiling system_stm32f10x.c...
linking...
Program Size: Code=4828 RO-data=368 RW-data=144 ZI-data=1024
".\Objects\Reel_Etape0.axf" - 0 Error(s), 1 Warning(s).
Program Size: Code=4916 RO-data=368 RW-data=144 ZI-data=1024
".\Objects\Reel_Etape0.axf" - 0 Error(s), 2 Warning(s).
<h2>Software Packages used:</h2>
@ -63,8 +65,8 @@ Package Vendor: Keil
* Component: Keil::Device:Startup:1.0.0
Source file: Device\Source\system_stm32f10x.c
Source file: Device\Source\ARM\startup_stm32f10x_cl.s
Include file: RTE_Driver\Config\RTE_Device.h
Source file: Device\Source\ARM\startup_stm32f10x_cl.s
Source file: Device\Source\ARM\STM32F1xx_OPT.s
Build Time Elapsed: 00:00:01
</pre>

View file

@ -3,7 +3,7 @@
<title>Static Call Graph - [.\Objects\Reel_Etape0.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\Objects\Reel_Etape0.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060960: Last Updated: Thu Mar 16 10:38:37 2023
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060960: Last Updated: Thu Mar 16 12:02:35 2023
<BR><P>
<H3>Maximum Stack Usage = 168 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
@ -108,7 +108,7 @@ Global Symbols
<P><STRONG><a name="[49]"></a>__main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_cl.o(.text)
</UL>
<P><STRONG><a name="[6f]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
<P><STRONG><a name="[70]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
<P><STRONG><a name="[4b]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
<BR><BR>[Calls]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
@ -118,17 +118,17 @@ Global Symbols
<BR><BR>[Called By]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
</UL>
<P><STRONG><a name="[70]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
<P><STRONG><a name="[71]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
<P><STRONG><a name="[71]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
<P><STRONG><a name="[72]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
<P><STRONG><a name="[72]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
<P><STRONG><a name="[73]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
<P><STRONG><a name="[73]"></a>__rt_lib_shutdown_fini</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry12b.o(.ARM.Collect$$$$0000000E))
<P><STRONG><a name="[74]"></a>__rt_lib_shutdown_fini</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry12b.o(.ARM.Collect$$$$0000000E))
<P><STRONG><a name="[74]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000F))
<P><STRONG><a name="[75]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000F))
<P><STRONG><a name="[75]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$00000011))
<P><STRONG><a name="[76]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$00000011))
<P><STRONG><a name="[0]"></a>Reset_Handler</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f10x_cl.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_cl.o(RESET)
@ -419,7 +419,7 @@ Global Symbols
<LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Timer1
</UL>
<P><STRONG><a name="[76]"></a>__aeabi_cdcmpeq</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)
<P><STRONG><a name="[77]"></a>__aeabi_cdcmpeq</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)
<P><STRONG><a name="[69]"></a>__aeabi_cdcmple</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, cdcmple.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Timer1
@ -438,7 +438,7 @@ Global Symbols
<LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Timer1
</UL>
<P><STRONG><a name="[77]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
<P><STRONG><a name="[78]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
<P><STRONG><a name="[4e]"></a>_float_round</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, fepilogue.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_fdiv
@ -473,19 +473,19 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_main_scatterload
</UL>
<P><STRONG><a name="[78]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
<P><STRONG><a name="[79]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
<P><STRONG><a name="[55]"></a>__aeabi_llsl</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
</UL>
<P><STRONG><a name="[79]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
<P><STRONG><a name="[7a]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
<P><STRONG><a name="[56]"></a>__aeabi_llsr</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
</UL>
<P><STRONG><a name="[7a]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
<P><STRONG><a name="[7b]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
<P><STRONG><a name="[4a]"></a>Anim</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, fonctiontimer.o(i.Anim))
<BR>[Address Reference Count : 1]<UL><LI> initialisation.o(i.Init_Cible)
@ -642,20 +642,38 @@ Global Symbols
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_cl.o(RESET)
</UL>
<P><STRONG><a name="[7b]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
<P><STRONG><a name="[7c]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
<P><STRONG><a name="[7c]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
<P><STRONG><a name="[7d]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
<P><STRONG><a name="[7d]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
<P><STRONG><a name="[7e]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
<P><STRONG><a name="[47]"></a>main</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, principale.o(moncode))
<P><STRONG><a name="[47]"></a>main</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, principale.o(moncode))
<BR><BR>[Stack]<UL><LI>Max Depth = 168<LI>Call Chain = main &rArr; Init_Cible &rArr; Init_Timer1 &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Cible
<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Inverse_LED
<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DriverGlobal
</UL>
<BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B)
</UL>
<P><STRONG><a name="[7f]"></a>Eteint_LED</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, fonctionetape.o(moncode), UNUSED)
<P><STRONG><a name="[80]"></a>Allume_LED</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, fonctionetape.o(moncode), UNUSED)
<P><STRONG><a name="[81]"></a>Inverse_LED</STRONG> (Thumb, 42 bytes, Stack size 0 bytes, fonctionetape.o(moncode), UNUSED)
<P><STRONG><a name="[6f]"></a>Set_SCLK</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, fonctionetape2.o(moncode))
<BR><BR>[Called By]<UL><LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DriverGlobal
</UL>
<P><STRONG><a name="[82]"></a>Reset_SCLK</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, fonctionetape2.o(moncode), UNUSED)
<P><STRONG><a name="[6e]"></a>DriverGlobal</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, fonctionetape2.o(moncode))
<BR><BR>[Calls]<UL><LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set_SCLK
</UL>
<BR>[Called By]<UL><LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[5f]"></a>Envoie192Boucle</STRONG> (Thumb, 108 bytes, Stack size 0 bytes, foncasm.o(moncode))
<BR><BR>[Called By]<UL><LI><a href="#[28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM4_IRQHandler
<LI><a href="#[23]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM1_UP_IRQHandler
@ -669,10 +687,6 @@ Global Symbols
<H3>
Local Symbols
</H3>
<P><STRONG><a name="[6e]"></a>Inverse_LED</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, principale.o(moncode))
<BR><BR>[Called By]<UL><LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[6c]"></a>SetSysClock</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, system_stm32f10x_1.o(i.SetSysClock))
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = SetSysClock &rArr; SetSysClockTo72
</UL>

View file

@ -1,6 +1,7 @@
--cpu Cortex-M3
".\objects\principale.o"
".\objects\fonctionetape.o"
".\objects\fonctionetape2.o"
".\Matos.lib"
".\objects\startup_stm32f10x_cl.o"
".\objects\system_stm32f10x_1.o"

Binary file not shown.

View file

@ -21,20 +21,22 @@ Target DLL: UL2CM3.DLL V1.163.9.0
Dialog DLL: TCM.DLL V1.48.0.0
<h2>Project:</h2>
U:\Windows\Bureau\roue_assembler\Etape_1.uvprojx
U:\Windows\Bureau\roue_assembler\Etape_2.uvprojx
Project File Date: 03/16/2023
<h2>Output:</h2>
*** Using Compiler 'V5.06 update 7 (build 960)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Rebuild target 'Simulé'
assembling FonctionEtape.asm...
assembling Principale.asm...
Principale.asm(105): warning: A1488W: PROC/FUNC at line 79 in 'Principale.asm' without matching ENDP/ENDFUNC
assembling FonctionEtape.asm...
FonctionEtape.asm(119): warning: A1581W: Added 2 bytes of padding at address 0x56
assembling FonctionEtape2.asm...
FonctionEtape2.asm(93): warning: A1581W: Added 2 bytes of padding at address 0x46
assembling startup_stm32f10x_md.s...
compiling system_stm32f10x.c...
linking...
Program Size: Code=4760 RO-data=268 RW-data=144 ZI-data=1024
".\Objects\Simu_Etape0.axf" - 0 Error(s), 1 Warning(s).
Program Size: Code=4800 RO-data=268 RW-data=168 ZI-data=1024
".\Objects\Simu_Etape0.axf" - 0 Error(s), 2 Warning(s).
<h2>Software Packages used:</h2>
@ -62,10 +64,10 @@ Package Vendor: Keil
* Component: Keil::Device:Startup:1.0.0
Source file: Device\Source\system_stm32f10x.c
Source file: Device\Source\ARM\startup_stm32f10x_md.s
Include file: RTE_Driver\Config\RTE_Device.h
Source file: Device\Source\ARM\STM32F1xx_OPT.s
Build Time Elapsed: 00:00:01
Source file: Device\Source\ARM\startup_stm32f10x_md.s
Build Time Elapsed: 00:00:02
</pre>
</body>
</html>

View file

@ -3,7 +3,7 @@
<title>Static Call Graph - [.\Objects\Simu_Etape0.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\Objects\Simu_Etape0.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060960: Last Updated: Thu Mar 16 11:00:44 2023
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060960: Last Updated: Thu Mar 16 12:11:26 2023
<BR><P>
<H3>Maximum Stack Usage = 168 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
@ -90,7 +90,7 @@ Global Symbols
<P><STRONG><a name="[37]"></a>__main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(.text)
</UL>
<P><STRONG><a name="[5d]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
<P><STRONG><a name="[5e]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
<P><STRONG><a name="[39]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
<BR><BR>[Calls]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
@ -100,17 +100,17 @@ Global Symbols
<BR><BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
</UL>
<P><STRONG><a name="[5e]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
<P><STRONG><a name="[5f]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
<P><STRONG><a name="[5f]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
<P><STRONG><a name="[60]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
<P><STRONG><a name="[60]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
<P><STRONG><a name="[61]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
<P><STRONG><a name="[61]"></a>__rt_lib_shutdown_fini</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry12b.o(.ARM.Collect$$$$0000000E))
<P><STRONG><a name="[62]"></a>__rt_lib_shutdown_fini</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry12b.o(.ARM.Collect$$$$0000000E))
<P><STRONG><a name="[62]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000F))
<P><STRONG><a name="[63]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000F))
<P><STRONG><a name="[63]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$00000011))
<P><STRONG><a name="[64]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$00000011))
<P><STRONG><a name="[0]"></a>Reset_Handler</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
@ -347,7 +347,7 @@ Global Symbols
<LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Timer1
</UL>
<P><STRONG><a name="[64]"></a>__aeabi_cdcmpeq</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)
<P><STRONG><a name="[65]"></a>__aeabi_cdcmpeq</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)
<P><STRONG><a name="[57]"></a>__aeabi_cdcmple</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, cdcmple.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Timer1
@ -366,7 +366,7 @@ Global Symbols
<LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Timer1
</UL>
<P><STRONG><a name="[65]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
<P><STRONG><a name="[66]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
<P><STRONG><a name="[3c]"></a>_float_round</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, fepilogue.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_fdiv
@ -401,19 +401,19 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_main_scatterload
</UL>
<P><STRONG><a name="[66]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
<P><STRONG><a name="[67]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
<P><STRONG><a name="[43]"></a>__aeabi_llsl</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
</UL>
<P><STRONG><a name="[67]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
<P><STRONG><a name="[68]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
<P><STRONG><a name="[44]"></a>__aeabi_llsr</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
</UL>
<P><STRONG><a name="[68]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
<P><STRONG><a name="[69]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
<P><STRONG><a name="[38]"></a>Anim</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, fonctiontimer.o(i.Anim))
<BR>[Address Reference Count : 1]<UL><LI> initialisation.o(i.Init_Cible)
@ -570,20 +570,38 @@ Global Symbols
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[69]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
<P><STRONG><a name="[6a]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
<P><STRONG><a name="[6a]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
<P><STRONG><a name="[6b]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
<P><STRONG><a name="[6b]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
<P><STRONG><a name="[6c]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
<P><STRONG><a name="[35]"></a>main</STRONG> (Thumb, 54 bytes, Stack size 0 bytes, principale.o(moncode))
<P><STRONG><a name="[35]"></a>main</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, principale.o(moncode))
<BR><BR>[Stack]<UL><LI>Max Depth = 168<LI>Call Chain = main &rArr; Init_Cible &rArr; Init_Timer1 &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Cible
<LI><a href="#[5c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Inverse_LED
<LI><a href="#[5c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DriverGlobal
</UL>
<BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B)
</UL>
<P><STRONG><a name="[6d]"></a>Eteint_LED</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, fonctionetape.o(moncode), UNUSED)
<P><STRONG><a name="[6e]"></a>Allume_LED</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, fonctionetape.o(moncode), UNUSED)
<P><STRONG><a name="[6f]"></a>Inverse_LED</STRONG> (Thumb, 42 bytes, Stack size 0 bytes, fonctionetape.o(moncode), UNUSED)
<P><STRONG><a name="[5d]"></a>Set_SCLK</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, fonctionetape2.o(moncode))
<BR><BR>[Called By]<UL><LI><a href="#[5c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DriverGlobal
</UL>
<P><STRONG><a name="[70]"></a>Reset_SCLK</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, fonctionetape2.o(moncode), UNUSED)
<P><STRONG><a name="[5c]"></a>DriverGlobal</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, fonctionetape2.o(moncode))
<BR><BR>[Calls]<UL><LI><a href="#[5d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set_SCLK
</UL>
<BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[4d]"></a>Envoie192Boucle</STRONG> (Thumb, 108 bytes, Stack size 0 bytes, foncasm.o(moncode))
<BR><BR>[Called By]<UL><LI><a href="#[28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM4_IRQHandler
<LI><a href="#[23]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM1_UP_IRQHandler
@ -597,10 +615,6 @@ Global Symbols
<H3>
Local Symbols
</H3>
<P><STRONG><a name="[5c]"></a>Inverse_LED</STRONG> (Thumb, 42 bytes, Stack size 0 bytes, principale.o(moncode))
<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[5a]"></a>SetSysClock</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, system_stm32f10x.o(i.SetSysClock))
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = SetSysClock &rArr; SetSysClockTo72
</UL>

View file

@ -1,6 +1,7 @@
--cpu Cortex-M3
".\objects\principale.o"
".\objects\fonctionetape.o"
".\objects\fonctionetape2.o"
".\Matos.lib"
".\objects\startup_stm32f10x_md.o"
".\objects\system_stm32f10x.o"

Binary file not shown.

2
Objects/fonctionetape2.d Normal file
View file

@ -0,0 +1,2 @@
.\objects\fonctionetape2.o: FonctionEtape2.asm
.\objects\fonctionetape2.o: REG_UTILES.inc

BIN
Objects/fonctionetape2.o Normal file

Binary file not shown.

2
Objects/lumiere.d Normal file
View file

@ -0,0 +1,2 @@
.\objects\lumiere.o: Lumiere.asm
.\objects\lumiere.o: REG_UTILES.inc

BIN
Objects/lumiere.o Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -21,7 +21,14 @@
; IMPORT/EXPORT de procédure
IMPORT Init_Cible
IMPORT Eteint_LED
IMPORT Allume_LED
IMPORT Inverse_LED
IMPORT Set_SCLK
IMPORT Reset_SCLK
IMPORT DriverGlobal
EXPORT main
@ -40,93 +47,43 @@
;*******************************************************************************
; On eteint la LED
;*******************************************************************************
Eteint_LED PROC
PUSH {R12,R0} ;On stocke R12 dans R0
LDR R12,=GPIOBASEB ;On recupère l'adresse de base
MOV R5,#(0x01 << 10) ;1 décalé de 10 dans R5
STRH R5,[R12,#OffsetReset] ;On stocke la variable R5 à l'adresse 0x0X40010C14 (reset)
POP {R12,R0} ;On restitue R12 dans R0
BX LR ;Retour
;LDR R5,[R12,#0x0C] ;Valeur à l'adresse de l'output
;AND R5, R5,#~(0x01 << 10) ;OU LOGIQUE pour calculer la valeur a mettre dans l'output
;STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans l'output
ENDP
;*******************************************************************************
; On allume la LED
;*******************************************************************************
Allume_LED PROC
PUSH {R12,R0} ;On stocke R12 dans R0
LDR R12,=GPIOBASEB ;On recupère l'adresse de base
MOV R5,#(0x01 << 10) ;1 décalé de 10 dans R5
STRH R5,[R12,#OffsetSet] ;On stocke la variable R5 à l'adresse 0x0X40010C10 (set)
POP {R12,R0} ;On restitue R12 dans R0
BX LR ;Retour
;LDR R5,[R12,#0x0C] ;Valeur à l'adresse de l'output
;ORR R5, R5,#(0x01 << 10) ;OU LOGIQUE pour calculer la valeur a mettre dans l'output
;STRH R5,[R12,#0x0C] ;Etat du port B (R5) stocké dans l'output
ENDP
;*******************************************************************************
; On inverse la LED (besoin de R3)
;*******************************************************************************
Inverse_LED PROC
PUSH {R12,R0} ;On stocke R12 dans R0
LDR R12,=GPIOBASEB ;On recupère l'adresse de base
MOV R5,#(0x01 << 10) ;1 décalé de 10 dans R5
CMP R3,#0 ;Si R3=0 (default) alors on allume, sinon on eteint
;BEQ Allume
;B Eteint
BNE Eteint
Allume
STRH R5,[R12,#OffsetSet] ;On stocke la variable R5 à l'adresse 0x0X40010C10 (set)
MOV R3,#1; ;On remet la variable à 1
B Fin ;Retour
Eteint
STRH R5,[R12,#OffsetReset] ;On stocke la variable R5 à l'adresse 0x0X40010C14 (reset)
MOV R3,#0; ;On remet la variable à 0
B Fin
Fin
POP {R12,R0} ;On restitue R12 dans R0
BX LR ;Retour
;*******************************************************************************
; Procédure principale et point d'entrée du projet
;*******************************************************************************
;*******************************************************************************
main PROC
;*******************************************************************************
BL Init_Cible;
MOV R0,#0;
MOV R1,#0;
MOV R3,#0;
Boucle
LDR R12,=GPIOBASEA ;On récup l'adresse du GPIOA
LDR R0,[R12,#OffsetInput] ;On charge sa valeur avec l'OffsetInput
AND R0, R0, #(0x01 << 8) ;R0 est masqué pour n'avoir que le bit de l'offset input
CMP R0, #(0x01 << 8) ;On compare R0 doit etre egal à 1 pour le front montant
BNE Is_detect ;On allume
MOV R1,R0 ;R1 possède la valeur de R0 avant
BL Boucle ;Sinon on boucle
Is_detect
CMP R1, #(0x01 << 8) ;R1 doit etre egal à 0 pour le front montant
BNE Boucle
T_Oui
BL Inverse_LED ;On inverse le status de la led grace a R3
B Boucle
;*******************************************************************************
; ETAPE 2
;*******************************************************************************
BL DriverGlobal;
;*******************************************************************************
; ETAPE 1
;*******************************************************************************
; MOV R0,#0;
; MOV R1,#0;
; MOV R3,#0;
;Boucle
; LDR R12,=GPIOBASEA ;On récup l'adresse du GPIOA
; LDR R0,[R12,#OffsetInput] ;On charge sa valeur avec l'OffsetInput
; AND R0, R0, #(0x01 << 8) ;R0 est masqué pour n'avoir que le bit de l'offset input
; CMP R0, #(0x01 << 8) ;On compare R0 doit etre egal à 1 pour le front montant
; BNE Is_detect ;On allume
; MOV R1,R0 ;R1 possède la valeur de R0 avant
; BL Boucle ;Sinon on boucle
;
;Is_detect
; CMP R1, #(0x01 << 8) ;R1 doit etre egal à 0 pour le front montant
; BNE Boucle
;
;T_Oui
; BL Inverse_LED ;On inverse le status de la led grace a R3
; B Boucle
;
;*******************************************************************************
B . ; boucle inifinie terminale...
ENDP

View file

@ -3,7 +3,7 @@
* Auto generated Run-Time-Environment Configuration File
* *** Do not modify ! ***
*
* Project: 'Etape_1'
* Project: 'Etape_2'
* Target: 'Réel'
*/

View file

@ -3,7 +3,7 @@
* Auto generated Run-Time-Environment Configuration File
* *** Do not modify ! ***
*
* Project: 'Etape_1'
* Project: 'Etape_2'
* Target: 'Simulé'
*/