2302 lines
151 KiB
Plaintext
2302 lines
151 KiB
Plaintext
ARM GAS /tmp/ccfpzjW9.s page 1
|
||
|
||
|
||
1 .cpu cortex-m4
|
||
2 .eabi_attribute 27, 1
|
||
3 .eabi_attribute 28, 1
|
||
4 .eabi_attribute 23, 1
|
||
5 .eabi_attribute 24, 1
|
||
6 .eabi_attribute 25, 1
|
||
7 .eabi_attribute 26, 1
|
||
8 .eabi_attribute 30, 2
|
||
9 .eabi_attribute 34, 1
|
||
10 .eabi_attribute 18, 4
|
||
11 .file "stm32g4xx_hal_opamp.c"
|
||
12 .text
|
||
13 .Ltext0:
|
||
14 .cfi_sections .debug_frame
|
||
15 .section .text.HAL_OPAMP_MspInit,"ax",%progbits
|
||
16 .align 1
|
||
17 .p2align 2,,3
|
||
18 .weak HAL_OPAMP_MspInit
|
||
19 .syntax unified
|
||
20 .thumb
|
||
21 .thumb_func
|
||
22 .fpu fpv4-sp-d16
|
||
24 HAL_OPAMP_MspInit:
|
||
25 .LFB331:
|
||
26 .file 1 "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c"
|
||
1:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
2:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ******************************************************************************
|
||
3:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @file stm32g4xx_hal_opamp.c
|
||
4:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @author MCD Application Team
|
||
5:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief OPAMP HAL module driver.
|
||
6:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * This file provides firmware functions to manage the following
|
||
7:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * functionalities of the operational amplifiers (OPAMP1,...OPAMP6)
|
||
8:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * peripheral:
|
||
9:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * + OPAMP Configuration
|
||
10:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * + OPAMP calibration
|
||
11:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * Thanks to
|
||
12:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * + Initialization/de-initialization functions
|
||
13:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * + I/O operation functions
|
||
14:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * + Peripheral Control functions
|
||
15:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * + Peripheral State functions
|
||
16:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *
|
||
17:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @verbatim
|
||
18:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ================================================================================
|
||
19:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ##### OPAMP Peripheral Features #####
|
||
20:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ================================================================================
|
||
21:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
22:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..] The device integrates up to 6 operational amplifiers OPAMP1, OPAMP2,
|
||
23:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP3, OPAMP4, OPAMP5 and OPAMP6:
|
||
24:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
25:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) The OPAMP(s) provides several exclusive running modes.
|
||
26:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Standalone mode
|
||
27:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Programmable Gain Amplifier (PGA) mode (Resistor feedback output)
|
||
28:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Follower mode
|
||
29:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
30:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) The OPAMP(s) provide(s) calibration capabilities.
|
||
31:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Calibration aims at correcting some offset for running mode.
|
||
32:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) The OPAMP uses either factory calibration settings OR user defined
|
||
ARM GAS /tmp/ccfpzjW9.s page 2
|
||
|
||
|
||
33:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** calibration (trimming) settings (i.e. trimming mode).
|
||
34:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) The user defined settings can be figured out using self calibration
|
||
35:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** handled by HAL_OPAMP_SelfCalibrate, HAL_OPAMPEx_SelfCalibrateAll
|
||
36:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) HAL_OPAMP_SelfCalibrate:
|
||
37:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Runs automatically the calibration in 2 steps.
|
||
38:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (90% of VDDA for NMOS transistors, 10% of VDDA for PMOS transistors).
|
||
39:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (As OPAMP is Rail-to-rail input/output, these 2 steps calibration is
|
||
40:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** appropriate and enough in most cases).
|
||
41:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Enables the user trimming mode
|
||
42:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Updates the init structure with trimming values with fresh calibration
|
||
43:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** results.
|
||
44:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** The user may store the calibration results for larger
|
||
45:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (ex monitoring the trimming as a function of temperature
|
||
46:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** for instance)
|
||
47:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) for STM32G4 devices having 6 OPAMPs
|
||
48:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_OPAMPEx_SelfCalibrateAll
|
||
49:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** runs calibration of 6 OPAMPs in parallel.
|
||
50:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
51:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) For any running mode, an additional Timer-controlled Mux (multiplexer)
|
||
52:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** mode can be set on top.
|
||
53:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Timer-controlled Mux mode allows Automatic switching of inputs
|
||
54:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** configuration (inverting and non inverting).
|
||
55:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Hence on top of defaults (primary) inverting and non-inverting inputs,
|
||
56:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** the user shall select secondary inverting and non inverting inputs.
|
||
57:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) TIM1 OC6, TIM8 OC6 and TIM20 OC6 provides the alternate switching
|
||
58:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** tempo between defaults (primary) and secondary inputs.
|
||
59:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) These 3 timers (TIM1, TIM8 and TIM20) can be combined to design a more
|
||
60:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** complex switching scheme. So that any of the selected channel can initiate
|
||
61:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** the configuration switch.
|
||
62:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
63:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Running mode: Standalone mode
|
||
64:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Gain is set externally (gain depends on external loads).
|
||
65:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Follower mode also possible externally by connecting the inverting input to
|
||
66:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** the output.
|
||
67:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
68:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Running mode: Follower mode
|
||
69:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Inverting Input is not connected.
|
||
70:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
71:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Running mode: Programmable Gain Amplifier (PGA) mode
|
||
72:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (Resistor feedback output)
|
||
73:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) The OPAMP(s) output(s) can be internally connected to resistor feedback
|
||
74:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** output.
|
||
75:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) The OPAMP inverting input can be "not" connected, signal to amplify is
|
||
76:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** connected to non inverting input and gain is positive (2,4,8,16,32 or 64)
|
||
77:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) The OPAMP inverting input can be connected to VINM0:
|
||
78:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** If signal is applied to non inverting input, gain is positive (2,4,8,16,32 or 64).
|
||
79:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** If signal is applied to inverting input, gain is negative (-1,-3,-7,-15-,31 or -63).
|
||
80:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** In both cases, the other input can be used as bias.
|
||
81:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
82:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
83:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ##### How to use this driver #####
|
||
84:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ================================================================================
|
||
85:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..]
|
||
86:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
87:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *** High speed / normal power mode ***
|
||
88:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ============================================
|
||
89:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..] To run in high speed mode:
|
||
ARM GAS /tmp/ccfpzjW9.s page 3
|
||
|
||
|
||
90:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
91:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Configure the OPAMP using HAL_OPAMP_Init() function:
|
||
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Select OPAMP_POWERMODE_HIGHSPEED
|
||
93:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Otherwise select OPAMP_POWERMODE_NORMAL
|
||
94:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
95:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *** Calibration ***
|
||
96:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ============================================
|
||
97:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..] To run the OPAMP calibration self calibration:
|
||
98:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
99:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Start calibration using HAL_OPAMP_SelfCalibrate.
|
||
100:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** Store the calibration results.
|
||
101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *** Running mode ***
|
||
103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ============================================
|
||
104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..] To use the OPAMP, perform the following steps:
|
||
105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Fill in the HAL_OPAMP_MspInit() to
|
||
107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Configure the OPAMP input AND output in analog mode using
|
||
108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_GPIO_Init() to map the OPAMP output to the GPIO pin.
|
||
109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Registrate Callbacks
|
||
111:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) The compilation define USE_HAL_OPAMP_REGISTER_CALLBACKS when set to 1
|
||
112:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** allows the user to configure dynamically the driver callbacks.
|
||
113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Use Functions @ref HAL_OPAMP_RegisterCallback() to register a user callback,
|
||
115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** it allows to register following callbacks:
|
||
116:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (+++) MspInitCallback : OPAMP MspInit.
|
||
117:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (+++) MspDeInitCallback : OPAMP MspDeInit.
|
||
118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** This function takes as parameters the HAL peripheral handle, the Callback ID
|
||
119:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** and a pointer to the user callback function.
|
||
120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
121:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Use function @ref HAL_OPAMP_UnRegisterCallback() to reset a callback to the default
|
||
122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** weak (surcharged) function. It allows to reset following callbacks:
|
||
123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (+++) MspInitCallback : OPAMP MspInit.
|
||
124:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (+++) MspDeInitCallback : OPAMP MspDeInit.
|
||
125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (+++) All Callbacks
|
||
126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Configure the OPAMP using HAL_OPAMP_Init() function:
|
||
128:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Select the mode
|
||
129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Select the inverting input
|
||
130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Select the non-inverting input
|
||
131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Select if the internal output should be enabled/disabled (if enabled, regular I/O output
|
||
132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Select if the Timer controlled Mux is disabled or enabled and controlled by specified ti
|
||
133:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) If the Timer controlled Mux mode is enabled, select the secondary inverting input
|
||
134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) If the Timer controlled Mux mode is enabled, Select the secondary non-inverting input
|
||
135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) If PGA mode is enabled, Select if inverting input is connected.
|
||
136:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) If PGA mode is enabled, Select PGA gain to be used.
|
||
137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) Select either factory or user defined trimming mode.
|
||
138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) If the user defined trimming mode is enabled, select PMOS & NMOS trimming values
|
||
139:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (typ. settings returned by HAL_OPAMP_SelfCalibrate function).
|
||
140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Enable the OPAMP using HAL_OPAMP_Start() function.
|
||
142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Disable the OPAMP using HAL_OPAMP_Stop() function.
|
||
144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Lock the OPAMP in running mode using HAL_OPAMP_Lock() & HAL_OPAMP_TimerMuxLock functions.
|
||
146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** From then the configuration can only be modified
|
||
ARM GAS /tmp/ccfpzjW9.s page 4
|
||
|
||
|
||
147:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) After HW reset
|
||
148:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) OR thanks to HAL_OPAMP_MspDeInit called (user defined) from HAL_OPAMP_DeInit.
|
||
149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
150:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *** Running mode: change of configuration while OPAMP ON ***
|
||
151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ============================================
|
||
152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..] To Re-configure OPAMP when OPAMP is ON (change on the fly)
|
||
153:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) If needed, fill in the HAL_OPAMP_MspInit()
|
||
154:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) This is the case for instance if you wish to use new OPAMP I/O
|
||
155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Configure the OPAMP using HAL_OPAMP_Init() function:
|
||
157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) As in configure case, selects first the parameters you wish to modify.
|
||
158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) If OPAMP control register is locked, it is not possible to modify any values
|
||
159:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** on the fly (even the timer controlled mux parameters).
|
||
160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (++) If OPAMP timer controlled mux mode register is locked, it is possible to modify any valu
|
||
161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** of the control register but none on the timer controlled mux mode one.
|
||
162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (#) Change from high speed mode to normal power mode (& vice versa) requires
|
||
164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** first HAL_OPAMP_DeInit() (force OPAMP OFF) and then HAL_OPAMP_Init().
|
||
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** In other words, of OPAMP is ON, HAL_OPAMP_Init can NOT change power mode
|
||
166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** alone.
|
||
167:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @endverbatim
|
||
169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ******************************************************************************
|
||
170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @attention
|
||
171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *
|
||
172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * <h2><center>© Copyright (c) 2019 STMicroelectronics.
|
||
173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * All rights reserved.</center></h2>
|
||
174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *
|
||
175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * This software component is licensed by ST under BSD 3-Clause license,
|
||
176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * the "License"; You may not use this file except in compliance with the
|
||
177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * License. You may obtain a copy of the License at:
|
||
178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * opensource.org/licenses/BSD-3-Clause
|
||
179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *
|
||
180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ******************************************************************************
|
||
181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /*
|
||
184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** Additional Tables:
|
||
185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** The OPAMPs non inverting input (both default and secondary) can be
|
||
186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** selected among the list shown by table below.
|
||
187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** The OPAMPs non inverting input (both default and secondary) can be
|
||
189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** selected among the list shown by table below.
|
||
190:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** Table 1. OPAMPs inverting/non-inverting inputs for the STM32G4 devices:
|
||
192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** +--------------------------------------------------------------------------------------------+
|
||
193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | | | OPAMP1 | OPAMP2 | OPAMP3 | OPAMP4 | OPAMP5 | OPAMP6 |
|
||
194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** |-----------------|--------|----------|----------|----------|----------|----------|----------|
|
||
195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | | No conn| X | X | X | X | X | X |
|
||
196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | Inverting Input | VM0 | PA3 | PA5 | PB2 | PB10 | PB15 | PA1 |
|
||
197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | (1) | VM1 | PC5 | PC5 | PB10 | PD8 | PA3 | PB1 |
|
||
198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** |-----------------|--------|----------|----------|----------|----------|----------|----------|
|
||
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | | VP0 | PA1 | PA7 | PB0 | PB13 | PB14 | PB12 |
|
||
200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | Non Inverting | VP1 | PA3 | PB14 | PB13 | PD11 | PD12 | PD9 |
|
||
201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | Input | VP2 | PA7 | PB0 | PA1 | PB11 | PC3 | PB13 |
|
||
202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | | VP3 | DAC3_CH1 | PD14 | DAC3_CH2 | DAC4_CH1 | DAC4_CH2 | DAC3_CH1 |
|
||
203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** +--------------------------------------------------------------------------------------------+
|
||
ARM GAS /tmp/ccfpzjW9.s page 5
|
||
|
||
|
||
204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (1): No connection in follower mode.
|
||
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** Table 2. OPAMPs outputs for the STM32G4 devices:
|
||
207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** +--------------------------------------------------------------------------------+
|
||
208:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | | | OPAMP1 | OPAMP2 | OPAMP3 | OPAMP4 | OPAMP5 | OPAMP6 |
|
||
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** |-----------------|--------|--------|--------|--------|--------|--------|--------|
|
||
210:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | Output | | PA2 | PA6 | PB1 | PB12 | PA8 | PB11 |
|
||
211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** |-----------------|--------|--------|--------|--------|--------|--------|--------+
|
||
212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | Internal output | | ADC1 | ADC2 | ADC2 | ADC5 | ADC5 | ADC4 |
|
||
213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | to ADCs | | CH13 | CH16 | CH18 | CH5 | CH3 | CH17 |
|
||
214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | | | | | ADC3 | | | |
|
||
215:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | | | | | CH13 | | | |
|
||
216:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** |-----------------|--------|--------|--------|--------|--------|--------|--------+
|
||
217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Includes ------------------------------------------------------------------*/
|
||
221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #include "stm32g4xx_hal.h"
|
||
222:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /** @addtogroup STM32G4xx_HAL_Driver
|
||
224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @{
|
||
225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #ifdef HAL_OPAMP_MODULE_ENABLED
|
||
228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
229:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /** @defgroup OPAMP OPAMP
|
||
230:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief OPAMP HAL module driver
|
||
231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @{
|
||
232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Private typedef -----------------------------------------------------------*/
|
||
235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Private define ------------------------------------------------------------*/
|
||
236:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /** @defgroup OPAMP_Private_Define OPAMP Private Define
|
||
237:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @{
|
||
238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* CSR register reset value */
|
||
240:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #define OPAMP_CSR_RESET_VALUE (0x00000000UL)
|
||
241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* CSR register TRIM value upon reset are factory ones, filter them out from CSR register check */
|
||
242:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #define OPAMP_CSR_RESET_CHECK_MASK (~(OPAMP_CSR_TRIMOFFSETN | OPAMP_CSR_TRIMOFFSETP))
|
||
243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* CSR init register Mask */
|
||
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #define OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK (OPAMP_CSR_TRIMOFFSETN | OPAMP_CSR_TRIMOFFSETP \
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | OPAMP_CSR_HIGHSPEEDEN | OPAMP_CSR_OPAMPINTEN \
|
||
246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | OPAMP_CSR_PGGAIN | OPAMP_CSR_VPSEL \
|
||
247:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | OPAMP_CSR_VMSEL | OPAMP_CSR_FORCEVP)
|
||
248:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* TCMR init register Mask */
|
||
249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #define OPAMP_TCMR_UPDATE_PARAMETERS_INIT_MASK (OPAMP_TCMR_T20CMEN | OPAMP_TCMR_T8CMEN \
|
||
250:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | OPAMP_TCMR_T1CMEN | OPAMP_TCMR_VPSSEL \
|
||
251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** | OPAMP_TCMR_VMSSEL)
|
||
252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
253:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @}
|
||
254:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
255:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
256:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Private macro -------------------------------------------------------------*/
|
||
257:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Private variables ---------------------------------------------------------*/
|
||
258:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Private function prototypes -----------------------------------------------*/
|
||
259:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Exported functions ---------------------------------------------------------*/
|
||
260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
ARM GAS /tmp/ccfpzjW9.s page 6
|
||
|
||
|
||
261:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /** @defgroup OPAMP_Exported_Functions OPAMP Exported Functions
|
||
262:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @{
|
||
263:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
264:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
265:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /** @defgroup OPAMP_Exported_Functions_Group1 Initialization and de-initialization functions
|
||
266:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Initialization and Configuration functions
|
||
267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *
|
||
268:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @verbatim
|
||
269:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ===============================================================================
|
||
270:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ##### Initialization and de-initialization functions #####
|
||
271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ===============================================================================
|
||
272:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..] This section provides functions allowing to:
|
||
273:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
274:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @endverbatim
|
||
275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @{
|
||
276:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
278:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
279:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Initializes the OPAMP according to the specified
|
||
280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * parameters in the OPAMP_InitTypeDef and initialize the associated handle.
|
||
281:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @note If the selected opamp is locked, initialization can't be performed.
|
||
282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * To unlock the configuration, perform a system reset.
|
||
283:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
284:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval HAL status
|
||
285:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
286:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef HAL_OPAMP_Init(OPAMP_HandleTypeDef *hopamp)
|
||
287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
288:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
290:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation and lock status */
|
||
291:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Init not allowed if calibration is ongoing */
|
||
292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
293:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return HAL_ERROR;
|
||
295:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State == HAL_OPAMP_STATE_BUSYLOCKED)
|
||
297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
298:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return HAL_ERROR;
|
||
299:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
300:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State == HAL_OPAMP_STATE_CALIBBUSY)
|
||
301:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
302:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return HAL_ERROR;
|
||
303:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
304:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
305:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
306:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
307:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
308:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
310:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set OPAMP parameters */
|
||
311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_POWERMODE(hopamp->Init.PowerMode));
|
||
312:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_FUNCTIONAL_NORMALMODE(hopamp->Init.Mode));
|
||
313:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_NONINVERTING_INPUT(hopamp->Init.NonInvertingInput));
|
||
314:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
315:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #if (USE_HAL_OPAMP_REGISTER_CALLBACKS == 1)
|
||
316:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp->State == HAL_OPAMP_STATE_RESET)
|
||
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
ARM GAS /tmp/ccfpzjW9.s page 7
|
||
|
||
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp->MspInitCallback == NULL)
|
||
319:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
320:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->MspInitCallback = HAL_OPAMP_MspInit;
|
||
321:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
322:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
323:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #endif /* USE_HAL_OPAMP_REGISTER_CALLBACKS */
|
||
324:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
325:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Init.Mode) == OPAMP_STANDALONE_MODE)
|
||
326:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
327:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_INVERTING_INPUT(hopamp->Init.InvertingInput));
|
||
328:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
329:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_FUNCTIONAL_STATE(hopamp->Init.InternalOutput));
|
||
330:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
331:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_TIMERCONTROLLED_MUXMODE(hopamp->Init.TimerControlledMuxmode));
|
||
332:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
333:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Init.TimerControlledMuxmode) != OPAMP_TIMERCONTROLLEDMUXMODE_DISABLE)
|
||
334:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
335:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_SEC_NONINVERTING_INPUT(hopamp->Init.NonInvertingInputSecondary));
|
||
336:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_SEC_INVERTING_INPUT(hopamp->Init.InvertingInputSecondary));
|
||
337:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
338:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
339:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Init.Mode) == OPAMP_PGA_MODE)
|
||
340:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
341:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_PGACONNECT(hopamp->Init.PgaConnect));
|
||
342:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_PGA_GAIN(hopamp->Init.PgaGain));
|
||
343:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
344:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
345:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_TRIMMING(hopamp->Init.UserTrimming));
|
||
346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Init.UserTrimming) == OPAMP_TRIMMING_USER)
|
||
347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_TRIMMINGVALUE(hopamp->Init.TrimmingValueP));
|
||
349:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_TRIMMINGVALUE(hopamp->Init.TrimmingValueN));
|
||
350:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
352:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Init SYSCFG and the low level hardware to access opamp */
|
||
353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** __HAL_RCC_SYSCFG_CLK_ENABLE();
|
||
354:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
355:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp->State == HAL_OPAMP_STATE_RESET)
|
||
356:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
357:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Allocate lock resource and initialize it */
|
||
358:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Lock = HAL_UNLOCKED;
|
||
359:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #if (USE_HAL_OPAMP_REGISTER_CALLBACKS == 1)
|
||
362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->MspInitCallback(hopamp);
|
||
363:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #else
|
||
364:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Call MSP init function */
|
||
365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_OPAMP_MspInit(hopamp);
|
||
366:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #endif /* USE_HAL_OPAMP_REGISTER_CALLBACKS */
|
||
367:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
368:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set OPAMP parameters */
|
||
369:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.Mode value *
|
||
370:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.InvertingInput value *
|
||
371:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.NonInvertingInput value *
|
||
372:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.InternalOutput value *
|
||
373:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.TimerControlledMuxmode value *
|
||
374:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.InvertingInputSecondary value *
|
||
ARM GAS /tmp/ccfpzjW9.s page 8
|
||
|
||
|
||
375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.NonInvertingInputSecondary value *
|
||
376:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.PgaConnect value *
|
||
377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.PgaGain value *
|
||
378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.UserTrimming value *
|
||
379:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.TrimmingValueP value *
|
||
380:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set bits according to hopamp->hopamp->Init.TrimmingValueN value *
|
||
381:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
382:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
383:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* check if OPAMP_PGA_MODE & in Follower mode */
|
||
384:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* - InvertingInput */
|
||
385:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* is Not Applicable */
|
||
386:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
387:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Init.Mode == OPAMP_PGA_MODE) || (hopamp->Init.Mode == OPAMP_FOLLOWER_MODE))
|
||
388:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
389:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Update User Trim config first to be able to modify trimming value afterwards */
|
||
390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR,
|
||
391:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.UserTrimming);
|
||
393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR,
|
||
394:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK,
|
||
395:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.PowerMode |
|
||
396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.Mode |
|
||
397:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.NonInvertingInput |
|
||
398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ((hopamp->Init.InternalOutput == ENABLE) ? OPAMP_CSR_OPAMPINTEN : 0UL) |
|
||
399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.PgaConnect |
|
||
400:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.PgaGain |
|
||
401:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (hopamp->Init.TrimmingValueP << OPAMP_INPUT_NONINVERTING) |
|
||
402:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (hopamp->Init.TrimmingValueN << OPAMP_INPUT_INVERTING));
|
||
403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
404:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else /* OPAMP_STANDALONE_MODE */
|
||
405:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
406:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Update User Trim config first to be able to modify trimming value afterwards */
|
||
407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR,
|
||
408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
409:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.UserTrimming);
|
||
410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR,
|
||
411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK,
|
||
412:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.PowerMode |
|
||
413:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.Mode |
|
||
414:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.InvertingInput |
|
||
415:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.NonInvertingInput |
|
||
416:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ((hopamp->Init.InternalOutput == ENABLE) ? OPAMP_CSR_OPAMPINTEN : 0UL) |
|
||
417:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.PgaConnect |
|
||
418:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.PgaGain |
|
||
419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (hopamp->Init.TrimmingValueP << OPAMP_INPUT_NONINVERTING) |
|
||
420:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** (hopamp->Init.TrimmingValueN << OPAMP_INPUT_INVERTING));
|
||
421:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((READ_BIT(hopamp->Instance->TCMR, OPAMP_TCMR_LOCK)) == 0UL)
|
||
424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->TCMR,
|
||
426:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_TCMR_UPDATE_PARAMETERS_INIT_MASK,
|
||
427:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.TimerControlledMuxmode |
|
||
428:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.InvertingInputSecondary |
|
||
429:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.NonInvertingInputSecondary);
|
||
430:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
431:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
ARM GAS /tmp/ccfpzjW9.s page 9
|
||
|
||
|
||
432:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Update the OPAMP state*/
|
||
433:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp->State == HAL_OPAMP_STATE_RESET)
|
||
434:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
435:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* From RESET state to READY State */
|
||
436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->State = HAL_OPAMP_STATE_READY;
|
||
437:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
438:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* else: remain in READY or BUSY state (no update) */
|
||
439:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
440:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return status;
|
||
441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
443:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
444:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
445:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief DeInitializes the OPAMP peripheral
|
||
447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @note Deinitialization can't be performed if the OPAMP configuration is locked.
|
||
448:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * To unlock the configuration, perform a system reset.
|
||
449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
450:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval HAL status
|
||
451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef HAL_OPAMP_DeInit(OPAMP_HandleTypeDef *hopamp)
|
||
453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
454:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
455:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
456:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation */
|
||
457:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* DeInit not allowed if calibration is ongoing */
|
||
458:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
459:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
460:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
461:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
462:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State == HAL_OPAMP_STATE_CALIBBUSY)
|
||
463:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
464:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
465:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
466:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
467:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
468:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
469:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
471:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set OPAMP_CSR register to reset value */
|
||
472:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** WRITE_REG(hopamp->Instance->CSR, OPAMP_CSR_RESET_VALUE);
|
||
473:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
474:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* DeInit the low level hardware: GPIO, CLOCK and NVIC */
|
||
475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* When OPAMP is locked, unlocking can be achieved thanks to */
|
||
476:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* __HAL_RCC_SYSCFG_CLK_DISABLE() call within HAL_OPAMP_MspDeInit */
|
||
477:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Note that __HAL_RCC_SYSCFG_CLK_DISABLE() also disables comparator */
|
||
478:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
479:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #if (USE_HAL_OPAMP_REGISTER_CALLBACKS == 1)
|
||
480:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp->MspDeInitCallback == NULL)
|
||
481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
482:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->MspDeInitCallback = HAL_OPAMP_MspDeInit;
|
||
483:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
484:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* DeInit the low level hardware */
|
||
485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->MspDeInitCallback(hopamp);
|
||
486:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #else
|
||
487:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_OPAMP_MspDeInit(hopamp);
|
||
488:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #endif /* USE_HAL_OPAMP_REGISTER_CALLBACKS */
|
||
ARM GAS /tmp/ccfpzjW9.s page 10
|
||
|
||
|
||
489:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
490:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (OPAMP_CSR_RESET_VALUE == (hopamp->Instance->CSR & OPAMP_CSR_RESET_CHECK_MASK))
|
||
491:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
492:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Update the OPAMP state */
|
||
493:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->State = HAL_OPAMP_STATE_RESET;
|
||
494:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
495:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else /* RESET STATE */
|
||
496:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
497:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* DeInit not complete */
|
||
498:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* It can be the case if OPAMP was formerly locked */
|
||
499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
500:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
501:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* The OPAMP state is NOT updated */
|
||
502:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
503:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
504:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Process unlocked */
|
||
505:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** __HAL_UNLOCK(hopamp);
|
||
506:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
507:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
508:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return status;
|
||
509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
510:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
512:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Initialize the OPAMP MSP.
|
||
513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
514:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval None
|
||
515:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
516:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** __weak void HAL_OPAMP_MspInit(OPAMP_HandleTypeDef *hopamp)
|
||
517:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
27 .loc 1 517 0
|
||
28 .cfi_startproc
|
||
29 @ args = 0, pretend = 0, frame = 0
|
||
30 @ frame_needed = 0, uses_anonymous_args = 0
|
||
31 @ link register save eliminated.
|
||
32 .LVL0:
|
||
518:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Prevent unused argument(s) compilation warning */
|
||
519:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** UNUSED(hopamp);
|
||
520:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
521:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
522:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** the HAL_OPAMP_MspInit could be implemented in the user file
|
||
523:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
525:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Example */
|
||
526:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
33 .loc 1 526 0
|
||
34 0000 7047 bx lr
|
||
35 .cfi_endproc
|
||
36 .LFE331:
|
||
38 0002 00BF .section .text.HAL_OPAMP_Init,"ax",%progbits
|
||
39 .align 1
|
||
40 .p2align 2,,3
|
||
41 .global HAL_OPAMP_Init
|
||
42 .syntax unified
|
||
43 .thumb
|
||
44 .thumb_func
|
||
45 .fpu fpv4-sp-d16
|
||
47 HAL_OPAMP_Init:
|
||
ARM GAS /tmp/ccfpzjW9.s page 11
|
||
|
||
|
||
48 .LFB329:
|
||
287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
49 .loc 1 287 0
|
||
50 .cfi_startproc
|
||
51 @ args = 0, pretend = 0, frame = 8
|
||
52 @ frame_needed = 0, uses_anonymous_args = 0
|
||
53 .LVL1:
|
||
292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
54 .loc 1 292 0
|
||
55 0000 0028 cmp r0, #0
|
||
56 0002 5CD0 beq .L13
|
||
296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
57 .loc 1 296 0
|
||
58 0004 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
|
||
59 0008 052B cmp r3, #5
|
||
60 000a 58D0 beq .L13
|
||
300:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
61 .loc 1 300 0
|
||
62 000c 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
|
||
63 0010 022B cmp r3, #2
|
||
64 0012 54D0 beq .L13
|
||
65 .LBB2:
|
||
353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
66 .loc 1 353 0
|
||
67 0014 3A4B ldr r3, .L24
|
||
68 .LBE2:
|
||
287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
69 .loc 1 287 0
|
||
70 0016 70B5 push {r4, r5, r6, lr}
|
||
71 .LCFI0:
|
||
72 .cfi_def_cfa_offset 16
|
||
73 .cfi_offset 4, -16
|
||
74 .cfi_offset 5, -12
|
||
75 .cfi_offset 6, -8
|
||
76 .cfi_offset 14, -4
|
||
77 .LBB3:
|
||
353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
78 .loc 1 353 0
|
||
79 0018 1A6E ldr r2, [r3, #96]
|
||
80 001a 42F00102 orr r2, r2, #1
|
||
81 001e 1A66 str r2, [r3, #96]
|
||
82 0020 1B6E ldr r3, [r3, #96]
|
||
83 .LBE3:
|
||
287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
84 .loc 1 287 0
|
||
85 0022 82B0 sub sp, sp, #8
|
||
86 .LCFI1:
|
||
87 .cfi_def_cfa_offset 24
|
||
88 .LBB4:
|
||
353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
89 .loc 1 353 0
|
||
90 0024 03F00103 and r3, r3, #1
|
||
91 0028 0193 str r3, [sp, #4]
|
||
92 002a 019B ldr r3, [sp, #4]
|
||
93 .LBE4:
|
||
355:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
94 .loc 1 355 0
|
||
ARM GAS /tmp/ccfpzjW9.s page 12
|
||
|
||
|
||
95 002c 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
|
||
96 0030 03F0FF02 and r2, r3, #255
|
||
97 0034 002B cmp r3, #0
|
||
98 0036 44D0 beq .L22
|
||
99 .L5:
|
||
100 0038 0446 mov r4, r0
|
||
365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #endif /* USE_HAL_OPAMP_REGISTER_CALLBACKS */
|
||
101 .loc 1 365 0
|
||
102 003a FFF7FEFF bl HAL_OPAMP_MspInit
|
||
103 .LVL2:
|
||
387:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
104 .loc 1 387 0
|
||
105 003e A368 ldr r3, [r4, #8]
|
||
106 0040 23F02002 bic r2, r3, #32
|
||
107 0044 402A cmp r2, #64
|
||
390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
108 .loc 1 390 0
|
||
109 0046 2268 ldr r2, [r4]
|
||
387:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
110 .loc 1 387 0
|
||
111 0048 41D0 beq .L23
|
||
112 004a 6068 ldr r0, [r4, #4]
|
||
113 004c E668 ldr r6, [r4, #12]
|
||
407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
114 .loc 1 407 0
|
||
115 004e 1168 ldr r1, [r2]
|
||
116 0050 2569 ldr r5, [r4, #16]
|
||
117 0052 0343 orrs r3, r3, r0
|
||
118 0054 3343 orrs r3, r3, r6
|
||
119 0056 E06A ldr r0, [r4, #44]
|
||
410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK,
|
||
120 .loc 1 410 0
|
||
121 0058 666A ldr r6, [r4, #36]
|
||
122 005a 2B43 orrs r3, r3, r5
|
||
407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
123 .loc 1 407 0
|
||
124 005c 21F01001 bic r1, r1, #16
|
||
125 0060 0143 orrs r1, r1, r0
|
||
410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK,
|
||
126 .loc 1 410 0
|
||
127 0062 A56A ldr r5, [r4, #40]
|
||
407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
128 .loc 1 407 0
|
||
129 0064 1160 str r1, [r2]
|
||
410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK,
|
||
130 .loc 1 410 0
|
||
131 0066 3343 orrs r3, r3, r6
|
||
132 0068 D4E90C60 ldrd r6, r0, [r4, #48]
|
||
133 006c 2B43 orrs r3, r3, r5
|
||
134 006e 2549 ldr r1, .L24+4
|
||
135 0070 1568 ldr r5, [r2]
|
||
136 0072 43EAC643 orr r3, r3, r6, lsl #19
|
||
137 0076 43EA0063 orr r3, r3, r0, lsl #24
|
||
138 007a 207D ldrb r0, [r4, #20] @ zero_extendqisi2
|
||
139 007c 2940 ands r1, r1, r5
|
||
140 .L21:
|
||
141 007e 0128 cmp r0, #1
|
||
ARM GAS /tmp/ccfpzjW9.s page 13
|
||
|
||
|
||
142 0080 43EA0103 orr r3, r3, r1
|
||
143 0084 14BF ite ne
|
||
144 0086 0021 movne r1, #0
|
||
145 0088 4FF48071 moveq r1, #256
|
||
146 008c 0B43 orrs r3, r3, r1
|
||
147 008e 1360 str r3, [r2]
|
||
423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
148 .loc 1 423 0
|
||
149 0090 9369 ldr r3, [r2, #24]
|
||
150 0092 002B cmp r3, #0
|
||
151 0094 09DB blt .L10
|
||
425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_TCMR_UPDATE_PARAMETERS_INIT_MASK,
|
||
152 .loc 1 425 0
|
||
153 0096 D4E90635 ldrd r3, r5, [r4, #24]
|
||
154 009a 206A ldr r0, [r4, #32]
|
||
155 009c 9169 ldr r1, [r2, #24]
|
||
156 009e 2B43 orrs r3, r3, r5
|
||
157 00a0 0343 orrs r3, r3, r0
|
||
158 00a2 21F03F01 bic r1, r1, #63
|
||
159 00a6 0B43 orrs r3, r3, r1
|
||
160 00a8 9361 str r3, [r2, #24]
|
||
161 .L10:
|
||
433:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
162 .loc 1 433 0
|
||
163 00aa 94F83A30 ldrb r3, [r4, #58] @ zero_extendqisi2
|
||
164 00ae 03F0FF00 and r0, r3, #255
|
||
165 00b2 4BB9 cbnz r3, .L16
|
||
436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
166 .loc 1 436 0
|
||
167 00b4 0123 movs r3, #1
|
||
168 00b6 84F83A30 strb r3, [r4, #58]
|
||
442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
169 .loc 1 442 0
|
||
170 00ba 02B0 add sp, sp, #8
|
||
171 .LCFI2:
|
||
172 .cfi_def_cfa_offset 16
|
||
173 @ sp needed
|
||
174 00bc 70BD pop {r4, r5, r6, pc}
|
||
175 .LVL3:
|
||
176 .L13:
|
||
177 .LCFI3:
|
||
178 .cfi_def_cfa_offset 0
|
||
179 .cfi_restore 4
|
||
180 .cfi_restore 5
|
||
181 .cfi_restore 6
|
||
182 .cfi_restore 14
|
||
294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
183 .loc 1 294 0
|
||
184 00be 0120 movs r0, #1
|
||
185 .LVL4:
|
||
442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
186 .loc 1 442 0
|
||
187 00c0 7047 bx lr
|
||
188 .LVL5:
|
||
189 .L22:
|
||
190 .LCFI4:
|
||
191 .cfi_def_cfa_offset 24
|
||
ARM GAS /tmp/ccfpzjW9.s page 14
|
||
|
||
|
||
192 .cfi_offset 4, -16
|
||
193 .cfi_offset 5, -12
|
||
194 .cfi_offset 6, -8
|
||
195 .cfi_offset 14, -4
|
||
358:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
196 .loc 1 358 0
|
||
197 00c2 80F83920 strb r2, [r0, #57]
|
||
198 00c6 B7E7 b .L5
|
||
199 .LVL6:
|
||
200 .L16:
|
||
440:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
201 .loc 1 440 0
|
||
202 00c8 0020 movs r0, #0
|
||
442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
203 .loc 1 442 0
|
||
204 00ca 02B0 add sp, sp, #8
|
||
205 .LCFI5:
|
||
206 .cfi_remember_state
|
||
207 .cfi_def_cfa_offset 16
|
||
208 @ sp needed
|
||
209 00cc 70BD pop {r4, r5, r6, pc}
|
||
210 .LVL7:
|
||
211 .L23:
|
||
212 .LCFI6:
|
||
213 .cfi_restore_state
|
||
214 00ce 6668 ldr r6, [r4, #4]
|
||
390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
215 .loc 1 390 0
|
||
216 00d0 1168 ldr r1, [r2]
|
||
217 00d2 2069 ldr r0, [r4, #16]
|
||
218 00d4 E56A ldr r5, [r4, #44]
|
||
219 00d6 3343 orrs r3, r3, r6
|
||
220 00d8 0343 orrs r3, r3, r0
|
||
221 00da 21F01001 bic r1, r1, #16
|
||
393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK,
|
||
222 .loc 1 393 0
|
||
223 00de 606A ldr r0, [r4, #36]
|
||
390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
224 .loc 1 390 0
|
||
225 00e0 2943 orrs r1, r1, r5
|
||
393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK,
|
||
226 .loc 1 393 0
|
||
227 00e2 A56A ldr r5, [r4, #40]
|
||
390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_USERTRIM,
|
||
228 .loc 1 390 0
|
||
229 00e4 1160 str r1, [r2]
|
||
393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_CSR_UPDATE_PARAMETERS_INIT_MASK,
|
||
230 .loc 1 393 0
|
||
231 00e6 0343 orrs r3, r3, r0
|
||
232 00e8 206B ldr r0, [r4, #48]
|
||
233 00ea 1668 ldr r6, [r2]
|
||
234 00ec 0549 ldr r1, .L24+4
|
||
235 00ee 2B43 orrs r3, r3, r5
|
||
236 00f0 656B ldr r5, [r4, #52]
|
||
237 00f2 43EAC043 orr r3, r3, r0, lsl #19
|
||
238 00f6 3140 ands r1, r1, r6
|
||
239 00f8 207D ldrb r0, [r4, #20] @ zero_extendqisi2
|
||
ARM GAS /tmp/ccfpzjW9.s page 15
|
||
|
||
|
||
240 00fa 43EA0563 orr r3, r3, r5, lsl #24
|
||
241 00fe BEE7 b .L21
|
||
242 .L25:
|
||
243 .align 2
|
||
244 .L24:
|
||
245 0100 00100240 .word 1073876992
|
||
246 0104 113E00E0 .word -536855023
|
||
247 .cfi_endproc
|
||
248 .LFE329:
|
||
250 .section .text.HAL_OPAMP_MspDeInit,"ax",%progbits
|
||
251 .align 1
|
||
252 .p2align 2,,3
|
||
253 .weak HAL_OPAMP_MspDeInit
|
||
254 .syntax unified
|
||
255 .thumb
|
||
256 .thumb_func
|
||
257 .fpu fpv4-sp-d16
|
||
259 HAL_OPAMP_MspDeInit:
|
||
260 .LFB341:
|
||
261 .cfi_startproc
|
||
262 @ args = 0, pretend = 0, frame = 0
|
||
263 @ frame_needed = 0, uses_anonymous_args = 0
|
||
264 @ link register save eliminated.
|
||
265 0000 7047 bx lr
|
||
266 .cfi_endproc
|
||
267 .LFE341:
|
||
269 0002 00BF .section .text.HAL_OPAMP_DeInit,"ax",%progbits
|
||
270 .align 1
|
||
271 .p2align 2,,3
|
||
272 .global HAL_OPAMP_DeInit
|
||
273 .syntax unified
|
||
274 .thumb
|
||
275 .thumb_func
|
||
276 .fpu fpv4-sp-d16
|
||
278 HAL_OPAMP_DeInit:
|
||
279 .LFB330:
|
||
453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
280 .loc 1 453 0
|
||
281 .cfi_startproc
|
||
282 @ args = 0, pretend = 0, frame = 0
|
||
283 @ frame_needed = 0, uses_anonymous_args = 0
|
||
284 .LVL8:
|
||
458:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
285 .loc 1 458 0
|
||
286 0000 C0B1 cbz r0, .L30
|
||
462:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
287 .loc 1 462 0
|
||
288 0002 90F83A20 ldrb r2, [r0, #58] @ zero_extendqisi2
|
||
289 0006 022A cmp r2, #2
|
||
453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
290 .loc 1 453 0
|
||
291 0008 10B5 push {r4, lr}
|
||
292 .LCFI7:
|
||
293 .cfi_def_cfa_offset 8
|
||
294 .cfi_offset 4, -8
|
||
295 .cfi_offset 14, -4
|
||
296 000a 0446 mov r4, r0
|
||
ARM GAS /tmp/ccfpzjW9.s page 16
|
||
|
||
|
||
462:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
297 .loc 1 462 0
|
||
298 000c 10D0 beq .L31
|
||
472:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
299 .loc 1 472 0
|
||
300 000e 0368 ldr r3, [r0]
|
||
301 0010 0022 movs r2, #0
|
||
302 0012 1A60 str r2, [r3]
|
||
487:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** #endif /* USE_HAL_OPAMP_REGISTER_CALLBACKS */
|
||
303 .loc 1 487 0
|
||
304 0014 FFF7FEFF bl HAL_OPAMP_MspDeInit
|
||
305 .LVL9:
|
||
490:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
306 .loc 1 490 0
|
||
307 0018 2368 ldr r3, [r4]
|
||
308 001a 1868 ldr r0, [r3]
|
||
309 001c 20F0FF50 bic r0, r0, #534773760
|
||
310 0020 20F4C010 bic r0, r0, #1572864
|
||
311 0024 40B1 cbz r0, .L37
|
||
499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
312 .loc 1 499 0
|
||
313 0026 0120 movs r0, #1
|
||
314 .L29:
|
||
315 .LVL10:
|
||
505:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
316 .loc 1 505 0
|
||
317 0028 0023 movs r3, #0
|
||
318 002a 84F83930 strb r3, [r4, #57]
|
||
509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
319 .loc 1 509 0
|
||
320 002e 10BD pop {r4, pc}
|
||
321 .LVL11:
|
||
322 .L31:
|
||
460:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
323 .loc 1 460 0
|
||
324 0030 0120 movs r0, #1
|
||
325 .LVL12:
|
||
509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
326 .loc 1 509 0
|
||
327 0032 10BD pop {r4, pc}
|
||
328 .LVL13:
|
||
329 .L30:
|
||
330 .LCFI8:
|
||
331 .cfi_def_cfa_offset 0
|
||
332 .cfi_restore 4
|
||
333 .cfi_restore 14
|
||
460:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
334 .loc 1 460 0
|
||
335 0034 0120 movs r0, #1
|
||
336 .LVL14:
|
||
509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
337 .loc 1 509 0
|
||
338 0036 7047 bx lr
|
||
339 .LVL15:
|
||
340 .L37:
|
||
341 .LCFI9:
|
||
342 .cfi_def_cfa_offset 8
|
||
ARM GAS /tmp/ccfpzjW9.s page 17
|
||
|
||
|
||
343 .cfi_offset 4, -8
|
||
344 .cfi_offset 14, -4
|
||
493:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
345 .loc 1 493 0
|
||
346 0038 84F83A00 strb r0, [r4, #58]
|
||
347 003c F4E7 b .L29
|
||
348 .cfi_endproc
|
||
349 .LFE330:
|
||
351 003e 00BF .section .text.HAL_OPAMP_Start,"ax",%progbits
|
||
352 .align 1
|
||
353 .p2align 2,,3
|
||
354 .global HAL_OPAMP_Start
|
||
355 .syntax unified
|
||
356 .thumb
|
||
357 .thumb_func
|
||
358 .fpu fpv4-sp-d16
|
||
360 HAL_OPAMP_Start:
|
||
361 .LFB333:
|
||
527:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
528:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
529:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief DeInitialize OPAMP MSP.
|
||
530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
531:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval None
|
||
532:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
533:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** __weak void HAL_OPAMP_MspDeInit(OPAMP_HandleTypeDef *hopamp)
|
||
534:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
535:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Prevent unused argument(s) compilation warning */
|
||
536:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** UNUSED(hopamp);
|
||
537:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
538:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
539:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** the HAL_OPAMP_MspDeInit could be implemented in the user file
|
||
540:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
541:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
542:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
543:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
544:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
545:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @}
|
||
546:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
547:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
548:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
549:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /** @defgroup OPAMP_Exported_Functions_Group2 Input and Output operation functions
|
||
550:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Data transfers functions
|
||
551:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *
|
||
552:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @verbatim
|
||
553:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ===============================================================================
|
||
554:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ##### IO operation functions #####
|
||
555:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ===============================================================================
|
||
556:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..]
|
||
557:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** This subsection provides a set of functions allowing to manage the OPAMP data
|
||
558:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** transfers.
|
||
559:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
560:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @endverbatim
|
||
561:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @{
|
||
562:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
563:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
564:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Start the opamp
|
||
ARM GAS /tmp/ccfpzjW9.s page 18
|
||
|
||
|
||
566:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
567:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval HAL status
|
||
568:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
569:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
570:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef HAL_OPAMP_Start(OPAMP_HandleTypeDef *hopamp)
|
||
571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
362 .loc 1 571 0
|
||
363 .cfi_startproc
|
||
364 @ args = 0, pretend = 0, frame = 0
|
||
365 @ frame_needed = 0, uses_anonymous_args = 0
|
||
366 @ link register save eliminated.
|
||
367 .LVL16:
|
||
572:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
573:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
574:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation */
|
||
575:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check if OPAMP locked */
|
||
576:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
368 .loc 1 576 0
|
||
369 0000 40B1 cbz r0, .L42
|
||
577:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
578:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
579:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
580:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State == HAL_OPAMP_STATE_BUSYLOCKED)
|
||
370 .loc 1 580 0
|
||
371 0002 90F83A20 ldrb r2, [r0, #58] @ zero_extendqisi2
|
||
372 0006 052A cmp r2, #5
|
||
373 0008 0346 mov r3, r0
|
||
374 000a 03D0 beq .L42
|
||
581:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
582:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
583:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
585:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
586:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
587:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
588:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
589:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp->State == HAL_OPAMP_STATE_READY)
|
||
375 .loc 1 589 0
|
||
376 000c 90F83A20 ldrb r2, [r0, #58] @ zero_extendqisi2
|
||
377 0010 012A cmp r2, #1
|
||
378 0012 01D0 beq .L47
|
||
379 .L42:
|
||
578:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
380 .loc 1 578 0
|
||
381 0014 0120 movs r0, #1
|
||
382 .LVL17:
|
||
590:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
591:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Enable the selected opamp */
|
||
592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** SET_BIT(hopamp->Instance->CSR, OPAMP_CSR_OPAMPxEN);
|
||
593:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
594:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Update the OPAMP state*/
|
||
595:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* From HAL_OPAMP_STATE_READY to HAL_OPAMP_STATE_BUSY */
|
||
596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->State = HAL_OPAMP_STATE_BUSY;
|
||
597:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
598:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
599:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
600:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
ARM GAS /tmp/ccfpzjW9.s page 19
|
||
|
||
|
||
601:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
602:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
604:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
605:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return status;
|
||
606:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
383 .loc 1 606 0
|
||
384 0016 7047 bx lr
|
||
385 .LVL18:
|
||
386 .L47:
|
||
592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
387 .loc 1 592 0
|
||
388 0018 0168 ldr r1, [r0]
|
||
389 001a 0A68 ldr r2, [r1]
|
||
571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
390 .loc 1 571 0
|
||
391 001c 10B4 push {r4}
|
||
392 .LCFI10:
|
||
393 .cfi_def_cfa_offset 4
|
||
394 .cfi_offset 4, -4
|
||
592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
395 .loc 1 592 0
|
||
396 001e 42F00102 orr r2, r2, #1
|
||
596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
397 .loc 1 596 0
|
||
398 0022 0424 movs r4, #4
|
||
592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
399 .loc 1 592 0
|
||
400 0024 0A60 str r2, [r1]
|
||
572:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
401 .loc 1 572 0
|
||
402 0026 0020 movs r0, #0
|
||
403 .LVL19:
|
||
596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
404 .loc 1 596 0
|
||
405 0028 83F83A40 strb r4, [r3, #58]
|
||
406 .LVL20:
|
||
407 .loc 1 606 0
|
||
408 002c 5DF8044B ldr r4, [sp], #4
|
||
409 .LCFI11:
|
||
410 .cfi_restore 4
|
||
411 .cfi_def_cfa_offset 0
|
||
412 0030 7047 bx lr
|
||
413 .cfi_endproc
|
||
414 .LFE333:
|
||
416 0032 00BF .section .text.HAL_OPAMP_Stop,"ax",%progbits
|
||
417 .align 1
|
||
418 .p2align 2,,3
|
||
419 .global HAL_OPAMP_Stop
|
||
420 .syntax unified
|
||
421 .thumb
|
||
422 .thumb_func
|
||
423 .fpu fpv4-sp-d16
|
||
425 HAL_OPAMP_Stop:
|
||
426 .LFB334:
|
||
607:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
608:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
ARM GAS /tmp/ccfpzjW9.s page 20
|
||
|
||
|
||
609:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Stop the opamp
|
||
610:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
611:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval HAL status
|
||
612:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
613:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef HAL_OPAMP_Stop(OPAMP_HandleTypeDef *hopamp)
|
||
614:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
427 .loc 1 614 0
|
||
428 .cfi_startproc
|
||
429 @ args = 0, pretend = 0, frame = 0
|
||
430 @ frame_needed = 0, uses_anonymous_args = 0
|
||
431 @ link register save eliminated.
|
||
432 .LVL21:
|
||
615:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
616:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
617:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation */
|
||
618:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check if OPAMP locked */
|
||
619:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check if OPAMP calibration ongoing */
|
||
620:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
433 .loc 1 620 0
|
||
434 0000 60B1 cbz r0, .L53
|
||
621:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
622:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
623:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
624:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State == HAL_OPAMP_STATE_BUSYLOCKED)
|
||
435 .loc 1 624 0
|
||
436 0002 90F83A20 ldrb r2, [r0, #58] @ zero_extendqisi2
|
||
437 0006 052A cmp r2, #5
|
||
438 0008 0346 mov r3, r0
|
||
439 000a 07D0 beq .L53
|
||
625:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
626:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
627:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
628:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State == HAL_OPAMP_STATE_CALIBBUSY)
|
||
440 .loc 1 628 0
|
||
441 000c 90F83A20 ldrb r2, [r0, #58] @ zero_extendqisi2
|
||
442 0010 022A cmp r2, #2
|
||
443 0012 03D0 beq .L53
|
||
629:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
630:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
631:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
632:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
633:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
634:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
635:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
636:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
637:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp->State == HAL_OPAMP_STATE_BUSY)
|
||
444 .loc 1 637 0
|
||
445 0014 90F83A20 ldrb r2, [r0, #58] @ zero_extendqisi2
|
||
446 0018 042A cmp r2, #4
|
||
447 001a 01D0 beq .L58
|
||
448 .L53:
|
||
622:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
449 .loc 1 622 0
|
||
450 001c 0120 movs r0, #1
|
||
451 .LVL22:
|
||
638:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
639:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Disable the selected opamp */
|
||
ARM GAS /tmp/ccfpzjW9.s page 21
|
||
|
||
|
||
640:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** CLEAR_BIT(hopamp->Instance->CSR, OPAMP_CSR_OPAMPxEN);
|
||
641:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
642:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Update the OPAMP state*/
|
||
643:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* From HAL_OPAMP_STATE_BUSY to HAL_OPAMP_STATE_READY*/
|
||
644:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->State = HAL_OPAMP_STATE_READY;
|
||
645:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
646:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
647:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
648:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
649:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
650:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
651:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return status;
|
||
652:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
452 .loc 1 652 0
|
||
453 001e 7047 bx lr
|
||
454 .LVL23:
|
||
455 .L58:
|
||
640:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
456 .loc 1 640 0
|
||
457 0020 0168 ldr r1, [r0]
|
||
458 0022 0A68 ldr r2, [r1]
|
||
614:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
459 .loc 1 614 0
|
||
460 0024 10B4 push {r4}
|
||
461 .LCFI12:
|
||
462 .cfi_def_cfa_offset 4
|
||
463 .cfi_offset 4, -4
|
||
640:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
464 .loc 1 640 0
|
||
465 0026 22F00102 bic r2, r2, #1
|
||
644:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
466 .loc 1 644 0
|
||
467 002a 0124 movs r4, #1
|
||
640:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
468 .loc 1 640 0
|
||
469 002c 0A60 str r2, [r1]
|
||
615:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
470 .loc 1 615 0
|
||
471 002e 0020 movs r0, #0
|
||
472 .LVL24:
|
||
644:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
473 .loc 1 644 0
|
||
474 0030 83F83A40 strb r4, [r3, #58]
|
||
475 .LVL25:
|
||
476 .loc 1 652 0
|
||
477 0034 5DF8044B ldr r4, [sp], #4
|
||
478 .LCFI13:
|
||
479 .cfi_restore 4
|
||
480 .cfi_def_cfa_offset 0
|
||
481 0038 7047 bx lr
|
||
482 .cfi_endproc
|
||
483 .LFE334:
|
||
485 003a 00BF .section .text.HAL_OPAMP_SelfCalibrate,"ax",%progbits
|
||
486 .align 1
|
||
487 .p2align 2,,3
|
||
488 .global HAL_OPAMP_SelfCalibrate
|
||
489 .syntax unified
|
||
ARM GAS /tmp/ccfpzjW9.s page 22
|
||
|
||
|
||
490 .thumb
|
||
491 .thumb_func
|
||
492 .fpu fpv4-sp-d16
|
||
494 HAL_OPAMP_SelfCalibrate:
|
||
495 .LFB335:
|
||
653:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
654:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
655:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Run the self calibration of one OPAMP
|
||
656:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @note Calibration is performed in the mode specified in OPAMP init
|
||
657:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * structure (mode normal or high-speed).
|
||
658:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp handle
|
||
659:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval Updated offset trimming values (PMOS & NMOS), user trimming is enabled
|
||
660:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval HAL status
|
||
661:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @note Calibration runs about 25 ms.
|
||
662:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
663:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
664:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef HAL_OPAMP_SelfCalibrate(OPAMP_HandleTypeDef *hopamp)
|
||
665:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
496 .loc 1 665 0
|
||
497 .cfi_startproc
|
||
498 @ args = 0, pretend = 0, frame = 0
|
||
499 @ frame_needed = 0, uses_anonymous_args = 0
|
||
500 .LVL26:
|
||
666:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
667:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
668:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
669:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** uint32_t trimmingvaluen;
|
||
670:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** uint32_t trimmingvaluep;
|
||
671:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** uint32_t delta;
|
||
672:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
673:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation */
|
||
674:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check if OPAMP locked */
|
||
675:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
501 .loc 1 675 0
|
||
502 0000 60B1 cbz r0, .L69
|
||
665:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
503 .loc 1 665 0
|
||
504 0002 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
|
||
505 .LCFI14:
|
||
506 .cfi_def_cfa_offset 32
|
||
507 .cfi_offset 3, -32
|
||
508 .cfi_offset 4, -28
|
||
509 .cfi_offset 5, -24
|
||
510 .cfi_offset 6, -20
|
||
511 .cfi_offset 7, -16
|
||
512 .cfi_offset 8, -12
|
||
513 .cfi_offset 9, -8
|
||
514 .cfi_offset 14, -4
|
||
676:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
677:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
678:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
679:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State == HAL_OPAMP_STATE_BUSYLOCKED)
|
||
515 .loc 1 679 0
|
||
516 0006 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
|
||
517 000a 052B cmp r3, #5
|
||
518 000c 03D0 beq .L71
|
||
680:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
ARM GAS /tmp/ccfpzjW9.s page 23
|
||
|
||
|
||
681:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
682:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
683:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
684:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
685:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
686:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check if OPAMP in calibration mode and calibration not yet enable */
|
||
687:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp->State == HAL_OPAMP_STATE_READY)
|
||
519 .loc 1 687 0
|
||
520 000e 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
|
||
521 0012 012B cmp r3, #1
|
||
522 0014 04D0 beq .L84
|
||
523 .L71:
|
||
677:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
524 .loc 1 677 0
|
||
525 0016 0120 movs r0, #1
|
||
526 .LVL27:
|
||
688:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
689:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
690:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
691:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
692:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set Calibration mode */
|
||
693:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Non-inverting input connected to calibration reference voltage. */
|
||
694:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** SET_BIT(hopamp->Instance->CSR, OPAMP_CSR_FORCEVP);
|
||
695:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
696:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* user trimming values are used for offset calibration */
|
||
697:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** SET_BIT(hopamp->Instance->CSR, OPAMP_CSR_USERTRIM);
|
||
698:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
699:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Enable calibration */
|
||
700:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** SET_BIT(hopamp->Instance->CSR, OPAMP_CSR_CALON);
|
||
701:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
702:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* 1st calibration - N */
|
||
703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Select 90% VREF */
|
||
704:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_CALSEL, OPAMP_VREF_90VDDA);
|
||
705:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
706:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Enable the selected opamp */
|
||
707:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** SET_BIT(hopamp->Instance->CSR, OPAMP_CSR_OPAMPxEN);
|
||
708:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
709:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Init trimming counter */
|
||
710:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Medium value */
|
||
711:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvaluen = 16UL;
|
||
712:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** delta = 8UL;
|
||
713:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
714:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** while (delta != 0UL)
|
||
715:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
716:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set candidate trimming */
|
||
717:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETN, trimmingvaluen << OPAMP_INPUT_INVE
|
||
718:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
719:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OFFTRIMmax delay 2 ms as per datasheet (electrical characteristics */
|
||
720:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Offset trim time: during calibration, minimum time needed between */
|
||
721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* two steps to have 1 mV accuracy */
|
||
722:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_Delay(2);
|
||
723:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
724:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Instance->CSR & OPAMP_CSR_OUTCAL) != 0UL)
|
||
725:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
726:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP_CSR_OUTCAL is HIGH try higher trimming */
|
||
727:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvaluen += delta;
|
||
728:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
ARM GAS /tmp/ccfpzjW9.s page 24
|
||
|
||
|
||
729:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
730:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
731:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP_CSR_OUTCAL is LOW try lower trimming */
|
||
732:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvaluen -= delta;
|
||
733:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
735:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** delta >>= 1;
|
||
736:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
737:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
738:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Still need to check if righ calibration is current value or un step below */
|
||
739:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Indeed the first value that causes the OUTCAL bit to change from 1 to 0 */
|
||
740:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETN, trimmingvaluen << OPAMP_INPUT_INVERT
|
||
741:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
742:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OFFTRIMmax delay 2 ms as per datasheet (electrical characteristics */
|
||
743:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Offset trim time: during calibration, minimum time needed between */
|
||
744:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* two steps to have 1 mV accuracy */
|
||
745:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_Delay(2);
|
||
746:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
747:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Instance->CSR & OPAMP_CSR_OUTCAL) != 0UL)
|
||
748:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
749:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP_CSR_OUTCAL is actually one value more */
|
||
750:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvaluen++;
|
||
751:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set right trimming */
|
||
752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETN, trimmingvaluen << OPAMP_INPUT_INVE
|
||
753:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
754:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
755:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* 2nd calibration - P */
|
||
756:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Select 10% VREF */
|
||
757:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_CALSEL, OPAMP_VREF_10VDDA);
|
||
758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
759:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Init trimming counter */
|
||
760:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Medium value */
|
||
761:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvaluep = 16UL;
|
||
762:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** delta = 8UL;
|
||
763:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
764:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** while (delta != 0UL)
|
||
765:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
766:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set candidate trimming */
|
||
767:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETP, trimmingvaluep << OPAMP_INPUT_NONI
|
||
768:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OFFTRIMmax delay 2 ms as per datasheet (electrical characteristics */
|
||
770:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Offset trim time: during calibration, minimum time needed between */
|
||
771:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* two steps to have 1 mV accuracy */
|
||
772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_Delay(2);
|
||
773:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Instance->CSR & OPAMP_CSR_OUTCAL) != 0UL)
|
||
775:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
776:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP_CSR_OUTCAL is HIGH try higher trimming */
|
||
777:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvaluep += delta;
|
||
778:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
779:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
780:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
781:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvaluep -= delta;
|
||
782:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
783:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
784:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** delta >>= 1;
|
||
785:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
ARM GAS /tmp/ccfpzjW9.s page 25
|
||
|
||
|
||
786:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
787:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Still need to check if righ calibration is current value or un step below */
|
||
788:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Indeed the first value that causes the OUTCAL bit to change from 1 to 0U */
|
||
789:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set candidate trimming */
|
||
790:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETP, trimmingvaluep << OPAMP_INPUT_NONINV
|
||
791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OFFTRIMmax delay 2 ms as per datasheet (electrical characteristics */
|
||
793:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Offset trim time: during calibration, minimum time needed between */
|
||
794:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* two steps to have 1 mV accuracy */
|
||
795:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_Delay(2);
|
||
796:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
797:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((hopamp->Instance->CSR & OPAMP_CSR_OUTCAL) != 0UL)
|
||
798:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
799:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP_CSR_OUTCAL is actually one value more */
|
||
800:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvaluep++;
|
||
801:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set right trimming */
|
||
802:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETP, trimmingvaluep << OPAMP_INPUT_NONI
|
||
803:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
804:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
805:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Disable calibration */
|
||
806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** CLEAR_BIT(hopamp->Instance->CSR, OPAMP_CSR_CALON);
|
||
807:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
808:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Disable the OPAMP */
|
||
809:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** CLEAR_BIT(hopamp->Instance->CSR, OPAMP_CSR_OPAMPxEN);
|
||
810:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
811:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set operating mode */
|
||
812:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Non-inverting input connected to calibration reference voltage. */
|
||
813:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** CLEAR_BIT(hopamp->Instance->CSR, OPAMP_CSR_FORCEVP);
|
||
814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
815:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Self calibration is successful */
|
||
816:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Store calibration(user timing) results in init structure. */
|
||
817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
818:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Write calibration result N */
|
||
819:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.TrimmingValueN = trimmingvaluen;
|
||
820:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
821:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Write calibration result P */
|
||
822:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.TrimmingValueP = trimmingvaluep;
|
||
823:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
824:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Select user timing mode */
|
||
825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* And updated with calibrated settings */
|
||
826:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->Init.UserTrimming = OPAMP_TRIMMING_USER;
|
||
827:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETP, trimmingvaluep << OPAMP_INPUT_NONINV
|
||
828:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETN, trimmingvaluen << OPAMP_INPUT_INVERT
|
||
829:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
831:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
833:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP can not be calibrated from this mode */
|
||
834:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
835:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
836:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
837:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return status;
|
||
838:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
527 .loc 1 838 0
|
||
528 0018 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
|
||
529 .LVL28:
|
||
530 .L69:
|
||
ARM GAS /tmp/ccfpzjW9.s page 26
|
||
|
||
|
||
531 .LCFI15:
|
||
532 .cfi_def_cfa_offset 0
|
||
533 .cfi_restore 3
|
||
534 .cfi_restore 4
|
||
535 .cfi_restore 5
|
||
536 .cfi_restore 6
|
||
537 .cfi_restore 7
|
||
538 .cfi_restore 8
|
||
539 .cfi_restore 9
|
||
540 .cfi_restore 14
|
||
677:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
541 .loc 1 677 0
|
||
542 001c 0120 movs r0, #1
|
||
543 .LVL29:
|
||
544 .loc 1 838 0
|
||
545 001e 7047 bx lr
|
||
546 .LVL30:
|
||
547 .L84:
|
||
548 .LCFI16:
|
||
549 .cfi_def_cfa_offset 32
|
||
550 .cfi_offset 3, -32
|
||
551 .cfi_offset 4, -28
|
||
552 .cfi_offset 5, -24
|
||
553 .cfi_offset 6, -20
|
||
554 .cfi_offset 7, -16
|
||
555 .cfi_offset 8, -12
|
||
556 .cfi_offset 9, -8
|
||
557 .cfi_offset 14, -4
|
||
694:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
558 .loc 1 694 0
|
||
559 0020 0368 ldr r3, [r0]
|
||
560 0022 1A68 ldr r2, [r3]
|
||
561 0024 42F00202 orr r2, r2, #2
|
||
562 0028 1A60 str r2, [r3]
|
||
697:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
563 .loc 1 697 0
|
||
564 002a 1A68 ldr r2, [r3]
|
||
565 002c 42F01002 orr r2, r2, #16
|
||
566 0030 1A60 str r2, [r3]
|
||
700:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
567 .loc 1 700 0
|
||
568 0032 1A68 ldr r2, [r3]
|
||
569 0034 42F40062 orr r2, r2, #2048
|
||
570 0038 1A60 str r2, [r3]
|
||
704:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
571 .loc 1 704 0
|
||
572 003a 1A68 ldr r2, [r3]
|
||
573 003c 42F44052 orr r2, r2, #12288
|
||
574 0040 1A60 str r2, [r3]
|
||
707:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
575 .loc 1 707 0
|
||
576 0042 1A68 ldr r2, [r3]
|
||
577 0044 42F00102 orr r2, r2, #1
|
||
578 0048 0446 mov r4, r0
|
||
579 004a 1A60 str r2, [r3]
|
||
580 .LVL31:
|
||
581 004c 0426 movs r6, #4
|
||
ARM GAS /tmp/ccfpzjW9.s page 27
|
||
|
||
|
||
712:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
582 .loc 1 712 0
|
||
583 004e 0827 movs r7, #8
|
||
711:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** delta = 8UL;
|
||
584 .loc 1 711 0
|
||
585 0050 1025 movs r5, #16
|
||
586 .LVL32:
|
||
587 .L63:
|
||
717:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
588 .loc 1 717 0
|
||
589 0052 1A68 ldr r2, [r3]
|
||
590 0054 22F0F852 bic r2, r2, #520093696
|
||
591 0058 42EA0562 orr r2, r2, r5, lsl #24
|
||
592 005c 1A60 str r2, [r3]
|
||
722:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
593 .loc 1 722 0
|
||
594 005e 0220 movs r0, #2
|
||
595 0060 FFF7FEFF bl HAL_Delay
|
||
596 .LVL33:
|
||
724:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
597 .loc 1 724 0
|
||
598 0064 2368 ldr r3, [r4]
|
||
599 0066 1A68 ldr r2, [r3]
|
||
600 0068 5200 lsls r2, r2, #1
|
||
727:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
601 .loc 1 727 0
|
||
602 006a 4CBF ite mi
|
||
603 006c ED19 addmi r5, r5, r7
|
||
604 .LVL34:
|
||
732:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
605 .loc 1 732 0
|
||
606 006e ED1B subpl r5, r5, r7
|
||
607 .LVL35:
|
||
714:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
608 .loc 1 714 0
|
||
609 0070 013E subs r6, r6, #1
|
||
735:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
610 .loc 1 735 0
|
||
611 0072 4FEA5707 lsr r7, r7, #1
|
||
612 .LVL36:
|
||
714:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
613 .loc 1 714 0
|
||
614 0076 ECD1 bne .L63
|
||
740:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
615 .loc 1 740 0
|
||
616 0078 1A68 ldr r2, [r3]
|
||
617 007a 2E06 lsls r6, r5, #24
|
||
618 007c 22F0F852 bic r2, r2, #520093696
|
||
619 0080 3243 orrs r2, r2, r6
|
||
620 0082 1A60 str r2, [r3]
|
||
745:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
621 .loc 1 745 0
|
||
622 0084 0220 movs r0, #2
|
||
623 0086 FFF7FEFF bl HAL_Delay
|
||
624 .LVL37:
|
||
747:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
625 .loc 1 747 0
|
||
ARM GAS /tmp/ccfpzjW9.s page 28
|
||
|
||
|
||
626 008a 2268 ldr r2, [r4]
|
||
627 008c 1368 ldr r3, [r2]
|
||
628 008e 5800 lsls r0, r3, #1
|
||
629 0090 06D5 bpl .L64
|
||
752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
630 .loc 1 752 0
|
||
631 0092 1368 ldr r3, [r2]
|
||
750:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set right trimming */
|
||
632 .loc 1 750 0
|
||
633 0094 0135 adds r5, r5, #1
|
||
634 .LVL38:
|
||
752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
635 .loc 1 752 0
|
||
636 0096 2E06 lsls r6, r5, #24
|
||
637 0098 23F0F853 bic r3, r3, #520093696
|
||
638 009c 3343 orrs r3, r3, r6
|
||
639 009e 1360 str r3, [r2]
|
||
640 .L64:
|
||
757:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
641 .loc 1 757 0
|
||
642 00a0 1368 ldr r3, [r2]
|
||
643 00a2 23F44053 bic r3, r3, #12288
|
||
644 00a6 43F48053 orr r3, r3, #4096
|
||
645 00aa 1360 str r3, [r2]
|
||
646 .LVL39:
|
||
647 00ac 4FF00408 mov r8, #4
|
||
762:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
648 .loc 1 762 0
|
||
649 00b0 4FF00809 mov r9, #8
|
||
761:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** delta = 8UL;
|
||
650 .loc 1 761 0
|
||
651 00b4 1027 movs r7, #16
|
||
652 .LVL40:
|
||
653 .L67:
|
||
767:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
654 .loc 1 767 0
|
||
655 00b6 1368 ldr r3, [r2]
|
||
656 00b8 23F47803 bic r3, r3, #16252928
|
||
657 00bc 43EAC743 orr r3, r3, r7, lsl #19
|
||
658 00c0 1360 str r3, [r2]
|
||
772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
659 .loc 1 772 0
|
||
660 00c2 0220 movs r0, #2
|
||
661 00c4 FFF7FEFF bl HAL_Delay
|
||
662 .LVL41:
|
||
774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
663 .loc 1 774 0
|
||
664 00c8 2268 ldr r2, [r4]
|
||
665 00ca 1368 ldr r3, [r2]
|
||
666 00cc 5900 lsls r1, r3, #1
|
||
777:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
667 .loc 1 777 0
|
||
668 00ce 4CBF ite mi
|
||
669 00d0 4F44 addmi r7, r7, r9
|
||
670 .LVL42:
|
||
781:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
671 .loc 1 781 0
|
||
ARM GAS /tmp/ccfpzjW9.s page 29
|
||
|
||
|
||
672 00d2 A7EB0907 subpl r7, r7, r9
|
||
673 .LVL43:
|
||
764:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
674 .loc 1 764 0
|
||
675 00d6 B8F10108 subs r8, r8, #1
|
||
784:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
676 .loc 1 784 0
|
||
677 00da 4FEA5909 lsr r9, r9, #1
|
||
678 .LVL44:
|
||
764:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
679 .loc 1 764 0
|
||
680 00de EAD1 bne .L67
|
||
790:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
681 .loc 1 790 0
|
||
682 00e0 1368 ldr r3, [r2]
|
||
683 00e2 4FEAC748 lsl r8, r7, #19
|
||
684 00e6 23F47803 bic r3, r3, #16252928
|
||
685 00ea 43EA0803 orr r3, r3, r8
|
||
686 00ee 1360 str r3, [r2]
|
||
795:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
687 .loc 1 795 0
|
||
688 00f0 0220 movs r0, #2
|
||
689 00f2 FFF7FEFF bl HAL_Delay
|
||
690 .LVL45:
|
||
797:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
691 .loc 1 797 0
|
||
692 00f6 2368 ldr r3, [r4]
|
||
693 00f8 1A68 ldr r2, [r3]
|
||
694 00fa 5200 lsls r2, r2, #1
|
||
695 00fc 08D5 bpl .L68
|
||
802:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
696 .loc 1 802 0
|
||
697 00fe 1A68 ldr r2, [r3]
|
||
800:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set right trimming */
|
||
698 .loc 1 800 0
|
||
699 0100 0137 adds r7, r7, #1
|
||
700 .LVL46:
|
||
802:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
701 .loc 1 802 0
|
||
702 0102 4FEAC748 lsl r8, r7, #19
|
||
703 0106 22F47802 bic r2, r2, #16252928
|
||
704 010a 42EA0802 orr r2, r2, r8
|
||
705 010e 1A60 str r2, [r3]
|
||
706 .L68:
|
||
806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
707 .loc 1 806 0
|
||
708 0110 1A68 ldr r2, [r3]
|
||
709 0112 22F40062 bic r2, r2, #2048
|
||
710 0116 1A60 str r2, [r3]
|
||
809:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
711 .loc 1 809 0
|
||
712 0118 1A68 ldr r2, [r3]
|
||
713 011a 22F00102 bic r2, r2, #1
|
||
714 011e 1A60 str r2, [r3]
|
||
813:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
715 .loc 1 813 0
|
||
716 0120 1A68 ldr r2, [r3]
|
||
ARM GAS /tmp/ccfpzjW9.s page 30
|
||
|
||
|
||
717 0122 22F00202 bic r2, r2, #2
|
||
718 0126 1A60 str r2, [r3]
|
||
827:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETN, trimmingvaluen << OPAMP_INPUT_INVERT
|
||
719 .loc 1 827 0
|
||
720 0128 1A68 ldr r2, [r3]
|
||
819:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
721 .loc 1 819 0
|
||
722 012a 6563 str r5, [r4, #52]
|
||
827:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETN, trimmingvaluen << OPAMP_INPUT_INVERT
|
||
723 .loc 1 827 0
|
||
724 012c 22F47802 bic r2, r2, #16252928
|
||
725 0130 42EA0802 orr r2, r2, r8
|
||
826:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETP, trimmingvaluep << OPAMP_INPUT_NONINV
|
||
726 .loc 1 826 0
|
||
727 0134 1021 movs r1, #16
|
||
728 0136 C4E90B17 strd r1, r7, [r4, #44]
|
||
827:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETN, trimmingvaluen << OPAMP_INPUT_INVERT
|
||
729 .loc 1 827 0
|
||
730 013a 1A60 str r2, [r3]
|
||
828:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
731 .loc 1 828 0
|
||
732 013c 1A68 ldr r2, [r3]
|
||
733 013e 22F0F852 bic r2, r2, #520093696
|
||
734 0142 1643 orrs r6, r6, r2
|
||
735 0144 1E60 str r6, [r3]
|
||
667:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
736 .loc 1 667 0
|
||
737 0146 0020 movs r0, #0
|
||
738 .LVL47:
|
||
739 .loc 1 838 0
|
||
740 0148 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
|
||
741 .cfi_endproc
|
||
742 .LFE335:
|
||
744 .section .text.HAL_OPAMP_Lock,"ax",%progbits
|
||
745 .align 1
|
||
746 .p2align 2,,3
|
||
747 .global HAL_OPAMP_Lock
|
||
748 .syntax unified
|
||
749 .thumb
|
||
750 .thumb_func
|
||
751 .fpu fpv4-sp-d16
|
||
753 HAL_OPAMP_Lock:
|
||
754 .LFB336:
|
||
839:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
840:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
841:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @}
|
||
842:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
843:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
844:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /** @defgroup OPAMP_Exported_Functions_Group3 Peripheral Control functions
|
||
845:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Peripheral Control functions
|
||
846:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *
|
||
847:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @verbatim
|
||
848:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ===============================================================================
|
||
849:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ##### Peripheral Control functions #####
|
||
850:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ===============================================================================
|
||
851:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..]
|
||
852:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** This subsection provides a set of functions allowing to control the OPAMP data
|
||
ARM GAS /tmp/ccfpzjW9.s page 31
|
||
|
||
|
||
853:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** transfers.
|
||
854:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
855:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
856:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
857:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @endverbatim
|
||
858:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @{
|
||
859:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
861:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
862:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Lock the selected opamp configuration.
|
||
863:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
864:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval HAL status
|
||
865:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
866:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef HAL_OPAMP_Lock(OPAMP_HandleTypeDef *hopamp)
|
||
867:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
755 .loc 1 867 0
|
||
756 .cfi_startproc
|
||
757 @ args = 0, pretend = 0, frame = 0
|
||
758 @ frame_needed = 0, uses_anonymous_args = 0
|
||
759 @ link register save eliminated.
|
||
760 .LVL48:
|
||
868:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
869:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
870:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation */
|
||
871:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check if OPAMP locked */
|
||
872:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP can be locked when enabled and running in normal mode */
|
||
873:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* It is meaningless otherwise */
|
||
874:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
761 .loc 1 874 0
|
||
762 0000 20B1 cbz r0, .L88
|
||
875:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
876:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
877:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
878:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State != HAL_OPAMP_STATE_BUSY)
|
||
763 .loc 1 878 0
|
||
764 0002 90F83A20 ldrb r2, [r0, #58] @ zero_extendqisi2
|
||
765 0006 042A cmp r2, #4
|
||
766 0008 0346 mov r3, r0
|
||
767 000a 01D0 beq .L93
|
||
768 .L88:
|
||
876:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
769 .loc 1 876 0
|
||
770 000c 0120 movs r0, #1
|
||
771 .LVL49:
|
||
879:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
881:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
882:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
883:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
884:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
885:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
886:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
887:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Lock OPAMP */
|
||
888:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** SET_BIT(hopamp->Instance->CSR, OPAMP_CSR_LOCK);
|
||
889:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
890:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP state changed to locked */
|
||
891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** hopamp->State = HAL_OPAMP_STATE_BUSYLOCKED;
|
||
ARM GAS /tmp/ccfpzjW9.s page 32
|
||
|
||
|
||
892:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
893:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return status;
|
||
894:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
772 .loc 1 894 0
|
||
773 000e 7047 bx lr
|
||
774 .LVL50:
|
||
775 .L93:
|
||
888:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
776 .loc 1 888 0
|
||
777 0010 0168 ldr r1, [r0]
|
||
778 0012 0A68 ldr r2, [r1]
|
||
867:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
779 .loc 1 867 0
|
||
780 0014 10B4 push {r4}
|
||
781 .LCFI17:
|
||
782 .cfi_def_cfa_offset 4
|
||
783 .cfi_offset 4, -4
|
||
888:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
784 .loc 1 888 0
|
||
785 0016 42F00042 orr r2, r2, #-2147483648
|
||
891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
786 .loc 1 891 0
|
||
787 001a 0524 movs r4, #5
|
||
888:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
788 .loc 1 888 0
|
||
789 001c 0A60 str r2, [r1]
|
||
868:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
790 .loc 1 868 0
|
||
791 001e 0020 movs r0, #0
|
||
792 .LVL51:
|
||
891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
793 .loc 1 891 0
|
||
794 0020 83F83A40 strb r4, [r3, #58]
|
||
795 .LVL52:
|
||
796 .loc 1 894 0
|
||
797 0024 5DF8044B ldr r4, [sp], #4
|
||
798 .LCFI18:
|
||
799 .cfi_restore 4
|
||
800 .cfi_def_cfa_offset 0
|
||
801 0028 7047 bx lr
|
||
802 .cfi_endproc
|
||
803 .LFE336:
|
||
805 002a 00BF .section .text.HAL_OPAMP_LockTimerMux,"ax",%progbits
|
||
806 .align 1
|
||
807 .p2align 2,,3
|
||
808 .global HAL_OPAMP_LockTimerMux
|
||
809 .syntax unified
|
||
810 .thumb
|
||
811 .thumb_func
|
||
812 .fpu fpv4-sp-d16
|
||
814 HAL_OPAMP_LockTimerMux:
|
||
815 .LFB337:
|
||
895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
897:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @}
|
||
898:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
899:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
ARM GAS /tmp/ccfpzjW9.s page 33
|
||
|
||
|
||
900:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
901:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Lock the selected opamp timer controlled mux configuration.
|
||
902:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
903:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval HAL status
|
||
904:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
905:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef HAL_OPAMP_LockTimerMux(OPAMP_HandleTypeDef *hopamp)
|
||
906:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
816 .loc 1 906 0
|
||
817 .cfi_startproc
|
||
818 @ args = 0, pretend = 0, frame = 0
|
||
819 @ frame_needed = 0, uses_anonymous_args = 0
|
||
820 @ link register save eliminated.
|
||
821 .LVL53:
|
||
907:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
908:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
909:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation */
|
||
910:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check if OPAMP timer controlled mux is locked */
|
||
911:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* OPAMP timer controlled mux can be locked when enabled */
|
||
912:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* It is meaningless otherwise */
|
||
913:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
822 .loc 1 913 0
|
||
823 0000 60B1 cbz r0, .L98
|
||
914:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
915:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
916:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
917:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State == HAL_OPAMP_STATE_RESET)
|
||
824 .loc 1 917 0
|
||
825 0002 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
|
||
826 0006 4BB1 cbz r3, .L98
|
||
918:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
919:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
920:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
921:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (READ_BIT(hopamp->Instance->TCMR, OPAMP_TCMR_LOCK) == OPAMP_TCMR_LOCK)
|
||
827 .loc 1 921 0
|
||
828 0008 0368 ldr r3, [r0]
|
||
829 000a 9A69 ldr r2, [r3, #24]
|
||
830 000c 002A cmp r2, #0
|
||
831 000e 05DB blt .L98
|
||
922:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
923:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** status = HAL_ERROR;
|
||
924:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
925:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
926:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
927:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
928:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
929:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
930:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Lock OPAMP */
|
||
931:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** SET_BIT(hopamp->Instance->TCMR, OPAMP_TCMR_LOCK);
|
||
832 .loc 1 931 0
|
||
833 0010 9A69 ldr r2, [r3, #24]
|
||
834 0012 42F00042 orr r2, r2, #-2147483648
|
||
835 0016 9A61 str r2, [r3, #24]
|
||
907:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
836 .loc 1 907 0
|
||
837 0018 0020 movs r0, #0
|
||
838 .LVL54:
|
||
839 001a 7047 bx lr
|
||
ARM GAS /tmp/ccfpzjW9.s page 34
|
||
|
||
|
||
840 .LVL55:
|
||
841 .L98:
|
||
915:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
842 .loc 1 915 0
|
||
843 001c 0120 movs r0, #1
|
||
844 .LVL56:
|
||
932:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
933:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return status;
|
||
934:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
845 .loc 1 934 0
|
||
846 001e 7047 bx lr
|
||
847 .cfi_endproc
|
||
848 .LFE337:
|
||
850 .section .text.HAL_OPAMP_GetState,"ax",%progbits
|
||
851 .align 1
|
||
852 .p2align 2,,3
|
||
853 .global HAL_OPAMP_GetState
|
||
854 .syntax unified
|
||
855 .thumb
|
||
856 .thumb_func
|
||
857 .fpu fpv4-sp-d16
|
||
859 HAL_OPAMP_GetState:
|
||
860 .LFB338:
|
||
935:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
936:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @}
|
||
938:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
939:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
940:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /** @defgroup OPAMP_Exported_Functions_Group4 Peripheral State functions
|
||
941:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Peripheral State functions
|
||
942:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** *
|
||
943:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @verbatim
|
||
944:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ===============================================================================
|
||
945:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ##### Peripheral State functions #####
|
||
946:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** ===============================================================================
|
||
947:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** [..]
|
||
948:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** This subsection permit to get in run-time the status of the peripheral
|
||
949:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** and the data flow.
|
||
950:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
951:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** @endverbatim
|
||
952:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @{
|
||
953:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
954:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
955:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
956:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Return the OPAMP state
|
||
957:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
958:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval HAL state
|
||
959:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
960:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** HAL_OPAMP_StateTypeDef HAL_OPAMP_GetState(OPAMP_HandleTypeDef *hopamp)
|
||
961:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
861 .loc 1 961 0
|
||
862 .cfi_startproc
|
||
863 @ args = 0, pretend = 0, frame = 0
|
||
864 @ frame_needed = 0, uses_anonymous_args = 0
|
||
865 @ link register save eliminated.
|
||
866 .LVL57:
|
||
962:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation */
|
||
ARM GAS /tmp/ccfpzjW9.s page 35
|
||
|
||
|
||
963:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
867 .loc 1 963 0
|
||
868 0000 10B1 cbz r0, .L100
|
||
964:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
965:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return HAL_OPAMP_STATE_RESET;
|
||
966:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
967:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
968:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
969:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
970:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
971:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return hopamp->State;
|
||
869 .loc 1 971 0
|
||
870 0002 90F83A00 ldrb r0, [r0, #58] @ zero_extendqisi2
|
||
871 .LVL58:
|
||
872 0006 C0B2 uxtb r0, r0
|
||
873 .L100:
|
||
972:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
874 .loc 1 972 0
|
||
875 0008 7047 bx lr
|
||
876 .cfi_endproc
|
||
877 .LFE338:
|
||
879 000a 00BF .section .text.HAL_OPAMP_GetTrimOffset,"ax",%progbits
|
||
880 .align 1
|
||
881 .p2align 2,,3
|
||
882 .global HAL_OPAMP_GetTrimOffset
|
||
883 .syntax unified
|
||
884 .thumb
|
||
885 .thumb_func
|
||
886 .fpu fpv4-sp-d16
|
||
888 HAL_OPAMP_GetTrimOffset:
|
||
889 .LFB339:
|
||
973:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
974:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /**
|
||
975:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @brief Return the OPAMP factory trimming value
|
||
976:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param hopamp OPAMP handle
|
||
977:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @param trimmingoffset Trimming offset (P or N)
|
||
978:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * @retval Trimming value (P or N): range: 0->31
|
||
979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** * or OPAMP_FACTORYTRIMMING_DUMMY if trimming value is not available
|
||
980:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** */
|
||
981:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
982:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_TrimmingValueTypeDef HAL_OPAMP_GetTrimOffset(OPAMP_HandleTypeDef *hopamp, uint32_t trimmingof
|
||
983:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
890 .loc 1 983 0
|
||
891 .cfi_startproc
|
||
892 @ args = 0, pretend = 0, frame = 0
|
||
893 @ frame_needed = 0, uses_anonymous_args = 0
|
||
894 @ link register save eliminated.
|
||
895 .LVL59:
|
||
984:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** uint32_t oldusertrimming = 0UL;
|
||
985:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** OPAMP_TrimmingValueTypeDef oldtrimmingvaluep = 0UL, oldtrimmingvaluen = 0UL, trimmingvalue;
|
||
986:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
987:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the OPAMP handle allocation */
|
||
988:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Value can be retrieved in HAL_OPAMP_STATE_READY state */
|
||
989:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (hopamp == NULL)
|
||
896 .loc 1 989 0
|
||
897 0000 70B3 cbz r0, .L108
|
||
990:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
ARM GAS /tmp/ccfpzjW9.s page 36
|
||
|
||
|
||
991:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return OPAMP_FACTORYTRIMMING_DUMMY;
|
||
992:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
993:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else if (hopamp->State != HAL_OPAMP_STATE_READY)
|
||
898 .loc 1 993 0
|
||
899 0002 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
|
||
900 0006 012B cmp r3, #1
|
||
901 0008 2AD1 bne .L108
|
||
994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
995:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return OPAMP_FACTORYTRIMMING_DUMMY;
|
||
996:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
997:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
998:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
999:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the parameter */
|
||
1000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_ALL_INSTANCE(hopamp->Instance));
|
||
1001:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** assert_param(IS_OPAMP_FACTORYTRIMMING(trimmingoffset));
|
||
1002:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
1003:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check the trimming mode */
|
||
1004:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if ((READ_BIT(hopamp->Instance->CSR, OPAMP_CSR_USERTRIM)) != 0UL)
|
||
902 .loc 1 1004 0
|
||
903 000a 0368 ldr r3, [r0]
|
||
904 000c 1A68 ldr r2, [r3]
|
||
905 000e 12F01002 ands r2, r2, #16
|
||
983:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** uint32_t oldusertrimming = 0UL;
|
||
906 .loc 1 983 0
|
||
907 0012 30B4 push {r4, r5}
|
||
908 .LCFI19:
|
||
909 .cfi_def_cfa_offset 8
|
||
910 .cfi_offset 4, -8
|
||
911 .cfi_offset 5, -4
|
||
912 .loc 1 1004 0
|
||
913 0014 27D0 beq .L109
|
||
914 .LVL60:
|
||
1005:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
1006:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* User trimming is used */
|
||
1007:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** oldusertrimming = OPAMP_TRIMMING_USER;
|
||
1008:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Store the TrimmingValueP & TrimmingValueN */
|
||
1009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** oldtrimmingvaluep = (hopamp->Instance->CSR & OPAMP_CSR_TRIMOFFSETP) >> OPAMP_INPUT_NONINVERTI
|
||
915 .loc 1 1009 0
|
||
916 0016 1D68 ldr r5, [r3]
|
||
1010:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** oldtrimmingvaluen = (hopamp->Instance->CSR & OPAMP_CSR_TRIMOFFSETN) >> OPAMP_INPUT_INVERTING;
|
||
917 .loc 1 1010 0
|
||
918 0018 1C68 ldr r4, [r3]
|
||
1009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** oldtrimmingvaluen = (hopamp->Instance->CSR & OPAMP_CSR_TRIMOFFSETN) >> OPAMP_INPUT_INVERTING;
|
||
919 .loc 1 1009 0
|
||
920 001a C5F3C445 ubfx r5, r5, #19, #5
|
||
921 .LVL61:
|
||
922 .loc 1 1010 0
|
||
923 001e C4F30464 ubfx r4, r4, #24, #5
|
||
924 .LVL62:
|
||
1007:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Store the TrimmingValueP & TrimmingValueN */
|
||
925 .loc 1 1007 0
|
||
926 0022 1022 movs r2, #16
|
||
927 .LVL63:
|
||
928 .L104:
|
||
1011:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
1012:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
1013:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Set factory timing mode */
|
||
ARM GAS /tmp/ccfpzjW9.s page 37
|
||
|
||
|
||
1014:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** CLEAR_BIT(hopamp->Instance->CSR, OPAMP_CSR_USERTRIM);
|
||
929 .loc 1 1014 0
|
||
930 0024 1868 ldr r0, [r3]
|
||
931 .LVL64:
|
||
932 0026 20F01000 bic r0, r0, #16
|
||
933 002a 1860 str r0, [r3]
|
||
1015:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
1016:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Get factory trimming */
|
||
1017:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (trimmingoffset == OPAMP_FACTORYTRIMMING_P)
|
||
1018:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
1019:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Return TrimOffsetP */
|
||
1020:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvalue = ((hopamp->Instance->CSR & OPAMP_CSR_TRIMOFFSETP) >> OPAMP_INPUT_NONINVERTING)
|
||
934 .loc 1 1020 0
|
||
935 002c 1868 ldr r0, [r3]
|
||
1017:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
936 .loc 1 1017 0
|
||
937 002e 0129 cmp r1, #1
|
||
938 .loc 1 1020 0
|
||
939 0030 0CBF ite eq
|
||
940 0032 C0F3C440 ubfxeq r0, r0, #19, #5
|
||
941 .LVL65:
|
||
1021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
1022:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** else
|
||
1023:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
1024:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Return TrimOffsetN */
|
||
1025:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** trimmingvalue = ((hopamp->Instance->CSR & OPAMP_CSR_TRIMOFFSETN) >> OPAMP_INPUT_INVERTING);
|
||
942 .loc 1 1025 0
|
||
943 0036 C0F30460 ubfxne r0, r0, #24, #5
|
||
944 .LVL66:
|
||
1026:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
1027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
1028:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Restore user trimming configuration if it was formerly set */
|
||
1029:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Check if user trimming was used */
|
||
1030:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** if (oldusertrimming == OPAMP_TRIMMING_USER)
|
||
945 .loc 1 1030 0
|
||
946 003a 7AB1 cbz r2, .L102
|
||
1031:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** {
|
||
1032:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** /* Restore user trimming */
|
||
1033:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** SET_BIT(hopamp->Instance->CSR, OPAMP_CSR_USERTRIM);
|
||
947 .loc 1 1033 0
|
||
948 003c 1A68 ldr r2, [r3]
|
||
949 .LVL67:
|
||
950 003e 42F01002 orr r2, r2, #16
|
||
951 0042 1A60 str r2, [r3]
|
||
1034:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETP, oldtrimmingvaluep << OPAMP_INPUT_NON
|
||
952 .loc 1 1034 0
|
||
953 0044 1A68 ldr r2, [r3]
|
||
954 0046 22F47802 bic r2, r2, #16252928
|
||
955 004a 42EAC545 orr r5, r2, r5, lsl #19
|
||
956 .LVL68:
|
||
957 004e 1D60 str r5, [r3]
|
||
1035:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** MODIFY_REG(hopamp->Instance->CSR, OPAMP_CSR_TRIMOFFSETN, oldtrimmingvaluen << OPAMP_INPUT_INV
|
||
958 .loc 1 1035 0
|
||
959 0050 1A68 ldr r2, [r3]
|
||
960 0052 22F0F852 bic r2, r2, #520093696
|
||
961 0056 42EA0464 orr r4, r2, r4, lsl #24
|
||
962 .LVL69:
|
||
ARM GAS /tmp/ccfpzjW9.s page 38
|
||
|
||
|
||
963 005a 1C60 str r4, [r3]
|
||
964 .L102:
|
||
1036:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
1037:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
1038:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** return trimmingvalue;
|
||
1039:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
965 .loc 1 1039 0
|
||
966 005c 30BC pop {r4, r5}
|
||
967 .LCFI20:
|
||
968 .cfi_restore 5
|
||
969 .cfi_restore 4
|
||
970 .cfi_def_cfa_offset 0
|
||
971 005e 7047 bx lr
|
||
972 .LVL70:
|
||
973 .L108:
|
||
991:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c **** }
|
||
974 .loc 1 991 0
|
||
975 0060 4FF0FF30 mov r0, #-1
|
||
976 .LVL71:
|
||
977 .loc 1 1039 0
|
||
978 0064 7047 bx lr
|
||
979 .LVL72:
|
||
980 .L109:
|
||
981 .LCFI21:
|
||
982 .cfi_def_cfa_offset 8
|
||
983 .cfi_offset 4, -8
|
||
984 .cfi_offset 5, -4
|
||
985:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.c ****
|
||
985 .loc 1 985 0
|
||
986 0066 1446 mov r4, r2
|
||
987 0068 1546 mov r5, r2
|
||
988 006a DBE7 b .L104
|
||
989 .cfi_endproc
|
||
990 .LFE339:
|
||
992 .text
|
||
993 .Letext0:
|
||
994 .file 2 "/usr/include/newlib/machine/_default_types.h"
|
||
995 .file 3 "/usr/include/newlib/sys/_stdint.h"
|
||
996 .file 4 "Drivers/CMSIS/Include/core_cm4.h"
|
||
997 .file 5 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h"
|
||
998 .file 6 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h"
|
||
999 .file 7 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h"
|
||
1000 .file 8 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h"
|
||
1001 .file 9 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h"
|
||
1002 .file 10 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h"
|
||
1003 .file 11 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h"
|
||
1004 .file 12 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h"
|
||
ARM GAS /tmp/ccfpzjW9.s page 39
|
||
|
||
|
||
DEFINED SYMBOLS
|
||
*ABS*:0000000000000000 stm32g4xx_hal_opamp.c
|
||
/tmp/ccfpzjW9.s:16 .text.HAL_OPAMP_MspInit:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:24 .text.HAL_OPAMP_MspInit:0000000000000000 HAL_OPAMP_MspInit
|
||
/tmp/ccfpzjW9.s:39 .text.HAL_OPAMP_Init:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:47 .text.HAL_OPAMP_Init:0000000000000000 HAL_OPAMP_Init
|
||
/tmp/ccfpzjW9.s:245 .text.HAL_OPAMP_Init:0000000000000100 $d
|
||
/tmp/ccfpzjW9.s:251 .text.HAL_OPAMP_MspDeInit:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:259 .text.HAL_OPAMP_MspDeInit:0000000000000000 HAL_OPAMP_MspDeInit
|
||
/tmp/ccfpzjW9.s:270 .text.HAL_OPAMP_DeInit:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:278 .text.HAL_OPAMP_DeInit:0000000000000000 HAL_OPAMP_DeInit
|
||
/tmp/ccfpzjW9.s:352 .text.HAL_OPAMP_Start:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:360 .text.HAL_OPAMP_Start:0000000000000000 HAL_OPAMP_Start
|
||
/tmp/ccfpzjW9.s:417 .text.HAL_OPAMP_Stop:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:425 .text.HAL_OPAMP_Stop:0000000000000000 HAL_OPAMP_Stop
|
||
/tmp/ccfpzjW9.s:486 .text.HAL_OPAMP_SelfCalibrate:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:494 .text.HAL_OPAMP_SelfCalibrate:0000000000000000 HAL_OPAMP_SelfCalibrate
|
||
/tmp/ccfpzjW9.s:745 .text.HAL_OPAMP_Lock:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:753 .text.HAL_OPAMP_Lock:0000000000000000 HAL_OPAMP_Lock
|
||
/tmp/ccfpzjW9.s:806 .text.HAL_OPAMP_LockTimerMux:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:814 .text.HAL_OPAMP_LockTimerMux:0000000000000000 HAL_OPAMP_LockTimerMux
|
||
/tmp/ccfpzjW9.s:851 .text.HAL_OPAMP_GetState:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:859 .text.HAL_OPAMP_GetState:0000000000000000 HAL_OPAMP_GetState
|
||
/tmp/ccfpzjW9.s:880 .text.HAL_OPAMP_GetTrimOffset:0000000000000000 $t
|
||
/tmp/ccfpzjW9.s:888 .text.HAL_OPAMP_GetTrimOffset:0000000000000000 HAL_OPAMP_GetTrimOffset
|
||
|
||
UNDEFINED SYMBOLS
|
||
HAL_Delay
|