123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752 |
- ARM GAS /tmp/cclhzA2e.s page 1
- 1 .cpu cortex-m4
- 2 .arch armv7e-m
- 3 .fpu fpv4-sp-d16
- 4 .eabi_attribute 27, 1
- 5 .eabi_attribute 28, 1
- 6 .eabi_attribute 20, 1
- 7 .eabi_attribute 21, 1
- 8 .eabi_attribute 23, 3
- 9 .eabi_attribute 24, 1
- 10 .eabi_attribute 25, 1
- 11 .eabi_attribute 26, 1
- 12 .eabi_attribute 30, 1
- 13 .eabi_attribute 34, 1
- 14 .eabi_attribute 18, 4
- 15 .file "main.c"
- 16 .text
- 17 .Ltext0:
- 18 .cfi_sections .debug_frame
- 19 .section .text.SystemClock_Config,"ax",%progbits
- 20 .align 1
- 21 .global SystemClock_Config
- 22 .syntax unified
- 23 .thumb
- 24 .thumb_func
- 26 SystemClock_Config:
- 27 .LFB131:
- 28 .file 1 "Src/main.c"
- 1:Src/main.c **** /* USER CODE BEGIN Header */
- 2:Src/main.c **** /**
- 3:Src/main.c **** ******************************************************************************
- 4:Src/main.c **** * @file : main.c
- 5:Src/main.c **** * @brief : Main program body
- 6:Src/main.c **** * @attention
- 7:Src/main.c **** *
- 8:Src/main.c **** * <h2><center>© Copyright (c) 2019 STMicroelectronics.
- 9:Src/main.c **** * All rights reserved.</center></h2>
- 10:Src/main.c **** *
- 11:Src/main.c **** * This software component is licensed by ST under BSD 3-Clause license,
- 12:Src/main.c **** * the License; You may not use this file except in compliance with the
- 13:Src/main.c **** * License. You may obtain a copy of the License at:
- 14:Src/main.c **** * www.st.com/SLA0044
- 15:Src/main.c **** *
- 16:Src/main.c **** ******************************************************************************
- 17:Src/main.c **** */
- 18:Src/main.c **** /* USER CODE END Header */
- 19:Src/main.c ****
- 20:Src/main.c **** /* Includes ------------------------------------------------------------------*/
- 21:Src/main.c **** #include"main.h"
- 22:Src/main.c **** #include "adc.h"
- 23:Src/main.c **** #include "usart.h"
- 24:Src/main.c **** #include "gpio.h"
- 25:Src/main.c ****
- 26:Src/main.c **** /* Private variables ---------------------------------------------------------*/
- 27:Src/main.c **** #define VECT_TAB_OFFSET 0x10000
- 28:Src/main.c **** int tankstatus = 0;
- 29:Src/main.c **** uint16_t M4_AD_Value = 0;
- 30:Src/main.c **** float M4_voltage_V =0;
- ARM GAS /tmp/cclhzA2e.s page 2
- 31:Src/main.c **** float M4_pH_mid = 1.500;
- 32:Src/main.c **** float M4_pH_low = 2.030;
- 33:Src/main.c **** float M4_pH_high =0.975;
- 34:Src/main.c **** float M4_PH=0;
- 35:Src/main.c **** /* USER CODE BEGIN PV */
- 36:Src/main.c **** typedef void (*pFunction)(void);
- 37:Src/main.c **** /* USER CODE END PV */
- 38:Src/main.c **** /* Private function prototypes -----------------------------------------------*/
- 39:Src/main.c **** void SystemClock_Config(void);
- 40:Src/main.c **** /* USER CODE BEGIN PFP */
- 41:Src/main.c **** /* USER CODE END PFP */
- 42:Src/main.c **** /* Private user code ---------------------------------------------------------*/
- 43:Src/main.c **** /* USER CODE BEGIN 0 */
- 44:Src/main.c **** /* USER CODE END 0 */
- 45:Src/main.c **** /**
- 46:Src/main.c **** * @brief The application entry point.
- 47:Src/main.c **** * @retval int
- 48:Src/main.c **** */
- 49:Src/main.c **** int main(void)
- 50:Src/main.c **** {
- 51:Src/main.c **** SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET;
- 52:Src/main.c **** HAL_Init();
- 53:Src/main.c **** SystemClock_Config();
- 54:Src/main.c **** MX_GPIO_Init();
- 55:Src/main.c **** MX_USART2_UART_Init();
- 56:Src/main.c **** MX_UART4_Init();
- 57:Src/main.c **** MX_USART1_UART_Init();
- 58:Src/main.c **** MX_ADC1_Init();
- 59:Src/main.c **** while (1)
- 60:Src/main.c **** {
- 61:Src/main.c **** HAL_ADC_Start(&hadc1);
- 62:Src/main.c **** HAL_ADC_PollForConversion(&hadc1, 50);
- 63:Src/main.c **** if(HAL_IS_BIT_SET(HAL_ADC_GetState(&hadc1), HAL_ADC_STATE_REG_EOC))
- 64:Src/main.c **** {
- 65:Src/main.c **** M4_AD_Value = HAL_ADC_GetValue(&hadc1);
- 66:Src/main.c **** M4_voltage_V = M4_AD_Value*3.3f/4096;
- 67:Src/main.c **** if (M4_voltage_V > M4_pH_mid)
- 68:Src/main.c **** {
- 69:Src/main.c **** M4_PH = 7.0 - 3.0 / (M4_pH_low - M4_pH_mid) * (M4_voltage_V - M4_pH_mid);
- 70:Src/main.c **** }
- 71:Src/main.c **** else
- 72:Src/main.c **** {
- 73:Src/main.c **** M4_PH = 7.0 - 3.0 / (M4_pH_mid - M4_pH_high) * (M4_voltage_V - M4_pH_mid);
- 74:Src/main.c **** }
- 75:Src/main.c **** }
- 76:Src/main.c **** HAL_UART_Transmit(&huart4,(unsigned char*)&M4_PH,4,10);
- 77:Src/main.c **** HAL_Delay(10000);
- 78:Src/main.c **** if(M4_PH<14 && tankstatus == 0)
- 79:Src/main.c **** {
- 80:Src/main.c **** HAL_GPIO_WritePin(GPIOD,GPIO_PIN_15, GPIO_PIN_SET);
- 81:Src/main.c ****
- 82:Src/main.c **** HAL_Delay(30000);
- 83:Src/main.c ****
- 84:Src/main.c **** HAL_GPIO_WritePin(GPIOD,GPIO_PIN_15, GPIO_PIN_RESET);
- 85:Src/main.c ****
- 86:Src/main.c **** }
- 87:Src/main.c **** }
- ARM GAS /tmp/cclhzA2e.s page 3
- 88:Src/main.c **** }
- 89:Src/main.c **** void SystemClock_Config(void)
- 90:Src/main.c **** {
- 29 .loc 1 90 1 view -0
- 30 .cfi_startproc
- 31 @ args = 0, pretend = 0, frame = 80
- 32 @ frame_needed = 0, uses_anonymous_args = 0
- 33 0000 30B5 push {r4, r5, lr}
- 34 .LCFI0:
- 35 .cfi_def_cfa_offset 12
- 36 .cfi_offset 4, -12
- 37 .cfi_offset 5, -8
- 38 .cfi_offset 14, -4
- 39 0002 95B0 sub sp, sp, #84
- 40 .LCFI1:
- 41 .cfi_def_cfa_offset 96
- 91:Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0};
- 42 .loc 1 91 3 view .LVU1
- 43 .loc 1 91 22 is_stmt 0 view .LVU2
- 44 0004 3022 movs r2, #48
- 45 0006 0021 movs r1, #0
- 46 0008 08A8 add r0, sp, #32
- 47 000a FFF7FEFF bl memset
- 48 .LVL0:
- 92:Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
- 49 .loc 1 92 3 is_stmt 1 view .LVU3
- 50 .loc 1 92 22 is_stmt 0 view .LVU4
- 51 000e 0024 movs r4, #0
- 52 0010 0394 str r4, [sp, #12]
- 53 0012 0494 str r4, [sp, #16]
- 54 0014 0594 str r4, [sp, #20]
- 55 0016 0694 str r4, [sp, #24]
- 56 0018 0794 str r4, [sp, #28]
- 93:Src/main.c **** __HAL_RCC_PWR_CLK_ENABLE();
- 57 .loc 1 93 3 is_stmt 1 view .LVU5
- 58 .LBB2:
- 59 .loc 1 93 3 view .LVU6
- 60 001a 0194 str r4, [sp, #4]
- 61 .loc 1 93 3 view .LVU7
- 62 001c 1A4B ldr r3, .L3
- 63 001e 1A6C ldr r2, [r3, #64]
- 64 0020 42F08052 orr r2, r2, #268435456
- 65 0024 1A64 str r2, [r3, #64]
- 66 .loc 1 93 3 view .LVU8
- 67 0026 1B6C ldr r3, [r3, #64]
- 68 0028 03F08053 and r3, r3, #268435456
- 69 002c 0193 str r3, [sp, #4]
- 70 .loc 1 93 3 view .LVU9
- 71 002e 019B ldr r3, [sp, #4]
- 72 .LBE2:
- 73 .loc 1 93 3 view .LVU10
- 94:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
- 74 .loc 1 94 3 view .LVU11
- 75 .LBB3:
- 76 .loc 1 94 3 view .LVU12
- 77 0030 0294 str r4, [sp, #8]
- 78 .loc 1 94 3 view .LVU13
- ARM GAS /tmp/cclhzA2e.s page 4
- 79 0032 164B ldr r3, .L3+4
- 80 0034 1A68 ldr r2, [r3]
- 81 0036 42F48042 orr r2, r2, #16384
- 82 003a 1A60 str r2, [r3]
- 83 .loc 1 94 3 view .LVU14
- 84 003c 1B68 ldr r3, [r3]
- 85 003e 03F48043 and r3, r3, #16384
- 86 0042 0293 str r3, [sp, #8]
- 87 .loc 1 94 3 view .LVU15
- 88 0044 029B ldr r3, [sp, #8]
- 89 .LBE3:
- 90 .loc 1 94 3 view .LVU16
- 95:Src/main.c **** RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
- 91 .loc 1 95 3 view .LVU17
- 92 .loc 1 95 36 is_stmt 0 view .LVU18
- 93 0046 0225 movs r5, #2
- 94 0048 0895 str r5, [sp, #32]
- 96:Src/main.c **** RCC_OscInitStruct.HSIState = RCC_HSI_ON;
- 95 .loc 1 96 3 is_stmt 1 view .LVU19
- 96 .loc 1 96 30 is_stmt 0 view .LVU20
- 97 004a 0123 movs r3, #1
- 98 004c 0B93 str r3, [sp, #44]
- 97:Src/main.c **** RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
- 99 .loc 1 97 3 is_stmt 1 view .LVU21
- 100 .loc 1 97 41 is_stmt 0 view .LVU22
- 101 004e 1023 movs r3, #16
- 102 0050 0C93 str r3, [sp, #48]
- 98:Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
- 103 .loc 1 98 3 is_stmt 1 view .LVU23
- 104 .loc 1 98 34 is_stmt 0 view .LVU24
- 105 0052 0E95 str r5, [sp, #56]
- 99:Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
- 106 .loc 1 99 3 is_stmt 1 view .LVU25
- 107 .loc 1 99 35 is_stmt 0 view .LVU26
- 108 0054 0F94 str r4, [sp, #60]
- 100:Src/main.c **** RCC_OscInitStruct.PLL.PLLM = 8;
- 109 .loc 1 100 3 is_stmt 1 view .LVU27
- 110 .loc 1 100 30 is_stmt 0 view .LVU28
- 111 0056 0823 movs r3, #8
- 112 0058 1093 str r3, [sp, #64]
- 101:Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 72;
- 113 .loc 1 101 3 is_stmt 1 view .LVU29
- 114 .loc 1 101 30 is_stmt 0 view .LVU30
- 115 005a 4823 movs r3, #72
- 116 005c 1193 str r3, [sp, #68]
- 102:Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
- 117 .loc 1 102 3 is_stmt 1 view .LVU31
- 118 .loc 1 102 30 is_stmt 0 view .LVU32
- 119 005e 1295 str r5, [sp, #72]
- 103:Src/main.c **** RCC_OscInitStruct.PLL.PLLQ = 3;
- 120 .loc 1 103 3 is_stmt 1 view .LVU33
- 121 .loc 1 103 30 is_stmt 0 view .LVU34
- 122 0060 0323 movs r3, #3
- 123 0062 1393 str r3, [sp, #76]
- 104:Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
- 124 .loc 1 104 3 is_stmt 1 view .LVU35
- 105:Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
- ARM GAS /tmp/cclhzA2e.s page 5
- 125 .loc 1 105 3 view .LVU36
- 126 .loc 1 105 7 is_stmt 0 view .LVU37
- 127 0064 08A8 add r0, sp, #32
- 128 0066 FFF7FEFF bl HAL_RCC_OscConfig
- 129 .LVL1:
- 106:Src/main.c **** {
- 107:Src/main.c **** Error_Handler();
- 108:Src/main.c **** }
- 109:Src/main.c **** RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
- 130 .loc 1 109 3 is_stmt 1 view .LVU38
- 131 .loc 1 109 31 is_stmt 0 view .LVU39
- 132 006a 0F23 movs r3, #15
- 133 006c 0393 str r3, [sp, #12]
- 110:Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
- 111:Src/main.c **** RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
- 134 .loc 1 111 3 is_stmt 1 view .LVU40
- 135 .loc 1 111 34 is_stmt 0 view .LVU41
- 136 006e 0495 str r5, [sp, #16]
- 112:Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
- 137 .loc 1 112 3 is_stmt 1 view .LVU42
- 138 .loc 1 112 35 is_stmt 0 view .LVU43
- 139 0070 0594 str r4, [sp, #20]
- 113:Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
- 140 .loc 1 113 3 is_stmt 1 view .LVU44
- 141 .loc 1 113 36 is_stmt 0 view .LVU45
- 142 0072 4FF48053 mov r3, #4096
- 143 0076 0693 str r3, [sp, #24]
- 114:Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
- 144 .loc 1 114 3 is_stmt 1 view .LVU46
- 145 .loc 1 114 36 is_stmt 0 view .LVU47
- 146 0078 0794 str r4, [sp, #28]
- 115:Src/main.c **** if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
- 147 .loc 1 115 3 is_stmt 1 view .LVU48
- 148 .loc 1 115 7 is_stmt 0 view .LVU49
- 149 007a 2946 mov r1, r5
- 150 007c 03A8 add r0, sp, #12
- 151 007e FFF7FEFF bl HAL_RCC_ClockConfig
- 152 .LVL2:
- 116:Src/main.c **** {
- 117:Src/main.c **** Error_Handler();
- 118:Src/main.c **** }
- 119:Src/main.c **** }
- 153 .loc 1 119 1 view .LVU50
- 154 0082 15B0 add sp, sp, #84
- 155 .LCFI2:
- 156 .cfi_def_cfa_offset 12
- 157 @ sp needed
- 158 0084 30BD pop {r4, r5, pc}
- 159 .L4:
- 160 0086 00BF .align 2
- 161 .L3:
- 162 0088 00380240 .word 1073887232
- 163 008c 00700040 .word 1073770496
- 164 .cfi_endproc
- 165 .LFE131:
- 167 .global __aeabi_f2d
- 168 .global __aeabi_ddiv
- ARM GAS /tmp/cclhzA2e.s page 6
- 169 .global __aeabi_dmul
- 170 .global __aeabi_dsub
- 171 .global __aeabi_d2f
- 172 .section .text.main,"ax",%progbits
- 173 .align 1
- 174 .global main
- 175 .syntax unified
- 176 .thumb
- 177 .thumb_func
- 179 main:
- 180 .LFB130:
- 50:Src/main.c **** SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET;
- 181 .loc 1 50 1 is_stmt 1 view -0
- 182 .cfi_startproc
- 183 @ Volatile: function does not return.
- 184 @ args = 0, pretend = 0, frame = 0
- 185 @ frame_needed = 0, uses_anonymous_args = 0
- 186 0000 08B5 push {r3, lr}
- 187 .LCFI3:
- 188 .cfi_def_cfa_offset 8
- 189 .cfi_offset 3, -8
- 190 .cfi_offset 14, -4
- 51:Src/main.c **** HAL_Init();
- 191 .loc 1 51 3 view .LVU52
- 51:Src/main.c **** HAL_Init();
- 192 .loc 1 51 13 is_stmt 0 view .LVU53
- 193 0002 5B4B ldr r3, .L17
- 194 0004 5B4A ldr r2, .L17+4
- 195 0006 9A60 str r2, [r3, #8]
- 52:Src/main.c **** SystemClock_Config();
- 196 .loc 1 52 3 is_stmt 1 view .LVU54
- 197 0008 FFF7FEFF bl HAL_Init
- 198 .LVL3:
- 53:Src/main.c **** MX_GPIO_Init();
- 199 .loc 1 53 3 view .LVU55
- 200 000c FFF7FEFF bl SystemClock_Config
- 201 .LVL4:
- 54:Src/main.c **** MX_USART2_UART_Init();
- 202 .loc 1 54 3 view .LVU56
- 203 0010 FFF7FEFF bl MX_GPIO_Init
- 204 .LVL5:
- 55:Src/main.c **** MX_UART4_Init();
- 205 .loc 1 55 3 view .LVU57
- 206 0014 FFF7FEFF bl MX_USART2_UART_Init
- 207 .LVL6:
- 56:Src/main.c **** MX_USART1_UART_Init();
- 208 .loc 1 56 3 view .LVU58
- 209 0018 FFF7FEFF bl MX_UART4_Init
- 210 .LVL7:
- 57:Src/main.c **** MX_ADC1_Init();
- 211 .loc 1 57 3 view .LVU59
- 212 001c FFF7FEFF bl MX_USART1_UART_Init
- 213 .LVL8:
- 58:Src/main.c **** while (1)
- 214 .loc 1 58 3 view .LVU60
- 215 0020 FFF7FEFF bl MX_ADC1_Init
- 216 .LVL9:
- ARM GAS /tmp/cclhzA2e.s page 7
- 217 .L6:
- 59:Src/main.c **** {
- 218 .loc 1 59 3 view .LVU61
- 61:Src/main.c **** HAL_ADC_PollForConversion(&hadc1, 50);
- 219 .loc 1 61 5 view .LVU62
- 220 0024 544C ldr r4, .L17+8
- 221 0026 2046 mov r0, r4
- 222 0028 FFF7FEFF bl HAL_ADC_Start
- 223 .LVL10:
- 62:Src/main.c **** if(HAL_IS_BIT_SET(HAL_ADC_GetState(&hadc1), HAL_ADC_STATE_REG_EOC))
- 224 .loc 1 62 5 view .LVU63
- 225 002c 3221 movs r1, #50
- 226 002e 2046 mov r0, r4
- 227 0030 FFF7FEFF bl HAL_ADC_PollForConversion
- 228 .LVL11:
- 63:Src/main.c **** {
- 229 .loc 1 63 5 view .LVU64
- 63:Src/main.c **** {
- 230 .loc 1 63 8 is_stmt 0 view .LVU65
- 231 0034 2046 mov r0, r4
- 232 0036 FFF7FEFF bl HAL_ADC_GetState
- 233 .LVL12:
- 63:Src/main.c **** {
- 234 .loc 1 63 7 view .LVU66
- 235 003a 10F4007F tst r0, #512
- 236 003e 29D1 bne .L16
- 237 .L7:
- 76:Src/main.c **** HAL_Delay(10000);
- 238 .loc 1 76 5 is_stmt 1 view .LVU67
- 239 0040 4E4C ldr r4, .L17+12
- 240 0042 0A23 movs r3, #10
- 241 0044 0422 movs r2, #4
- 242 0046 2146 mov r1, r4
- 243 0048 4D48 ldr r0, .L17+16
- 244 004a FFF7FEFF bl HAL_UART_Transmit
- 245 .LVL13:
- 77:Src/main.c **** if(M4_PH<14 && tankstatus == 0)
- 246 .loc 1 77 5 view .LVU68
- 247 004e 42F21070 movw r0, #10000
- 248 0052 FFF7FEFF bl HAL_Delay
- 249 .LVL14:
- 78:Src/main.c **** {
- 250 .loc 1 78 5 view .LVU69
- 78:Src/main.c **** {
- 251 .loc 1 78 13 is_stmt 0 view .LVU70
- 252 0056 94ED007A vldr.32 s14, [r4]
- 78:Src/main.c **** {
- 253 .loc 1 78 7 view .LVU71
- 254 005a F2EE0C7A vmov.f32 s15, #1.4e+1
- 255 005e B4EEE77A vcmpe.f32 s14, s15
- 256 0062 F1EE10FA vmrs APSR_nzcv, FPSCR
- 257 0066 DDD5 bpl .L6
- 78:Src/main.c **** {
- 258 .loc 1 78 31 discriminator 1 view .LVU72
- 259 0068 464B ldr r3, .L17+20
- 260 006a 1B68 ldr r3, [r3]
- 78:Src/main.c **** {
- ARM GAS /tmp/cclhzA2e.s page 8
- 261 .loc 1 78 17 discriminator 1 view .LVU73
- 262 006c 002B cmp r3, #0
- 263 006e D9D1 bne .L6
- 80:Src/main.c ****
- 264 .loc 1 80 10 is_stmt 1 view .LVU74
- 265 0070 454C ldr r4, .L17+24
- 266 0072 0122 movs r2, #1
- 267 0074 4FF40041 mov r1, #32768
- 268 0078 2046 mov r0, r4
- 269 007a FFF7FEFF bl HAL_GPIO_WritePin
- 270 .LVL15:
- 82:Src/main.c ****
- 271 .loc 1 82 10 view .LVU75
- 272 007e 47F23050 movw r0, #30000
- 273 0082 FFF7FEFF bl HAL_Delay
- 274 .LVL16:
- 84:Src/main.c ****
- 275 .loc 1 84 10 view .LVU76
- 276 0086 0022 movs r2, #0
- 277 0088 4FF40041 mov r1, #32768
- 278 008c 2046 mov r0, r4
- 279 008e FFF7FEFF bl HAL_GPIO_WritePin
- 280 .LVL17:
- 281 0092 C7E7 b .L6
- 282 .L16:
- 65:Src/main.c **** M4_voltage_V = M4_AD_Value*3.3f/4096;
- 283 .loc 1 65 11 view .LVU77
- 65:Src/main.c **** M4_voltage_V = M4_AD_Value*3.3f/4096;
- 284 .loc 1 65 25 is_stmt 0 view .LVU78
- 285 0094 2046 mov r0, r4
- 286 0096 FFF7FEFF bl HAL_ADC_GetValue
- 287 .LVL18:
- 65:Src/main.c **** M4_voltage_V = M4_AD_Value*3.3f/4096;
- 288 .loc 1 65 23 view .LVU79
- 289 009a 80B2 uxth r0, r0
- 290 009c 3B4B ldr r3, .L17+28
- 291 009e 1880 strh r0, [r3] @ movhi
- 66:Src/main.c **** if (M4_voltage_V > M4_pH_mid)
- 292 .loc 1 66 11 is_stmt 1 view .LVU80
- 66:Src/main.c **** if (M4_voltage_V > M4_pH_mid)
- 293 .loc 1 66 37 is_stmt 0 view .LVU81
- 294 00a0 07EE900A vmov s15, r0 @ int
- 295 00a4 B8EEE78A vcvt.f32.s32 s16, s15
- 296 00a8 DFED397A vldr.32 s15, .L17+32
- 297 00ac 28EE278A vmul.f32 s16, s16, s15
- 66:Src/main.c **** if (M4_voltage_V > M4_pH_mid)
- 298 .loc 1 66 42 view .LVU82
- 299 00b0 DFED387A vldr.32 s15, .L17+36
- 300 00b4 28EE278A vmul.f32 s16, s16, s15
- 66:Src/main.c **** if (M4_voltage_V > M4_pH_mid)
- 301 .loc 1 66 24 view .LVU83
- 302 00b8 374B ldr r3, .L17+40
- 303 00ba 83ED008A vstr.32 s16, [r3]
- 67:Src/main.c **** {
- 304 .loc 1 67 11 is_stmt 1 view .LVU84
- 67:Src/main.c **** {
- 305 .loc 1 67 28 is_stmt 0 view .LVU85
- ARM GAS /tmp/cclhzA2e.s page 9
- 306 00be 374B ldr r3, .L17+44
- 307 00c0 D3ED008A vldr.32 s17, [r3]
- 67:Src/main.c **** {
- 308 .loc 1 67 14 view .LVU86
- 309 00c4 B4EEE88A vcmpe.f32 s16, s17
- 310 00c8 F1EE10FA vmrs APSR_nzcv, FPSCR
- 311 00cc 27DD ble .L14
- 69:Src/main.c **** }
- 312 .loc 1 69 16 is_stmt 1 view .LVU87
- 69:Src/main.c **** }
- 313 .loc 1 69 47 is_stmt 0 view .LVU88
- 314 00ce 344B ldr r3, .L17+48
- 315 00d0 D3ED007A vldr.32 s15, [r3]
- 316 00d4 77EEE87A vsub.f32 s15, s15, s17
- 317 00d8 17EE900A vmov r0, s15
- 318 00dc FFF7FEFF bl __aeabi_f2d
- 319 .LVL19:
- 320 00e0 0246 mov r2, r0
- 321 00e2 0B46 mov r3, r1
- 69:Src/main.c **** }
- 322 .loc 1 69 34 view .LVU89
- 323 00e4 0020 movs r0, #0
- 324 00e6 2F49 ldr r1, .L17+52
- 325 00e8 FFF7FEFF bl __aeabi_ddiv
- 326 .LVL20:
- 327 00ec 0446 mov r4, r0
- 328 00ee 0D46 mov r5, r1
- 69:Src/main.c **** }
- 329 .loc 1 69 76 view .LVU90
- 330 00f0 78EE687A vsub.f32 s15, s16, s17
- 331 00f4 17EE900A vmov r0, s15
- 332 00f8 FFF7FEFF bl __aeabi_f2d
- 333 .LVL21:
- 334 00fc 0246 mov r2, r0
- 335 00fe 0B46 mov r3, r1
- 69:Src/main.c **** }
- 336 .loc 1 69 60 view .LVU91
- 337 0100 2046 mov r0, r4
- 338 0102 2946 mov r1, r5
- 339 0104 FFF7FEFF bl __aeabi_dmul
- 340 .LVL22:
- 341 0108 0246 mov r2, r0
- 342 010a 0B46 mov r3, r1
- 69:Src/main.c **** }
- 343 .loc 1 69 28 view .LVU92
- 344 010c 0020 movs r0, #0
- 345 010e 2649 ldr r1, .L17+56
- 346 0110 FFF7FEFF bl __aeabi_dsub
- 347 .LVL23:
- 348 0114 FFF7FEFF bl __aeabi_d2f
- 349 .LVL24:
- 69:Src/main.c **** }
- 350 .loc 1 69 22 view .LVU93
- 351 0118 184B ldr r3, .L17+12
- 352 011a 1860 str r0, [r3] @ float
- 353 011c 90E7 b .L7
- 354 .L14:
- ARM GAS /tmp/cclhzA2e.s page 10
- 73:Src/main.c **** }
- 355 .loc 1 73 16 is_stmt 1 view .LVU94
- 73:Src/main.c **** }
- 356 .loc 1 73 47 is_stmt 0 view .LVU95
- 357 011e 234B ldr r3, .L17+60
- 358 0120 D3ED007A vldr.32 s15, [r3]
- 359 0124 78EEE77A vsub.f32 s15, s17, s15
- 360 0128 17EE900A vmov r0, s15
- 361 012c FFF7FEFF bl __aeabi_f2d
- 362 .LVL25:
- 363 0130 0246 mov r2, r0
- 364 0132 0B46 mov r3, r1
- 73:Src/main.c **** }
- 365 .loc 1 73 34 view .LVU96
- 366 0134 0020 movs r0, #0
- 367 0136 1B49 ldr r1, .L17+52
- 368 0138 FFF7FEFF bl __aeabi_ddiv
- 369 .LVL26:
- 370 013c 0446 mov r4, r0
- 371 013e 0D46 mov r5, r1
- 73:Src/main.c **** }
- 372 .loc 1 73 77 view .LVU97
- 373 0140 78EE687A vsub.f32 s15, s16, s17
- 374 0144 17EE900A vmov r0, s15
- 375 0148 FFF7FEFF bl __aeabi_f2d
- 376 .LVL27:
- 377 014c 0246 mov r2, r0
- 378 014e 0B46 mov r3, r1
- 73:Src/main.c **** }
- 379 .loc 1 73 61 view .LVU98
- 380 0150 2046 mov r0, r4
- 381 0152 2946 mov r1, r5
- 382 0154 FFF7FEFF bl __aeabi_dmul
- 383 .LVL28:
- 384 0158 0246 mov r2, r0
- 385 015a 0B46 mov r3, r1
- 73:Src/main.c **** }
- 386 .loc 1 73 28 view .LVU99
- 387 015c 0020 movs r0, #0
- 388 015e 1249 ldr r1, .L17+56
- 389 0160 FFF7FEFF bl __aeabi_dsub
- 390 .LVL29:
- 391 0164 FFF7FEFF bl __aeabi_d2f
- 392 .LVL30:
- 73:Src/main.c **** }
- 393 .loc 1 73 22 view .LVU100
- 394 0168 044B ldr r3, .L17+12
- 395 016a 1860 str r0, [r3] @ float
- 396 016c 68E7 b .L7
- 397 .L18:
- 398 016e 00BF .align 2
- 399 .L17:
- 400 0170 00ED00E0 .word -536810240
- 401 0174 00000108 .word 134283264
- 402 0178 00000000 .word hadc1
- 403 017c 00000000 .word .LANCHOR4
- 404 0180 00000000 .word huart4
- ARM GAS /tmp/cclhzA2e.s page 11
- 405 0184 00000000 .word .LANCHOR6
- 406 0188 000C0240 .word 1073875968
- 407 018c 00000000 .word .LANCHOR0
- 408 0190 33335340 .word 1079194419
- 409 0194 00008039 .word 964689920
- 410 0198 00000000 .word .LANCHOR1
- 411 019c 00000000 .word .LANCHOR2
- 412 01a0 00000000 .word .LANCHOR3
- 413 01a4 00000840 .word 1074266112
- 414 01a8 00001C40 .word 1075576832
- 415 01ac 00000000 .word .LANCHOR5
- 416 .cfi_endproc
- 417 .LFE130:
- 419 .section .text.Error_Handler,"ax",%progbits
- 420 .align 1
- 421 .global Error_Handler
- 422 .syntax unified
- 423 .thumb
- 424 .thumb_func
- 426 Error_Handler:
- 427 .LFB132:
- 120:Src/main.c **** void Error_Handler(void)
- 121:Src/main.c **** {
- 428 .loc 1 121 1 is_stmt 1 view -0
- 429 .cfi_startproc
- 430 @ args = 0, pretend = 0, frame = 0
- 431 @ frame_needed = 0, uses_anonymous_args = 0
- 432 @ link register save eliminated.
- 122:Src/main.c **** }
- 433 .loc 1 122 1 view .LVU102
- 434 0000 7047 bx lr
- 435 .cfi_endproc
- 436 .LFE132:
- 438 .global M4_PH
- 439 .global M4_pH_high
- 440 .global M4_pH_low
- 441 .global M4_pH_mid
- 442 .global M4_voltage_V
- 443 .global M4_AD_Value
- 444 .global tankstatus
- 445 .section .bss.M4_AD_Value,"aw",%nobits
- 446 .align 1
- 447 .set .LANCHOR0,. + 0
- 450 M4_AD_Value:
- 451 0000 0000 .space 2
- 452 .section .bss.M4_PH,"aw",%nobits
- 453 .align 2
- 454 .set .LANCHOR4,. + 0
- 457 M4_PH:
- 458 0000 00000000 .space 4
- 459 .section .bss.M4_voltage_V,"aw",%nobits
- 460 .align 2
- 461 .set .LANCHOR1,. + 0
- 464 M4_voltage_V:
- 465 0000 00000000 .space 4
- 466 .section .bss.tankstatus,"aw",%nobits
- 467 .align 2
- ARM GAS /tmp/cclhzA2e.s page 12
- 468 .set .LANCHOR6,. + 0
- 471 tankstatus:
- 472 0000 00000000 .space 4
- 473 .section .data.M4_pH_high,"aw"
- 474 .align 2
- 475 .set .LANCHOR5,. + 0
- 478 M4_pH_high:
- 479 0000 9A99793F .word 1064933786
- 480 .section .data.M4_pH_low,"aw"
- 481 .align 2
- 482 .set .LANCHOR3,. + 0
- 485 M4_pH_low:
- 486 0000 85EB0140 .word 1073867653
- 487 .section .data.M4_pH_mid,"aw"
- 488 .align 2
- 489 .set .LANCHOR2,. + 0
- 492 M4_pH_mid:
- 493 0000 0000C03F .word 1069547520
- 494 .text
- 495 .Letext0:
- 496 .file 2 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/
- 497 .file 3 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/
- 498 .file 4 "Drivers/CMSIS/Include/core_cm4.h"
- 499 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h"
- 500 .file 6 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h"
- 501 .file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h"
- 502 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h"
- 503 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h"
- 504 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h"
- 505 .file 11 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h"
- 506 .file 12 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc.h"
- 507 .file 13 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_uart.h"
- 508 .file 14 "Inc/adc.h"
- 509 .file 15 "Inc/usart.h"
- 510 .file 16 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h"
- 511 .file 17 "Inc/gpio.h"
- 512 .file 18 "<built-in>"
- ARM GAS /tmp/cclhzA2e.s page 13
- DEFINED SYMBOLS
- *ABS*:0000000000000000 main.c
- /tmp/cclhzA2e.s:20 .text.SystemClock_Config:0000000000000000 $t
- /tmp/cclhzA2e.s:26 .text.SystemClock_Config:0000000000000000 SystemClock_Config
- /tmp/cclhzA2e.s:162 .text.SystemClock_Config:0000000000000088 $d
- /tmp/cclhzA2e.s:173 .text.main:0000000000000000 $t
- /tmp/cclhzA2e.s:179 .text.main:0000000000000000 main
- /tmp/cclhzA2e.s:400 .text.main:0000000000000170 $d
- /tmp/cclhzA2e.s:420 .text.Error_Handler:0000000000000000 $t
- /tmp/cclhzA2e.s:426 .text.Error_Handler:0000000000000000 Error_Handler
- /tmp/cclhzA2e.s:457 .bss.M4_PH:0000000000000000 M4_PH
- /tmp/cclhzA2e.s:478 .data.M4_pH_high:0000000000000000 M4_pH_high
- /tmp/cclhzA2e.s:485 .data.M4_pH_low:0000000000000000 M4_pH_low
- /tmp/cclhzA2e.s:492 .data.M4_pH_mid:0000000000000000 M4_pH_mid
- /tmp/cclhzA2e.s:464 .bss.M4_voltage_V:0000000000000000 M4_voltage_V
- /tmp/cclhzA2e.s:450 .bss.M4_AD_Value:0000000000000000 M4_AD_Value
- /tmp/cclhzA2e.s:471 .bss.tankstatus:0000000000000000 tankstatus
- /tmp/cclhzA2e.s:446 .bss.M4_AD_Value:0000000000000000 $d
- /tmp/cclhzA2e.s:453 .bss.M4_PH:0000000000000000 $d
- /tmp/cclhzA2e.s:460 .bss.M4_voltage_V:0000000000000000 $d
- /tmp/cclhzA2e.s:467 .bss.tankstatus:0000000000000000 $d
- /tmp/cclhzA2e.s:474 .data.M4_pH_high:0000000000000000 $d
- /tmp/cclhzA2e.s:481 .data.M4_pH_low:0000000000000000 $d
- /tmp/cclhzA2e.s:488 .data.M4_pH_mid:0000000000000000 $d
- UNDEFINED SYMBOLS
- memset
- HAL_RCC_OscConfig
- HAL_RCC_ClockConfig
- __aeabi_f2d
- __aeabi_ddiv
- __aeabi_dmul
- __aeabi_dsub
- __aeabi_d2f
- HAL_Init
- MX_GPIO_Init
- MX_USART2_UART_Init
- MX_UART4_Init
- MX_USART1_UART_Init
- MX_ADC1_Init
- HAL_ADC_Start
- HAL_ADC_PollForConversion
- HAL_ADC_GetState
- HAL_UART_Transmit
- HAL_Delay
- HAL_GPIO_WritePin
- HAL_ADC_GetValue
- hadc1
- huart4
|