diff --git a/TP6_ACCELEROMETRE/.cproject b/TP6_ACCELEROMETRE/.cproject
index 3d68719..187c485 100644
--- a/TP6_ACCELEROMETRE/.cproject
+++ b/TP6_ACCELEROMETRE/.cproject
@@ -22,7 +22,7 @@
-
+
@@ -100,7 +100,7 @@
-
+
diff --git a/TP6_ACCELEROMETRE/Core/Src/main.c b/TP6_ACCELEROMETRE/Core/Src/main.c
index ce56f6f..66e5288 100644
--- a/TP6_ACCELEROMETRE/Core/Src/main.c
+++ b/TP6_ACCELEROMETRE/Core/Src/main.c
@@ -96,7 +96,7 @@ int main(void)
uint8_t adress[1] = {0x0F};
uint8_t rData[1];
*/
- uint8_t adresse[1] = {0x2D} ;
+ uint8_t adresse[1] = {0x10} ;
uint8_t rData[1];
uint8_t wData[1];
wData[0] = (1<<7);
@@ -104,6 +104,10 @@ int main(void)
memcpy(data, adresse, 1);
memcpy(data+1, wData, 1);
+ HAL_I2C_Master_Transmit(&hi2c1, 0xD6, data, 2, 100);
+ HAL_Delay(100);
+ adresse[0] = 0x2D;
+
/* USER CODE END 2 */
diff --git a/TP6_ACCELEROMETRE/Debug/Core/Src/main.cyclo b/TP6_ACCELEROMETRE/Debug/Core/Src/main.cyclo
index a774d63..aacf163 100644
--- a/TP6_ACCELEROMETRE/Debug/Core/Src/main.cyclo
+++ b/TP6_ACCELEROMETRE/Debug/Core/Src/main.cyclo
@@ -1,5 +1,5 @@
../Core/Src/main.c:67:5:main 3
-../Core/Src/main.c:139:6:SystemClock_Config 3
-../Core/Src/main.c:180:13:MX_I2C1_Init 2
-../Core/Src/main.c:214:13:MX_GPIO_Init 1
-../Core/Src/main.c:248:6:Error_Handler 1
+../Core/Src/main.c:143:6:SystemClock_Config 3
+../Core/Src/main.c:184:13:MX_I2C1_Init 2
+../Core/Src/main.c:218:13:MX_GPIO_Init 1
+../Core/Src/main.c:252:6:Error_Handler 1
diff --git a/TP6_ACCELEROMETRE/Debug/Core/Src/main.o b/TP6_ACCELEROMETRE/Debug/Core/Src/main.o
index 4e144c2..400da3b 100644
Binary files a/TP6_ACCELEROMETRE/Debug/Core/Src/main.o and b/TP6_ACCELEROMETRE/Debug/Core/Src/main.o differ
diff --git a/TP6_ACCELEROMETRE/Debug/Core/Src/main.su b/TP6_ACCELEROMETRE/Debug/Core/Src/main.su
index bd31dac..eb659d4 100644
--- a/TP6_ACCELEROMETRE/Debug/Core/Src/main.su
+++ b/TP6_ACCELEROMETRE/Debug/Core/Src/main.su
@@ -1,5 +1,5 @@
../Core/Src/main.c:67:5:main 32 static
-../Core/Src/main.c:139:6:SystemClock_Config 80 static
-../Core/Src/main.c:180:13:MX_I2C1_Init 8 static
-../Core/Src/main.c:214:13:MX_GPIO_Init 40 static
-../Core/Src/main.c:248:6:Error_Handler 4 static,ignoring_inline_asm
+../Core/Src/main.c:143:6:SystemClock_Config 80 static
+../Core/Src/main.c:184:13:MX_I2C1_Init 8 static
+../Core/Src/main.c:218:13:MX_GPIO_Init 40 static
+../Core/Src/main.c:252:6:Error_Handler 4 static,ignoring_inline_asm
diff --git a/TP6_ACCELEROMETRE/Debug/TP6_ACCELEROMETRE.elf b/TP6_ACCELEROMETRE/Debug/TP6_ACCELEROMETRE.elf
index ed106f6..d3a2f63 100755
Binary files a/TP6_ACCELEROMETRE/Debug/TP6_ACCELEROMETRE.elf and b/TP6_ACCELEROMETRE/Debug/TP6_ACCELEROMETRE.elf differ
diff --git a/TP6_ACCELEROMETRE/Debug/TP6_ACCELEROMETRE.list b/TP6_ACCELEROMETRE/Debug/TP6_ACCELEROMETRE.list
index 2b2fbb5..b0e6d65 100644
--- a/TP6_ACCELEROMETRE/Debug/TP6_ACCELEROMETRE.list
+++ b/TP6_ACCELEROMETRE/Debug/TP6_ACCELEROMETRE.list
@@ -5,31 +5,31 @@ Sections:
Idx Name Size VMA LMA File off Algn
0 .isr_vector 0000013c 08000000 08000000 00001000 2**0
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 1 .text 000028d8 0800013c 0800013c 0000113c 2**2
+ 1 .text 000028f4 0800013c 0800013c 0000113c 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
- 2 .rodata 00000024 08002a14 08002a14 00003a14 2**2
+ 2 .rodata 00000024 08002a30 08002a30 00003a30 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 3 .ARM.extab 00000000 08002a38 08002a38 0000400c 2**0
+ 3 .ARM.extab 00000000 08002a54 08002a54 0000400c 2**0
CONTENTS, READONLY
- 4 .ARM 00000008 08002a38 08002a38 00003a38 2**2
+ 4 .ARM 00000008 08002a54 08002a54 00003a54 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 5 .preinit_array 00000000 08002a40 08002a40 0000400c 2**0
+ 5 .preinit_array 00000000 08002a5c 08002a5c 0000400c 2**0
CONTENTS, ALLOC, LOAD, DATA
- 6 .init_array 00000004 08002a40 08002a40 00003a40 2**2
+ 6 .init_array 00000004 08002a5c 08002a5c 00003a5c 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 7 .fini_array 00000004 08002a44 08002a44 00003a44 2**2
+ 7 .fini_array 00000004 08002a60 08002a60 00003a60 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 8 .data 0000000c 20000000 08002a48 00004000 2**2
+ 8 .data 0000000c 20000000 08002a64 00004000 2**2
CONTENTS, ALLOC, LOAD, DATA
- 9 .bss 00000074 2000000c 08002a54 0000400c 2**2
+ 9 .bss 00000074 2000000c 08002a70 0000400c 2**2
ALLOC
- 10 ._user_heap_stack 00000600 20000080 08002a54 00004080 2**0
+ 10 ._user_heap_stack 00000600 20000080 08002a70 00004080 2**0
ALLOC
11 .ARM.attributes 00000029 00000000 00000000 0000400c 2**0
CONTENTS, READONLY
- 12 .debug_info 00005e7c 00000000 00000000 00004035 2**0
+ 12 .debug_info 00005e7d 00000000 00000000 00004035 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 13 .debug_abbrev 0000124c 00000000 00000000 00009eb1 2**0
+ 13 .debug_abbrev 0000124c 00000000 00000000 00009eb2 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
14 .debug_aranges 000006b8 00000000 00000000 0000b100 2**3
CONTENTS, READONLY, DEBUGGING, OCTETS
@@ -37,15 +37,15 @@ Idx Name Size VMA LMA File off Algn
CONTENTS, READONLY, DEBUGGING, OCTETS
16 .debug_macro 00015119 00000000 00000000 0000bcdf 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 17 .debug_line 000086ca 00000000 00000000 00020df8 2**0
+ 17 .debug_line 000086cf 00000000 00000000 00020df8 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 18 .debug_str 00084ad6 00000000 00000000 000294c2 2**0
+ 18 .debug_str 00084ad6 00000000 00000000 000294c7 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 19 .comment 00000043 00000000 00000000 000adf98 2**0
+ 19 .comment 00000043 00000000 00000000 000adf9d 2**0
CONTENTS, READONLY
- 20 .debug_frame 00001b4c 00000000 00000000 000adfdc 2**2
+ 20 .debug_frame 00001b4c 00000000 00000000 000adfe0 2**2
CONTENTS, READONLY, DEBUGGING, OCTETS
- 21 .debug_line_str 00000071 00000000 00000000 000afb28 2**0
+ 21 .debug_line_str 00000071 00000000 00000000 000afb2c 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
Disassembly of section .text:
@@ -64,7 +64,7 @@ Disassembly of section .text:
8000152: bd10 pop {r4, pc}
8000154: 2000000c .word 0x2000000c
8000158: 00000000 .word 0x00000000
- 800015c: 080029fc .word 0x080029fc
+ 800015c: 08002a18 .word 0x08002a18
08000160 :
8000160: b508 push {r3, lr}
@@ -76,7 +76,7 @@ Disassembly of section .text:
800016e: bd08 pop {r3, pc}
8000170: 00000000 .word 0x00000000
8000174: 20000010 .word 0x20000010
- 8000178: 080029fc .word 0x080029fc
+ 8000178: 08002a18 .word 0x08002a18
0800017c <__aeabi_uldivmod>:
800017c: b953 cbnz r3, 8000194 <__aeabi_uldivmod+0x18>
@@ -386,30 +386,30 @@ int main(void)
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
- 80004b6: f000 f9be bl 8000836
+ 80004b6: f000 f9cc bl 8000852
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
- 80004ba: f000 f83b bl 8000534
+ 80004ba: f000 f849 bl 8000550
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
- 80004be: f000 f8ad bl 800061c
+ 80004be: f000 f8bb bl 8000638
MX_I2C1_Init();
- 80004c2: f000 f87d bl 80005c0
+ 80004c2: f000 f88b bl 80005dc
/* WHO_AM_I
uint8_t adress[1] = {0x0F};
uint8_t rData[1];
*/
- uint8_t adresse[1] = {0x2D} ;
- 80004c6: 232d movs r3, #45 @ 0x2d
+ uint8_t adresse[1] = {0x10} ;
+ 80004c6: 2310 movs r3, #16
80004c8: 733b strb r3, [r7, #12]
uint8_t rData[1];
uint8_t wData[1];
@@ -425,2540 +425,2535 @@ int main(void)
80004d4: 3301 adds r3, #1
80004d6: 793a ldrb r2, [r7, #4]
80004d8: 701a strb r2, [r3, #0]
+
+ HAL_I2C_Master_Transmit(&hi2c1, 0xD6, data, 2, 100);
+ 80004da: 463a mov r2, r7
+ 80004dc: 2364 movs r3, #100 @ 0x64
+ 80004de: 9300 str r3, [sp, #0]
+ 80004e0: 2302 movs r3, #2
+ 80004e2: 21d6 movs r1, #214 @ 0xd6
+ 80004e4: 4818 ldr r0, [pc, #96] @ (8000548 )
+ 80004e6: f000 fe15 bl 8001114
+ HAL_Delay(100);
+ 80004ea: 2064 movs r0, #100 @ 0x64
+ 80004ec: f000 fa20 bl 8000930
+ adresse[0] = 0x2D;
+ 80004f0: 232d movs r3, #45 @ 0x2d
+ 80004f2: 733b strb r3, [r7, #12]
/* USER CODE BEGIN 3 */
/* WHO_AM_I
HAL_I2C_Master_Transmit(&hi2c1, 0xD6, adress, 1, 100);
HAL_I2C_Master_Receive(&hi2c1, 0xD6, rData, 1, 100);
*/
HAL_I2C_Master_Transmit(&hi2c1, 0xD6, adresse, 1, 100);
- 80004da: f107 020c add.w r2, r7, #12
- 80004de: 2364 movs r3, #100 @ 0x64
- 80004e0: 9300 str r3, [sp, #0]
- 80004e2: 2301 movs r3, #1
- 80004e4: 21d6 movs r1, #214 @ 0xd6
- 80004e6: 4811 ldr r0, [pc, #68] @ (800052c )
- 80004e8: f000 fe06 bl 80010f8
+ 80004f4: f107 020c add.w r2, r7, #12
+ 80004f8: 2364 movs r3, #100 @ 0x64
+ 80004fa: 9300 str r3, [sp, #0]
+ 80004fc: 2301 movs r3, #1
+ 80004fe: 21d6 movs r1, #214 @ 0xd6
+ 8000500: 4811 ldr r0, [pc, #68] @ (8000548 )
+ 8000502: f000 fe07 bl 8001114
HAL_I2C_Master_Receive(&hi2c1, 0xD6, rData, 1, 100);
- 80004ec: f107 0208 add.w r2, r7, #8
- 80004f0: 2364 movs r3, #100 @ 0x64
- 80004f2: 9300 str r3, [sp, #0]
- 80004f4: 2301 movs r3, #1
- 80004f6: 21d6 movs r1, #214 @ 0xd6
- 80004f8: 480c ldr r0, [pc, #48] @ (800052c )
- 80004fa: f000 fefb bl 80012f4
+ 8000506: f107 0208 add.w r2, r7, #8
+ 800050a: 2364 movs r3, #100 @ 0x64
+ 800050c: 9300 str r3, [sp, #0]
+ 800050e: 2301 movs r3, #1
+ 8000510: 21d6 movs r1, #214 @ 0xd6
+ 8000512: 480d ldr r0, [pc, #52] @ (8000548 )
+ 8000514: f000 fefc bl 8001310
if((rData[0]>=0) && (rData[0]<=128)){
- 80004fe: 7a3b ldrb r3, [r7, #8]
- 8000500: 2b80 cmp r3, #128 @ 0x80
- 8000502: d806 bhi.n 8000512
+ 8000518: 7a3b ldrb r3, [r7, #8]
+ 800051a: 2b80 cmp r3, #128 @ 0x80
+ 800051c: d806 bhi.n 800052c
GPIOA -> ODR |= (1<<5);
- 8000504: 4b0a ldr r3, [pc, #40] @ (8000530 )
- 8000506: 695b ldr r3, [r3, #20]
- 8000508: 4a09 ldr r2, [pc, #36] @ (8000530 )
- 800050a: f043 0320 orr.w r3, r3, #32
- 800050e: 6153 str r3, [r2, #20]
- 8000510: e008 b.n 8000524
+ 800051e: 4b0b ldr r3, [pc, #44] @ (800054c )
+ 8000520: 695b ldr r3, [r3, #20]
+ 8000522: 4a0a ldr r2, [pc, #40] @ (800054c )
+ 8000524: f043 0320 orr.w r3, r3, #32
+ 8000528: 6153 str r3, [r2, #20]
+ 800052a: e008 b.n 800053e
} else if((rData[0]>128) && (rData[0]<=255)){
- 8000512: 7a3b ldrb r3, [r7, #8]
- 8000514: 2b80 cmp r3, #128 @ 0x80
- 8000516: d905 bls.n 8000524
+ 800052c: 7a3b ldrb r3, [r7, #8]
+ 800052e: 2b80 cmp r3, #128 @ 0x80
+ 8000530: d905 bls.n 800053e
GPIOA -> ODR &= ~(1<<5);
- 8000518: 4b05 ldr r3, [pc, #20] @ (8000530 )
- 800051a: 695b ldr r3, [r3, #20]
- 800051c: 4a04 ldr r2, [pc, #16] @ (8000530 )
- 800051e: f023 0320 bic.w r3, r3, #32
- 8000522: 6153 str r3, [r2, #20]
+ 8000532: 4b06 ldr r3, [pc, #24] @ (800054c )
+ 8000534: 695b ldr r3, [r3, #20]
+ 8000536: 4a05 ldr r2, [pc, #20] @ (800054c )
+ 8000538: f023 0320 bic.w r3, r3, #32
+ 800053c: 6153 str r3, [r2, #20]
}
HAL_Delay(100);
- 8000524: 2064 movs r0, #100 @ 0x64
- 8000526: f000 f9f5 bl 8000914
+ 800053e: 2064 movs r0, #100 @ 0x64
+ 8000540: f000 f9f6 bl 8000930
HAL_I2C_Master_Transmit(&hi2c1, 0xD6, adresse, 1, 100);
- 800052a: e7d6 b.n 80004da
- 800052c: 20000028 .word 0x20000028
- 8000530: 40020000 .word 0x40020000
+ 8000544: e7d6 b.n 80004f4
+ 8000546: bf00 nop
+ 8000548: 20000028 .word 0x20000028
+ 800054c: 40020000 .word 0x40020000
-08000534 :
+08000550 :
/**
* @brief System Clock Configuration
* @retval None
*/
void SystemClock_Config(void)
{
- 8000534: b580 push {r7, lr}
- 8000536: b092 sub sp, #72 @ 0x48
- 8000538: af00 add r7, sp, #0
+ 8000550: b580 push {r7, lr}
+ 8000552: b092 sub sp, #72 @ 0x48
+ 8000554: af00 add r7, sp, #0
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
- 800053a: f107 0314 add.w r3, r7, #20
- 800053e: 2234 movs r2, #52 @ 0x34
- 8000540: 2100 movs r1, #0
- 8000542: 4618 mov r0, r3
- 8000544: f002 fa2e bl 80029a4
+ 8000556: f107 0314 add.w r3, r7, #20
+ 800055a: 2234 movs r2, #52 @ 0x34
+ 800055c: 2100 movs r1, #0
+ 800055e: 4618 mov r0, r3
+ 8000560: f002 fa2e bl 80029c0
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
- 8000548: 463b mov r3, r7
- 800054a: 2200 movs r2, #0
- 800054c: 601a str r2, [r3, #0]
- 800054e: 605a str r2, [r3, #4]
- 8000550: 609a str r2, [r3, #8]
- 8000552: 60da str r2, [r3, #12]
- 8000554: 611a str r2, [r3, #16]
+ 8000564: 463b mov r3, r7
+ 8000566: 2200 movs r2, #0
+ 8000568: 601a str r2, [r3, #0]
+ 800056a: 605a str r2, [r3, #4]
+ 800056c: 609a str r2, [r3, #8]
+ 800056e: 60da str r2, [r3, #12]
+ 8000570: 611a str r2, [r3, #16]
/** Configure the main internal regulator output voltage
*/
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
- 8000556: 4b19 ldr r3, [pc, #100] @ (80005bc )
- 8000558: 681b ldr r3, [r3, #0]
- 800055a: f423 53c0 bic.w r3, r3, #6144 @ 0x1800
- 800055e: 4a17 ldr r2, [pc, #92] @ (80005bc )
- 8000560: f443 6300 orr.w r3, r3, #2048 @ 0x800
- 8000564: 6013 str r3, [r2, #0]
+ 8000572: 4b19 ldr r3, [pc, #100] @ (80005d8 )
+ 8000574: 681b ldr r3, [r3, #0]
+ 8000576: f423 53c0 bic.w r3, r3, #6144 @ 0x1800
+ 800057a: 4a17 ldr r2, [pc, #92] @ (80005d8 )
+ 800057c: f443 6300 orr.w r3, r3, #2048 @ 0x800
+ 8000580: 6013 str r3, [r2, #0]
/** Initializes the RCC Oscillators according to the specified parameters
* in the RCC_OscInitTypeDef structure.
*/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
- 8000566: 2302 movs r3, #2
- 8000568: 617b str r3, [r7, #20]
+ 8000582: 2302 movs r3, #2
+ 8000584: 617b str r3, [r7, #20]
RCC_OscInitStruct.HSIState = RCC_HSI_ON;
- 800056a: 2301 movs r3, #1
- 800056c: 623b str r3, [r7, #32]
+ 8000586: 2301 movs r3, #1
+ 8000588: 623b str r3, [r7, #32]
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
- 800056e: 2310 movs r3, #16
- 8000570: 627b str r3, [r7, #36] @ 0x24
+ 800058a: 2310 movs r3, #16
+ 800058c: 627b str r3, [r7, #36] @ 0x24
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;
- 8000572: 2300 movs r3, #0
- 8000574: 63bb str r3, [r7, #56] @ 0x38
+ 800058e: 2300 movs r3, #0
+ 8000590: 63bb str r3, [r7, #56] @ 0x38
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
- 8000576: f107 0314 add.w r3, r7, #20
- 800057a: 4618 mov r0, r3
- 800057c: f001 fc72 bl 8001e64
- 8000580: 4603 mov r3, r0
- 8000582: 2b00 cmp r3, #0
- 8000584: d001 beq.n 800058a
+ 8000592: f107 0314 add.w r3, r7, #20
+ 8000596: 4618 mov r0, r3
+ 8000598: f001 fc72 bl 8001e80
+ 800059c: 4603 mov r3, r0
+ 800059e: 2b00 cmp r3, #0
+ 80005a0: d001 beq.n 80005a6
{
Error_Handler();
- 8000586: f000 f887 bl 8000698
+ 80005a2: f000 f887 bl 80006b4
}
/** Initializes the CPU, AHB and APB buses clocks
*/
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
- 800058a: 230f movs r3, #15
- 800058c: 603b str r3, [r7, #0]
+ 80005a6: 230f movs r3, #15
+ 80005a8: 603b str r3, [r7, #0]
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI;
- 800058e: 2301 movs r3, #1
- 8000590: 607b str r3, [r7, #4]
+ 80005aa: 2301 movs r3, #1
+ 80005ac: 607b str r3, [r7, #4]
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
- 8000592: 2300 movs r3, #0
- 8000594: 60bb str r3, [r7, #8]
+ 80005ae: 2300 movs r3, #0
+ 80005b0: 60bb str r3, [r7, #8]
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
- 8000596: 2300 movs r3, #0
- 8000598: 60fb str r3, [r7, #12]
+ 80005b2: 2300 movs r3, #0
+ 80005b4: 60fb str r3, [r7, #12]
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
- 800059a: 2300 movs r3, #0
- 800059c: 613b str r3, [r7, #16]
+ 80005b6: 2300 movs r3, #0
+ 80005b8: 613b str r3, [r7, #16]
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0) != HAL_OK)
- 800059e: 463b mov r3, r7
- 80005a0: 2100 movs r1, #0
- 80005a2: 4618 mov r0, r3
- 80005a4: f001 ff8e bl 80024c4
- 80005a8: 4603 mov r3, r0
- 80005aa: 2b00 cmp r3, #0
- 80005ac: d001 beq.n 80005b2
+ 80005ba: 463b mov r3, r7
+ 80005bc: 2100 movs r1, #0
+ 80005be: 4618 mov r0, r3
+ 80005c0: f001 ff8e bl 80024e0
+ 80005c4: 4603 mov r3, r0
+ 80005c6: 2b00 cmp r3, #0
+ 80005c8: d001 beq.n 80005ce
{
Error_Handler();
- 80005ae: f000 f873 bl 8000698
+ 80005ca: f000 f873 bl 80006b4
}
}
- 80005b2: bf00 nop
- 80005b4: 3748 adds r7, #72 @ 0x48
- 80005b6: 46bd mov sp, r7
- 80005b8: bd80 pop {r7, pc}
- 80005ba: bf00 nop
- 80005bc: 40007000 .word 0x40007000
+ 80005ce: bf00 nop
+ 80005d0: 3748 adds r7, #72 @ 0x48
+ 80005d2: 46bd mov sp, r7
+ 80005d4: bd80 pop {r7, pc}
+ 80005d6: bf00 nop
+ 80005d8: 40007000 .word 0x40007000
-080005c0 :
+080005dc :
* @brief I2C1 Initialization Function
* @param None
* @retval None
*/
static void MX_I2C1_Init(void)
{
- 80005c0: b580 push {r7, lr}
- 80005c2: af00 add r7, sp, #0
+ 80005dc: b580 push {r7, lr}
+ 80005de: af00 add r7, sp, #0
/* USER CODE END I2C1_Init 0 */
/* USER CODE BEGIN I2C1_Init 1 */
/* USER CODE END I2C1_Init 1 */
hi2c1.Instance = I2C1;
- 80005c4: 4b12 ldr r3, [pc, #72] @ (8000610 )
- 80005c6: 4a13 ldr r2, [pc, #76] @ (8000614 )
- 80005c8: 601a str r2, [r3, #0]
+ 80005e0: 4b12 ldr r3, [pc, #72] @ (800062c )
+ 80005e2: 4a13 ldr r2, [pc, #76] @ (8000630 )
+ 80005e4: 601a str r2, [r3, #0]
hi2c1.Init.ClockSpeed = 100000;
- 80005ca: 4b11 ldr r3, [pc, #68] @ (8000610 )
- 80005cc: 4a12 ldr r2, [pc, #72] @ (8000618 )
- 80005ce: 605a str r2, [r3, #4]
+ 80005e6: 4b11 ldr r3, [pc, #68] @ (800062c )
+ 80005e8: 4a12 ldr r2, [pc, #72] @ (8000634 )
+ 80005ea: 605a str r2, [r3, #4]
hi2c1.Init.DutyCycle = I2C_DUTYCYCLE_2;
- 80005d0: 4b0f ldr r3, [pc, #60] @ (8000610 )
- 80005d2: 2200 movs r2, #0
- 80005d4: 609a str r2, [r3, #8]
+ 80005ec: 4b0f ldr r3, [pc, #60] @ (800062c )
+ 80005ee: 2200 movs r2, #0
+ 80005f0: 609a str r2, [r3, #8]
hi2c1.Init.OwnAddress1 = 0;
- 80005d6: 4b0e ldr r3, [pc, #56] @ (8000610 )
- 80005d8: 2200 movs r2, #0
- 80005da: 60da str r2, [r3, #12]
+ 80005f2: 4b0e ldr r3, [pc, #56] @ (800062c )
+ 80005f4: 2200 movs r2, #0
+ 80005f6: 60da str r2, [r3, #12]
hi2c1.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
- 80005dc: 4b0c ldr r3, [pc, #48] @ (8000610 )
- 80005de: f44f 4280 mov.w r2, #16384 @ 0x4000
- 80005e2: 611a str r2, [r3, #16]
+ 80005f8: 4b0c ldr r3, [pc, #48] @ (800062c )
+ 80005fa: f44f 4280 mov.w r2, #16384 @ 0x4000
+ 80005fe: 611a str r2, [r3, #16]
hi2c1.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;
- 80005e4: 4b0a ldr r3, [pc, #40] @ (8000610 )
- 80005e6: 2200 movs r2, #0
- 80005e8: 615a str r2, [r3, #20]
+ 8000600: 4b0a ldr r3, [pc, #40] @ (800062c )
+ 8000602: 2200 movs r2, #0
+ 8000604: 615a str r2, [r3, #20]
hi2c1.Init.OwnAddress2 = 0;
- 80005ea: 4b09 ldr r3, [pc, #36] @ (8000610 )
- 80005ec: 2200 movs r2, #0
- 80005ee: 619a str r2, [r3, #24]
+ 8000606: 4b09 ldr r3, [pc, #36] @ (800062c )
+ 8000608: 2200 movs r2, #0
+ 800060a: 619a str r2, [r3, #24]
hi2c1.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE;
- 80005f0: 4b07 ldr r3, [pc, #28] @ (8000610 )
- 80005f2: 2200 movs r2, #0
- 80005f4: 61da str r2, [r3, #28]
+ 800060c: 4b07 ldr r3, [pc, #28] @ (800062c )
+ 800060e: 2200 movs r2, #0
+ 8000610: 61da str r2, [r3, #28]
hi2c1.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE;
- 80005f6: 4b06 ldr r3, [pc, #24] @ (8000610 )
- 80005f8: 2200 movs r2, #0
- 80005fa: 621a str r2, [r3, #32]
+ 8000612: 4b06 ldr r3, [pc, #24] @ (800062c )
+ 8000614: 2200 movs r2, #0
+ 8000616: 621a str r2, [r3, #32]
if (HAL_I2C_Init(&hi2c1) != HAL_OK)
- 80005fc: 4804 ldr r0, [pc, #16] @ (8000610 )
- 80005fe: f000 fc37 bl 8000e70
- 8000602: 4603 mov r3, r0
- 8000604: 2b00 cmp r3, #0
- 8000606: d001 beq.n 800060c
+ 8000618: 4804 ldr r0, [pc, #16] @ (800062c )
+ 800061a: f000 fc37 bl 8000e8c
+ 800061e: 4603 mov r3, r0
+ 8000620: 2b00 cmp r3, #0
+ 8000622: d001 beq.n 8000628
{
Error_Handler();
- 8000608: f000 f846 bl 8000698
+ 8000624: f000 f846 bl 80006b4
}
/* USER CODE BEGIN I2C1_Init 2 */
/* USER CODE END I2C1_Init 2 */
}
- 800060c: bf00 nop
- 800060e: bd80 pop {r7, pc}
- 8000610: 20000028 .word 0x20000028
- 8000614: 40005400 .word 0x40005400
- 8000618: 000186a0 .word 0x000186a0
+ 8000628: bf00 nop
+ 800062a: bd80 pop {r7, pc}
+ 800062c: 20000028 .word 0x20000028
+ 8000630: 40005400 .word 0x40005400
+ 8000634: 000186a0 .word 0x000186a0
-0800061c :
+08000638 :
* @brief GPIO Initialization Function
* @param None
* @retval None
*/
static void MX_GPIO_Init(void)
{
- 800061c: b580 push {r7, lr}
- 800061e: b088 sub sp, #32
- 8000620: af00 add r7, sp, #0
+ 8000638: b580 push {r7, lr}
+ 800063a: b088 sub sp, #32
+ 800063c: af00 add r7, sp, #0
GPIO_InitTypeDef GPIO_InitStruct = {0};
- 8000622: f107 030c add.w r3, r7, #12
- 8000626: 2200 movs r2, #0
- 8000628: 601a str r2, [r3, #0]
- 800062a: 605a str r2, [r3, #4]
- 800062c: 609a str r2, [r3, #8]
- 800062e: 60da str r2, [r3, #12]
- 8000630: 611a str r2, [r3, #16]
+ 800063e: f107 030c add.w r3, r7, #12
+ 8000642: 2200 movs r2, #0
+ 8000644: 601a str r2, [r3, #0]
+ 8000646: 605a str r2, [r3, #4]
+ 8000648: 609a str r2, [r3, #8]
+ 800064a: 60da str r2, [r3, #12]
+ 800064c: 611a str r2, [r3, #16]
/* USER CODE BEGIN MX_GPIO_Init_1 */
/* USER CODE END MX_GPIO_Init_1 */
/* GPIO Ports Clock Enable */
__HAL_RCC_GPIOA_CLK_ENABLE();
- 8000632: 4b17 ldr r3, [pc, #92] @ (8000690 )
- 8000634: 69db ldr r3, [r3, #28]
- 8000636: 4a16 ldr r2, [pc, #88] @ (8000690 )
- 8000638: f043 0301 orr.w r3, r3, #1
- 800063c: 61d3 str r3, [r2, #28]
- 800063e: 4b14 ldr r3, [pc, #80] @ (8000690 )
- 8000640: 69db ldr r3, [r3, #28]
- 8000642: f003 0301 and.w r3, r3, #1
- 8000646: 60bb str r3, [r7, #8]
- 8000648: 68bb ldr r3, [r7, #8]
+ 800064e: 4b17 ldr r3, [pc, #92] @ (80006ac )
+ 8000650: 69db ldr r3, [r3, #28]
+ 8000652: 4a16 ldr r2, [pc, #88] @ (80006ac )
+ 8000654: f043 0301 orr.w r3, r3, #1
+ 8000658: 61d3 str r3, [r2, #28]
+ 800065a: 4b14 ldr r3, [pc, #80] @ (80006ac )
+ 800065c: 69db ldr r3, [r3, #28]
+ 800065e: f003 0301 and.w r3, r3, #1
+ 8000662: 60bb str r3, [r7, #8]
+ 8000664: 68bb ldr r3, [r7, #8]
__HAL_RCC_GPIOB_CLK_ENABLE();
- 800064a: 4b11 ldr r3, [pc, #68] @ (8000690 )
- 800064c: 69db ldr r3, [r3, #28]
- 800064e: 4a10 ldr r2, [pc, #64] @ (8000690 )
- 8000650: f043 0302 orr.w r3, r3, #2
- 8000654: 61d3 str r3, [r2, #28]
- 8000656: 4b0e ldr r3, [pc, #56] @ (8000690 )
- 8000658: 69db ldr r3, [r3, #28]
- 800065a: f003 0302 and.w r3, r3, #2
- 800065e: 607b str r3, [r7, #4]
- 8000660: 687b ldr r3, [r7, #4]
+ 8000666: 4b11 ldr r3, [pc, #68] @ (80006ac )
+ 8000668: 69db ldr r3, [r3, #28]
+ 800066a: 4a10 ldr r2, [pc, #64] @ (80006ac )
+ 800066c: f043 0302 orr.w r3, r3, #2
+ 8000670: 61d3 str r3, [r2, #28]
+ 8000672: 4b0e ldr r3, [pc, #56] @ (80006ac )
+ 8000674: 69db ldr r3, [r3, #28]
+ 8000676: f003 0302 and.w r3, r3, #2
+ 800067a: 607b str r3, [r7, #4]
+ 800067c: 687b ldr r3, [r7, #4]
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
- 8000662: 2200 movs r2, #0
- 8000664: 2120 movs r1, #32
- 8000666: 480b ldr r0, [pc, #44] @ (8000694 )
- 8000668: f000 fbea bl 8000e40
+ 800067e: 2200 movs r2, #0
+ 8000680: 2120 movs r1, #32
+ 8000682: 480b ldr r0, [pc, #44] @ (80006b0 )
+ 8000684: f000 fbea bl 8000e5c
/*Configure GPIO pin : PA5 */
GPIO_InitStruct.Pin = GPIO_PIN_5;
- 800066c: 2320 movs r3, #32
- 800066e: 60fb str r3, [r7, #12]
+ 8000688: 2320 movs r3, #32
+ 800068a: 60fb str r3, [r7, #12]
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
- 8000670: 2301 movs r3, #1
- 8000672: 613b str r3, [r7, #16]
+ 800068c: 2301 movs r3, #1
+ 800068e: 613b str r3, [r7, #16]
GPIO_InitStruct.Pull = GPIO_NOPULL;
- 8000674: 2300 movs r3, #0
- 8000676: 617b str r3, [r7, #20]
+ 8000690: 2300 movs r3, #0
+ 8000692: 617b str r3, [r7, #20]
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
- 8000678: 2300 movs r3, #0
- 800067a: 61bb str r3, [r7, #24]
+ 8000694: 2300 movs r3, #0
+ 8000696: 61bb str r3, [r7, #24]
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
- 800067c: f107 030c add.w r3, r7, #12
- 8000680: 4619 mov r1, r3
- 8000682: 4804 ldr r0, [pc, #16] @ (8000694 )
- 8000684: f000 fa4c bl 8000b20
+ 8000698: f107 030c add.w r3, r7, #12
+ 800069c: 4619 mov r1, r3
+ 800069e: 4804 ldr r0, [pc, #16] @ (80006b0 )
+ 80006a0: f000 fa4c bl 8000b3c
/* USER CODE BEGIN MX_GPIO_Init_2 */
/* USER CODE END MX_GPIO_Init_2 */
}
- 8000688: bf00 nop
- 800068a: 3720 adds r7, #32
- 800068c: 46bd mov sp, r7
- 800068e: bd80 pop {r7, pc}
- 8000690: 40023800 .word 0x40023800
- 8000694: 40020000 .word 0x40020000
+ 80006a4: bf00 nop
+ 80006a6: 3720 adds r7, #32
+ 80006a8: 46bd mov sp, r7
+ 80006aa: bd80 pop {r7, pc}
+ 80006ac: 40023800 .word 0x40023800
+ 80006b0: 40020000 .word 0x40020000
-08000698 :
+080006b4 :
/**
* @brief This function is executed in case of error occurrence.
* @retval None
*/
void Error_Handler(void)
{
- 8000698: b480 push {r7}
- 800069a: af00 add r7, sp, #0
+ 80006b4: b480 push {r7}
+ 80006b6: af00 add r7, sp, #0
\details Disables IRQ interrupts by setting the I-bit in the CPSR.
Can only be executed in Privileged modes.
*/
__STATIC_FORCEINLINE void __disable_irq(void)
{
__ASM volatile ("cpsid i" : : : "memory");
- 800069c: b672 cpsid i
+ 80006b8: b672 cpsid i
}
- 800069e: bf00 nop
+ 80006ba: bf00 nop
/* USER CODE BEGIN Error_Handler_Debug */
/* User can add his own implementation to report the HAL error return state */
__disable_irq();
while (1)
- 80006a0: bf00 nop
- 80006a2: e7fd b.n 80006a0
+ 80006bc: bf00 nop
+ 80006be: e7fd b.n 80006bc
-080006a4 :
+080006c0 :
/* USER CODE END 0 */
/**
* Initializes the Global MSP.
*/
void HAL_MspInit(void)
{
- 80006a4: b480 push {r7}
- 80006a6: b085 sub sp, #20
- 80006a8: af00 add r7, sp, #0
+ 80006c0: b480 push {r7}
+ 80006c2: b085 sub sp, #20
+ 80006c4: af00 add r7, sp, #0
/* USER CODE BEGIN MspInit 0 */
/* USER CODE END MspInit 0 */
__HAL_RCC_COMP_CLK_ENABLE();
- 80006aa: 4b14 ldr r3, [pc, #80] @ (80006fc )
- 80006ac: 6a5b ldr r3, [r3, #36] @ 0x24
- 80006ae: 4a13 ldr r2, [pc, #76] @ (80006fc )
- 80006b0: f043 4300 orr.w r3, r3, #2147483648 @ 0x80000000
- 80006b4: 6253 str r3, [r2, #36] @ 0x24
- 80006b6: 4b11 ldr r3, [pc, #68] @ (80006fc )
- 80006b8: 6a5b ldr r3, [r3, #36] @ 0x24
- 80006ba: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000
- 80006be: 60fb str r3, [r7, #12]
- 80006c0: 68fb ldr r3, [r7, #12]
+ 80006c6: 4b14 ldr r3, [pc, #80] @ (8000718 )
+ 80006c8: 6a5b ldr r3, [r3, #36] @ 0x24
+ 80006ca: 4a13 ldr r2, [pc, #76] @ (8000718 )
+ 80006cc: f043 4300 orr.w r3, r3, #2147483648 @ 0x80000000
+ 80006d0: 6253 str r3, [r2, #36] @ 0x24
+ 80006d2: 4b11 ldr r3, [pc, #68] @ (8000718 )
+ 80006d4: 6a5b ldr r3, [r3, #36] @ 0x24
+ 80006d6: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000
+ 80006da: 60fb str r3, [r7, #12]
+ 80006dc: 68fb ldr r3, [r7, #12]
__HAL_RCC_SYSCFG_CLK_ENABLE();
- 80006c2: 4b0e ldr r3, [pc, #56] @ (80006fc )
- 80006c4: 6a1b ldr r3, [r3, #32]
- 80006c6: 4a0d ldr r2, [pc, #52] @ (80006fc )
- 80006c8: f043 0301 orr.w r3, r3, #1
- 80006cc: 6213 str r3, [r2, #32]
- 80006ce: 4b0b ldr r3, [pc, #44] @ (80006fc )
- 80006d0: 6a1b ldr r3, [r3, #32]
- 80006d2: f003 0301 and.w r3, r3, #1
- 80006d6: 60bb str r3, [r7, #8]
- 80006d8: 68bb ldr r3, [r7, #8]
+ 80006de: 4b0e ldr r3, [pc, #56] @ (8000718 )
+ 80006e0: 6a1b ldr r3, [r3, #32]
+ 80006e2: 4a0d ldr r2, [pc, #52] @ (8000718 )
+ 80006e4: f043 0301 orr.w r3, r3, #1
+ 80006e8: 6213 str r3, [r2, #32]
+ 80006ea: 4b0b ldr r3, [pc, #44] @ (8000718 )
+ 80006ec: 6a1b ldr r3, [r3, #32]
+ 80006ee: f003 0301 and.w r3, r3, #1
+ 80006f2: 60bb str r3, [r7, #8]
+ 80006f4: 68bb ldr r3, [r7, #8]
__HAL_RCC_PWR_CLK_ENABLE();
- 80006da: 4b08 ldr r3, [pc, #32] @ (80006fc )
- 80006dc: 6a5b ldr r3, [r3, #36] @ 0x24
- 80006de: 4a07 ldr r2, [pc, #28] @ (80006fc )
- 80006e0: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000
- 80006e4: 6253 str r3, [r2, #36] @ 0x24
- 80006e6: 4b05 ldr r3, [pc, #20] @ (80006fc )
- 80006e8: 6a5b ldr r3, [r3, #36] @ 0x24
- 80006ea: f003 5380 and.w r3, r3, #268435456 @ 0x10000000
- 80006ee: 607b str r3, [r7, #4]
- 80006f0: 687b ldr r3, [r7, #4]
+ 80006f6: 4b08 ldr r3, [pc, #32] @ (8000718 )
+ 80006f8: 6a5b ldr r3, [r3, #36] @ 0x24
+ 80006fa: 4a07 ldr r2, [pc, #28] @ (8000718 )
+ 80006fc: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000
+ 8000700: 6253 str r3, [r2, #36] @ 0x24
+ 8000702: 4b05 ldr r3, [pc, #20] @ (8000718 )
+ 8000704: 6a5b ldr r3, [r3, #36] @ 0x24
+ 8000706: f003 5380 and.w r3, r3, #268435456 @ 0x10000000
+ 800070a: 607b str r3, [r7, #4]
+ 800070c: 687b ldr r3, [r7, #4]
/* System interrupt init*/
/* USER CODE BEGIN MspInit 1 */
/* USER CODE END MspInit 1 */
}
- 80006f2: bf00 nop
- 80006f4: 3714 adds r7, #20
- 80006f6: 46bd mov sp, r7
- 80006f8: bc80 pop {r7}
- 80006fa: 4770 bx lr
- 80006fc: 40023800 .word 0x40023800
+ 800070e: bf00 nop
+ 8000710: 3714 adds r7, #20
+ 8000712: 46bd mov sp, r7
+ 8000714: bc80 pop {r7}
+ 8000716: 4770 bx lr
+ 8000718: 40023800 .word 0x40023800
-08000700 :
+0800071c :
* This function configures the hardware resources used in this example
* @param hi2c: I2C handle pointer
* @retval None
*/
void HAL_I2C_MspInit(I2C_HandleTypeDef* hi2c)
{
- 8000700: b580 push {r7, lr}
- 8000702: b08a sub sp, #40 @ 0x28
- 8000704: af00 add r7, sp, #0
- 8000706: 6078 str r0, [r7, #4]
+ 800071c: b580 push {r7, lr}
+ 800071e: b08a sub sp, #40 @ 0x28
+ 8000720: af00 add r7, sp, #0
+ 8000722: 6078 str r0, [r7, #4]
GPIO_InitTypeDef GPIO_InitStruct = {0};
- 8000708: f107 0314 add.w r3, r7, #20
- 800070c: 2200 movs r2, #0
- 800070e: 601a str r2, [r3, #0]
- 8000710: 605a str r2, [r3, #4]
- 8000712: 609a str r2, [r3, #8]
- 8000714: 60da str r2, [r3, #12]
- 8000716: 611a str r2, [r3, #16]
+ 8000724: f107 0314 add.w r3, r7, #20
+ 8000728: 2200 movs r2, #0
+ 800072a: 601a str r2, [r3, #0]
+ 800072c: 605a str r2, [r3, #4]
+ 800072e: 609a str r2, [r3, #8]
+ 8000730: 60da str r2, [r3, #12]
+ 8000732: 611a str r2, [r3, #16]
if(hi2c->Instance==I2C1)
- 8000718: 687b ldr r3, [r7, #4]
- 800071a: 681b ldr r3, [r3, #0]
- 800071c: 4a17 ldr r2, [pc, #92] @ (800077c )
- 800071e: 4293 cmp r3, r2
- 8000720: d128 bne.n 8000774
+ 8000734: 687b ldr r3, [r7, #4]
+ 8000736: 681b ldr r3, [r3, #0]
+ 8000738: 4a17 ldr r2, [pc, #92] @ (8000798 )
+ 800073a: 4293 cmp r3, r2
+ 800073c: d128 bne.n 8000790
{
/* USER CODE BEGIN I2C1_MspInit 0 */
/* USER CODE END I2C1_MspInit 0 */
__HAL_RCC_GPIOB_CLK_ENABLE();
- 8000722: 4b17 ldr r3, [pc, #92] @ (8000780 )
- 8000724: 69db ldr r3, [r3, #28]
- 8000726: 4a16 ldr r2, [pc, #88] @ (8000780 )
- 8000728: f043 0302 orr.w r3, r3, #2
- 800072c: 61d3 str r3, [r2, #28]
- 800072e: 4b14 ldr r3, [pc, #80] @ (8000780 )
- 8000730: 69db ldr r3, [r3, #28]
- 8000732: f003 0302 and.w r3, r3, #2
- 8000736: 613b str r3, [r7, #16]
- 8000738: 693b ldr r3, [r7, #16]
+ 800073e: 4b17 ldr r3, [pc, #92] @ (800079c )
+ 8000740: 69db ldr r3, [r3, #28]
+ 8000742: 4a16 ldr r2, [pc, #88] @ (800079c )
+ 8000744: f043 0302 orr.w r3, r3, #2
+ 8000748: 61d3 str r3, [r2, #28]
+ 800074a: 4b14 ldr r3, [pc, #80] @ (800079c )
+ 800074c: 69db ldr r3, [r3, #28]
+ 800074e: f003 0302 and.w r3, r3, #2
+ 8000752: 613b str r3, [r7, #16]
+ 8000754: 693b ldr r3, [r7, #16]
/**I2C1 GPIO Configuration
PB8 ------> I2C1_SCL
PB9 ------> I2C1_SDA
*/
GPIO_InitStruct.Pin = GPIO_PIN_8|GPIO_PIN_9;
- 800073a: f44f 7340 mov.w r3, #768 @ 0x300
- 800073e: 617b str r3, [r7, #20]
+ 8000756: f44f 7340 mov.w r3, #768 @ 0x300
+ 800075a: 617b str r3, [r7, #20]
GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
- 8000740: 2312 movs r3, #18
- 8000742: 61bb str r3, [r7, #24]
+ 800075c: 2312 movs r3, #18
+ 800075e: 61bb str r3, [r7, #24]
GPIO_InitStruct.Pull = GPIO_NOPULL;
- 8000744: 2300 movs r3, #0
- 8000746: 61fb str r3, [r7, #28]
+ 8000760: 2300 movs r3, #0
+ 8000762: 61fb str r3, [r7, #28]
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
- 8000748: 2303 movs r3, #3
- 800074a: 623b str r3, [r7, #32]
+ 8000764: 2303 movs r3, #3
+ 8000766: 623b str r3, [r7, #32]
GPIO_InitStruct.Alternate = GPIO_AF4_I2C1;
- 800074c: 2304 movs r3, #4
- 800074e: 627b str r3, [r7, #36] @ 0x24
+ 8000768: 2304 movs r3, #4
+ 800076a: 627b str r3, [r7, #36] @ 0x24
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
- 8000750: f107 0314 add.w r3, r7, #20
- 8000754: 4619 mov r1, r3
- 8000756: 480b ldr r0, [pc, #44] @ (8000784 )
- 8000758: f000 f9e2 bl 8000b20
+ 800076c: f107 0314 add.w r3, r7, #20
+ 8000770: 4619 mov r1, r3
+ 8000772: 480b ldr r0, [pc, #44] @ (80007a0 )
+ 8000774: f000 f9e2 bl 8000b3c
/* Peripheral clock enable */
__HAL_RCC_I2C1_CLK_ENABLE();
- 800075c: 4b08 ldr r3, [pc, #32] @ (8000780 )
- 800075e: 6a5b ldr r3, [r3, #36] @ 0x24
- 8000760: 4a07 ldr r2, [pc, #28] @ (8000780 )
- 8000762: f443 1300 orr.w r3, r3, #2097152 @ 0x200000
- 8000766: 6253 str r3, [r2, #36] @ 0x24
- 8000768: 4b05 ldr r3, [pc, #20] @ (8000780 )
- 800076a: 6a5b ldr r3, [r3, #36] @ 0x24
- 800076c: f403 1300 and.w r3, r3, #2097152 @ 0x200000
- 8000770: 60fb str r3, [r7, #12]
- 8000772: 68fb ldr r3, [r7, #12]
+ 8000778: 4b08 ldr r3, [pc, #32] @ (800079c )
+ 800077a: 6a5b ldr r3, [r3, #36] @ 0x24
+ 800077c: 4a07 ldr r2, [pc, #28] @ (800079c )
+ 800077e: f443 1300 orr.w r3, r3, #2097152 @ 0x200000
+ 8000782: 6253 str r3, [r2, #36] @ 0x24
+ 8000784: 4b05 ldr r3, [pc, #20] @ (800079c )
+ 8000786: 6a5b ldr r3, [r3, #36] @ 0x24
+ 8000788: f403 1300 and.w r3, r3, #2097152 @ 0x200000
+ 800078c: 60fb str r3, [r7, #12]
+ 800078e: 68fb ldr r3, [r7, #12]
/* USER CODE END I2C1_MspInit 1 */
}
}
- 8000774: bf00 nop
- 8000776: 3728 adds r7, #40 @ 0x28
- 8000778: 46bd mov sp, r7
- 800077a: bd80 pop {r7, pc}
- 800077c: 40005400 .word 0x40005400
- 8000780: 40023800 .word 0x40023800
- 8000784: 40020400 .word 0x40020400
+ 8000790: bf00 nop
+ 8000792: 3728 adds r7, #40 @ 0x28
+ 8000794: 46bd mov sp, r7
+ 8000796: bd80 pop {r7, pc}
+ 8000798: 40005400 .word 0x40005400
+ 800079c: 40023800 .word 0x40023800
+ 80007a0: 40020400 .word 0x40020400
-08000788 :
+080007a4 :
/******************************************************************************/
/**
* @brief This function handles Non maskable interrupt.
*/
void NMI_Handler(void)
{
- 8000788: b480 push {r7}
- 800078a: af00 add r7, sp, #0
+ 80007a4: b480 push {r7}
+ 80007a6: af00 add r7, sp, #0
/* USER CODE BEGIN NonMaskableInt_IRQn 0 */
/* USER CODE END NonMaskableInt_IRQn 0 */
/* USER CODE BEGIN NonMaskableInt_IRQn 1 */
while (1)
- 800078c: bf00 nop
- 800078e: e7fd b.n 800078c
+ 80007a8: bf00 nop
+ 80007aa: e7fd b.n 80007a8
-08000790 :
+080007ac :
/**
* @brief This function handles Hard fault interrupt.
*/
void HardFault_Handler(void)
{
- 8000790: b480 push {r7}
- 8000792: af00 add r7, sp, #0
+ 80007ac: b480 push {r7}
+ 80007ae: af00 add r7, sp, #0
/* USER CODE BEGIN HardFault_IRQn 0 */
/* USER CODE END HardFault_IRQn 0 */
while (1)
- 8000794: bf00 nop
- 8000796: e7fd b.n 8000794
+ 80007b0: bf00 nop
+ 80007b2: e7fd b.n 80007b0
-08000798 :
+080007b4 :
/**
* @brief This function handles Memory management fault.
*/
void MemManage_Handler(void)
{
- 8000798: b480 push {r7}
- 800079a: af00 add r7, sp, #0
+ 80007b4: b480 push {r7}
+ 80007b6: af00 add r7, sp, #0
/* USER CODE BEGIN MemoryManagement_IRQn 0 */
/* USER CODE END MemoryManagement_IRQn 0 */
while (1)
- 800079c: bf00 nop
- 800079e: e7fd b.n 800079c
+ 80007b8: bf00 nop
+ 80007ba: e7fd b.n 80007b8
-080007a0 :
+080007bc :
/**
* @brief This function handles Pre-fetch fault, memory access fault.
*/
void BusFault_Handler(void)
{
- 80007a0: b480 push {r7}
- 80007a2: af00 add r7, sp, #0
+ 80007bc: b480 push {r7}
+ 80007be: af00 add r7, sp, #0
/* USER CODE BEGIN BusFault_IRQn 0 */
/* USER CODE END BusFault_IRQn 0 */
while (1)
- 80007a4: bf00 nop
- 80007a6: e7fd b.n 80007a4
+ 80007c0: bf00 nop
+ 80007c2: e7fd b.n 80007c0
-080007a8 :
+080007c4 :
/**
* @brief This function handles Undefined instruction or illegal state.
*/
void UsageFault_Handler(void)
{
- 80007a8: b480 push {r7}
- 80007aa: af00 add r7, sp, #0
+ 80007c4: b480 push {r7}
+ 80007c6: af00 add r7, sp, #0
/* USER CODE BEGIN UsageFault_IRQn 0 */
/* USER CODE END UsageFault_IRQn 0 */
while (1)
- 80007ac: bf00 nop
- 80007ae: e7fd b.n 80007ac
+ 80007c8: bf00 nop
+ 80007ca: e7fd b.n 80007c8
-080007b0 :
+080007cc :
/**
* @brief This function handles System service call via SWI instruction.
*/
void SVC_Handler(void)
{
- 80007b0: b480 push {r7}
- 80007b2: af00 add r7, sp, #0
+ 80007cc: b480 push {r7}
+ 80007ce: af00 add r7, sp, #0
/* USER CODE END SVC_IRQn 0 */
/* USER CODE BEGIN SVC_IRQn 1 */
/* USER CODE END SVC_IRQn 1 */
}
- 80007b4: bf00 nop
- 80007b6: 46bd mov sp, r7
- 80007b8: bc80 pop {r7}
- 80007ba: 4770 bx lr
+ 80007d0: bf00 nop
+ 80007d2: 46bd mov sp, r7
+ 80007d4: bc80 pop {r7}
+ 80007d6: 4770 bx lr
-080007bc :
+080007d8 :
/**
* @brief This function handles Debug monitor.
*/
void DebugMon_Handler(void)
{
- 80007bc: b480 push {r7}
- 80007be: af00 add r7, sp, #0
+ 80007d8: b480 push {r7}
+ 80007da: af00 add r7, sp, #0
/* USER CODE END DebugMonitor_IRQn 0 */
/* USER CODE BEGIN DebugMonitor_IRQn 1 */
/* USER CODE END DebugMonitor_IRQn 1 */
}
- 80007c0: bf00 nop
- 80007c2: 46bd mov sp, r7
- 80007c4: bc80 pop {r7}
- 80007c6: 4770 bx lr
+ 80007dc: bf00 nop
+ 80007de: 46bd mov sp, r7
+ 80007e0: bc80 pop {r7}
+ 80007e2: 4770 bx lr
-080007c8 :
+080007e4 :
/**
* @brief This function handles Pendable request for system service.
*/
void PendSV_Handler(void)
{
- 80007c8: b480 push {r7}
- 80007ca: af00 add r7, sp, #0
+ 80007e4: b480 push {r7}
+ 80007e6: af00 add r7, sp, #0
/* USER CODE END PendSV_IRQn 0 */
/* USER CODE BEGIN PendSV_IRQn 1 */
/* USER CODE END PendSV_IRQn 1 */
}
- 80007cc: bf00 nop
- 80007ce: 46bd mov sp, r7
- 80007d0: bc80 pop {r7}
- 80007d2: 4770 bx lr
+ 80007e8: bf00 nop
+ 80007ea: 46bd mov sp, r7
+ 80007ec: bc80 pop {r7}
+ 80007ee: 4770 bx lr
-080007d4 :
+080007f0 :
/**
* @brief This function handles System tick timer.
*/
void SysTick_Handler(void)
{
- 80007d4: b580 push {r7, lr}
- 80007d6: af00 add r7, sp, #0
+ 80007f0: b580 push {r7, lr}
+ 80007f2: af00 add r7, sp, #0
/* USER CODE BEGIN SysTick_IRQn 0 */
/* USER CODE END SysTick_IRQn 0 */
HAL_IncTick();
- 80007d8: f000 f880 bl 80008dc
+ 80007f4: f000 f880 bl 80008f8
/* USER CODE BEGIN SysTick_IRQn 1 */
/* USER CODE END SysTick_IRQn 1 */
}
- 80007dc: bf00 nop
- 80007de: bd80 pop {r7, pc}
+ 80007f8: bf00 nop
+ 80007fa: bd80 pop {r7, pc}
-080007e0 :
+080007fc :
* SystemCoreClock variable.
* @param None
* @retval None
*/
void SystemInit (void)
{
- 80007e0: b480 push {r7}
- 80007e2: af00 add r7, sp, #0
+ 80007fc: b480 push {r7}
+ 80007fe: af00 add r7, sp, #0
/* Configure the Vector Table location -------------------------------------*/
#if defined(USER_VECT_TAB_ADDRESS)
SCB->VTOR = VECT_TAB_BASE_ADDRESS | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */
#endif /* USER_VECT_TAB_ADDRESS */
}
- 80007e4: bf00 nop
- 80007e6: 46bd mov sp, r7
- 80007e8: bc80 pop {r7}
- 80007ea: 4770 bx lr
+ 8000800: bf00 nop
+ 8000802: 46bd mov sp, r7
+ 8000804: bc80 pop {r7}
+ 8000806: 4770 bx lr
-080007ec :
+08000808 :
.type Reset_Handler, %function
Reset_Handler:
/* Call the clock system initialization function.*/
bl SystemInit
- 80007ec: f7ff fff8 bl 80007e0
+ 8000808: f7ff fff8 bl 80007fc
/* Copy the data segment initializers from flash to SRAM */
ldr r0, =_sdata
- 80007f0: 480b ldr r0, [pc, #44] @ (8000820 )
+ 800080c: 480b ldr r0, [pc, #44] @ (800083c )
ldr r1, =_edata
- 80007f2: 490c ldr r1, [pc, #48] @ (8000824 )
+ 800080e: 490c ldr r1, [pc, #48] @ (8000840 )
ldr r2, =_sidata
- 80007f4: 4a0c ldr r2, [pc, #48] @ (8000828 )
+ 8000810: 4a0c ldr r2, [pc, #48] @ (8000844 )
movs r3, #0
- 80007f6: 2300 movs r3, #0
+ 8000812: 2300 movs r3, #0
b LoopCopyDataInit
- 80007f8: e002 b.n 8000800
+ 8000814: e002 b.n 800081c
-080007fa :
+08000816 :
CopyDataInit:
ldr r4, [r2, r3]
- 80007fa: 58d4 ldr r4, [r2, r3]
+ 8000816: 58d4 ldr r4, [r2, r3]
str r4, [r0, r3]
- 80007fc: 50c4 str r4, [r0, r3]
+ 8000818: 50c4 str r4, [r0, r3]
adds r3, r3, #4
- 80007fe: 3304 adds r3, #4
+ 800081a: 3304 adds r3, #4
-08000800 :
+0800081c :
LoopCopyDataInit:
adds r4, r0, r3
- 8000800: 18c4 adds r4, r0, r3
+ 800081c: 18c4 adds r4, r0, r3
cmp r4, r1
- 8000802: 428c cmp r4, r1
+ 800081e: 428c cmp r4, r1
bcc CopyDataInit
- 8000804: d3f9 bcc.n 80007fa
+ 8000820: d3f9 bcc.n 8000816
/* Zero fill the bss segment. */
ldr r2, =_sbss
- 8000806: 4a09 ldr r2, [pc, #36] @ (800082c )
+ 8000822: 4a09 ldr r2, [pc, #36] @ (8000848 )
ldr r4, =_ebss
- 8000808: 4c09 ldr r4, [pc, #36] @ (8000830 )
+ 8000824: 4c09 ldr r4, [pc, #36] @ (800084c )
movs r3, #0
- 800080a: 2300 movs r3, #0
+ 8000826: 2300 movs r3, #0
b LoopFillZerobss
- 800080c: e001 b.n 8000812
+ 8000828: e001 b.n 800082e
-0800080e :
+0800082a :
FillZerobss:
str r3, [r2]
- 800080e: 6013 str r3, [r2, #0]
+ 800082a: 6013 str r3, [r2, #0]
adds r2, r2, #4
- 8000810: 3204 adds r2, #4
+ 800082c: 3204 adds r2, #4
-08000812 :
+0800082e :
LoopFillZerobss:
cmp r2, r4
- 8000812: 42a2 cmp r2, r4
+ 800082e: 42a2 cmp r2, r4
bcc FillZerobss
- 8000814: d3fb bcc.n 800080e
+ 8000830: d3fb bcc.n 800082a
/* Call static constructors */
bl __libc_init_array
- 8000816: f002 f8cd bl 80029b4 <__libc_init_array>
+ 8000832: f002 f8cd bl 80029d0 <__libc_init_array>
/* Call the application's entry point.*/
bl main
- 800081a: f7ff fe49 bl 80004b0
+ 8000836: f7ff fe3b bl 80004b0
bx lr
- 800081e: 4770 bx lr
+ 800083a: 4770 bx lr
ldr r0, =_sdata
- 8000820: 20000000 .word 0x20000000
+ 800083c: 20000000 .word 0x20000000
ldr r1, =_edata
- 8000824: 2000000c .word 0x2000000c
+ 8000840: 2000000c .word 0x2000000c
ldr r2, =_sidata
- 8000828: 08002a48 .word 0x08002a48
+ 8000844: 08002a64 .word 0x08002a64
ldr r2, =_sbss
- 800082c: 2000000c .word 0x2000000c
+ 8000848: 2000000c .word 0x2000000c
ldr r4, =_ebss
- 8000830: 20000080 .word 0x20000080
+ 800084c: 20000080 .word 0x20000080
-08000834 :
+08000850 :
* @retval : None
*/
.section .text.Default_Handler,"ax",%progbits
Default_Handler:
Infinite_Loop:
b Infinite_Loop
- 8000834: e7fe b.n 8000834
+ 8000850: e7fe b.n 8000850
-08000836 :
+08000852 :
* In the default implementation,Systick is used as source of time base.
* the tick variable is incremented each 1ms in its ISR.
* @retval HAL status
*/
HAL_StatusTypeDef HAL_Init(void)
{
- 8000836: b580 push {r7, lr}
- 8000838: b082 sub sp, #8
- 800083a: af00 add r7, sp, #0
+ 8000852: b580 push {r7, lr}
+ 8000854: b082 sub sp, #8
+ 8000856: af00 add r7, sp, #0
HAL_StatusTypeDef status = HAL_OK;
- 800083c: 2300 movs r3, #0
- 800083e: 71fb strb r3, [r7, #7]
+ 8000858: 2300 movs r3, #0
+ 800085a: 71fb strb r3, [r7, #7]
#if (PREFETCH_ENABLE != 0)
__HAL_FLASH_PREFETCH_BUFFER_ENABLE();
#endif /* PREFETCH_ENABLE */
/* Set Interrupt Group Priority */
HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4);
- 8000840: 2003 movs r0, #3
- 8000842: f000 f939 bl 8000ab8
+ 800085c: 2003 movs r0, #3
+ 800085e: f000 f939 bl 8000ad4
/* Use systick as time base source and configure 1ms tick (default clock after Reset is MSI) */
if (HAL_InitTick(TICK_INT_PRIORITY) != HAL_OK)
- 8000846: 200f movs r0, #15
- 8000848: f000 f80e bl 8000868
- 800084c: 4603 mov r3, r0
- 800084e: 2b00 cmp r3, #0
- 8000850: d002 beq.n 8000858
+ 8000862: 200f movs r0, #15
+ 8000864: f000 f80e bl 8000884
+ 8000868: 4603 mov r3, r0
+ 800086a: 2b00 cmp r3, #0
+ 800086c: d002 beq.n 8000874
{
status = HAL_ERROR;
- 8000852: 2301 movs r3, #1
- 8000854: 71fb strb r3, [r7, #7]
- 8000856: e001 b.n 800085c
+ 800086e: 2301 movs r3, #1
+ 8000870: 71fb strb r3, [r7, #7]
+ 8000872: e001 b.n 8000878
}
else
{
/* Init the low level hardware */
HAL_MspInit();
- 8000858: f7ff ff24 bl 80006a4
+ 8000874: f7ff ff24 bl 80006c0
}
/* Return function status */
return status;
- 800085c: 79fb ldrb r3, [r7, #7]
+ 8000878: 79fb ldrb r3, [r7, #7]
}
- 800085e: 4618 mov r0, r3
- 8000860: 3708 adds r7, #8
- 8000862: 46bd mov sp, r7
- 8000864: bd80 pop {r7, pc}
+ 800087a: 4618 mov r0, r3
+ 800087c: 3708 adds r7, #8
+ 800087e: 46bd mov sp, r7
+ 8000880: bd80 pop {r7, pc}
...
-08000868 :
+08000884 :
* implementation in user file.
* @param TickPriority Tick interrupt priority.
* @retval HAL status
*/
__weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority)
{
- 8000868: b580 push {r7, lr}
- 800086a: b084 sub sp, #16
- 800086c: af00 add r7, sp, #0
- 800086e: 6078 str r0, [r7, #4]
+ 8000884: b580 push {r7, lr}
+ 8000886: b084 sub sp, #16
+ 8000888: af00 add r7, sp, #0
+ 800088a: 6078 str r0, [r7, #4]
HAL_StatusTypeDef status = HAL_OK;
- 8000870: 2300 movs r3, #0
- 8000872: 73fb strb r3, [r7, #15]
+ 800088c: 2300 movs r3, #0
+ 800088e: 73fb strb r3, [r7, #15]
if (uwTickFreq != 0U)
- 8000874: 4b16 ldr r3, [pc, #88] @ (80008d0 )
- 8000876: 681b ldr r3, [r3, #0]
- 8000878: 2b00 cmp r3, #0
- 800087a: d022 beq.n 80008c2
+ 8000890: 4b16 ldr r3, [pc, #88] @ (80008ec )
+ 8000892: 681b ldr r3, [r3, #0]
+ 8000894: 2b00 cmp r3, #0
+ 8000896: d022 beq.n 80008de
{
/*Configure the SysTick to have interrupt in 1ms time basis*/
if (HAL_SYSTICK_Config(SystemCoreClock / (1000U / uwTickFreq)) == 0U)
- 800087c: 4b15 ldr r3, [pc, #84] @ (80008d4 )
- 800087e: 681a ldr r2, [r3, #0]
- 8000880: 4b13 ldr r3, [pc, #76] @ (80008d0 )
- 8000882: 681b ldr r3, [r3, #0]
- 8000884: f44f 717a mov.w r1, #1000 @ 0x3e8
- 8000888: fbb1 f3f3 udiv r3, r1, r3
- 800088c: fbb2 f3f3 udiv r3, r2, r3
- 8000890: 4618 mov r0, r3
- 8000892: f000 f938 bl 8000b06
- 8000896: 4603 mov r3, r0
- 8000898: 2b00 cmp r3, #0
- 800089a: d10f bne.n 80008bc
+ 8000898: 4b15 ldr r3, [pc, #84] @ (80008f0 )
+ 800089a: 681a ldr r2, [r3, #0]
+ 800089c: 4b13 ldr r3, [pc, #76] @ (80008ec )
+ 800089e: 681b ldr r3, [r3, #0]
+ 80008a0: f44f 717a mov.w r1, #1000 @ 0x3e8
+ 80008a4: fbb1 f3f3 udiv r3, r1, r3
+ 80008a8: fbb2 f3f3 udiv r3, r2, r3
+ 80008ac: 4618 mov r0, r3
+ 80008ae: f000 f938 bl 8000b22
+ 80008b2: 4603 mov r3, r0
+ 80008b4: 2b00 cmp r3, #0
+ 80008b6: d10f bne.n 80008d8
{
/* Configure the SysTick IRQ priority */
if (TickPriority < (1UL << __NVIC_PRIO_BITS))
- 800089c: 687b ldr r3, [r7, #4]
- 800089e: 2b0f cmp r3, #15
- 80008a0: d809 bhi.n 80008b6