Files
bassofono/codice/build/stm32g4xx_hal_dac_ex.lst
2021-07-03 18:17:05 +02:00

2985 lines
181 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
ARM GAS /tmp/ccFqqhpF.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_dac_ex.c"
12 .text
13 .Ltext0:
14 .cfi_sections .debug_frame
15 .section .text.HAL_DACEx_DualStart,"ax",%progbits
16 .align 1
17 .p2align 2,,3
18 .global HAL_DACEx_DualStart
19 .syntax unified
20 .thumb
21 .thumb_func
22 .fpu fpv4-sp-d16
24 HAL_DACEx_DualStart:
25 .LFB329:
26 .file 1 "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c"
1:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
2:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ******************************************************************************
3:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @file stm32g4xx_hal_dac_ex.c
4:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @author MCD Application Team
5:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Extended DAC HAL module driver.
6:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This file provides firmware functions to manage the extended
7:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * functionalities of the DAC peripheral.
8:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
9:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
10:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** @verbatim
11:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ==============================================================================
12:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ##### How to use this driver #####
13:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ==============================================================================
14:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** [..]
15:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
16:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *** Dual mode IO operation ***
17:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ==============================
18:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** [..]
19:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_DualStart() to enable both channel and start conversion
20:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** for dual mode operation.
21:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** If software trigger is selected, using HAL_DACEx_DualStart() will start
22:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** the conversion of the value previously set by HAL_DACEx_DualSetValue().
23:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_DualStop() to disable both channel and stop conversion
24:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** for dual mode operation.
25:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_DualStart_DMA() to enable both channel and start conversion
26:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** for dual mode operation using DMA to feed DAC converters.
27:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** First issued trigger will start the conversion of the value previously
28:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** set by HAL_DACEx_DualSetValue().
29:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** The same callbacks that are used in single mode are called in dual mode to notify
30:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** transfer completion (half complete or complete), errors or underrun.
31:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_DualStop_DMA() to disable both channel and stop conversion
32:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** for dual mode operation using DMA to feed DAC converters.
ARM GAS /tmp/ccFqqhpF.s page 2
33:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) When Dual mode is enabled (i.e. DAC Channel1 and Channel2 are used simultaneously) :
34:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** Use HAL_DACEx_DualGetValue() to get digital data to be converted and use
35:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_DACEx_DualSetValue() to set digital value to converted simultaneously in
36:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** Channel 1 and Channel 2.
37:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
38:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *** Signal generation operation ***
39:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ===================================
40:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** [..]
41:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_TriangleWaveGenerate() to generate Triangle signal.
42:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_NoiseWaveGenerate() to generate Noise signal.
43:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
44:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_SawtoothWaveGenerate() to generate sawtooth signal.
45:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_SawtoothWaveDataReset() to reset sawtooth wave.
46:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Use HAL_DACEx_SawtoothWaveDataStep() to step sawtooth wave.
47:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
48:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) HAL_DACEx_SelfCalibrate to calibrate one DAC channel.
49:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) HAL_DACEx_SetUserTrimming to set user trimming value.
50:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) HAL_DACEx_GetTrimOffset to retrieve trimming value (factory setting
51:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** after reset, user setting if HAL_DACEx_SetUserTrimming have been used
52:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** at least one time after reset).
53:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
54:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** @endverbatim
55:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ******************************************************************************
56:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @attention
57:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
58:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
59:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * All rights reserved.</center></h2>
60:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
61:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This software component is licensed by ST under BSD 3-Clause license,
62:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the "License"; You may not use this file except in compliance with the
63:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * License. You may obtain a copy of the License at:
64:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * opensource.org/licenses/BSD-3-Clause
65:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
66:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ******************************************************************************
67:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
68:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
69:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
70:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Includes ------------------------------------------------------------------*/
71:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #include "stm32g4xx_hal.h"
72:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
73:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /** @addtogroup STM32G4xx_HAL_Driver
74:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @{
75:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
76:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
77:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #ifdef HAL_DAC_MODULE_ENABLED
78:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
79:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #if defined(DAC1) || defined(DAC2) || defined(DAC3) ||defined (DAC4)
80:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
81:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /** @defgroup DACEx DACEx
82:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief DAC Extended HAL module driver
83:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @{
84:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
85:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
86:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Private typedef -----------------------------------------------------------*/
87:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Private define ------------------------------------------------------------*/
88:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Private macro -------------------------------------------------------------*/
89:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Private variables ---------------------------------------------------------*/
ARM GAS /tmp/ccFqqhpF.s page 3
90:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Private function prototypes -----------------------------------------------*/
91:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Exported functions --------------------------------------------------------*/
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
93:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /** @defgroup DACEx_Exported_Functions DACEx Exported Functions
94:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @{
95:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
96:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
97:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /** @defgroup DACEx_Exported_Functions_Group2 IO operation functions
98:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Extended IO operation functions
99:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
100:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** @verbatim
101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ==============================================================================
102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ##### Extended features functions #####
103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ==============================================================================
104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** [..] This section provides functions allowing to:
105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Start conversion.
106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Stop conversion.
107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Start conversion and enable DMA transfer.
108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Stop conversion and disable DMA transfer.
109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Get result of conversion.
110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Get result of dual mode conversion.
111:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
112:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** @endverbatim
113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @{
114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
116:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
117:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Enables DAC and starts conversion of both channels.
119:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
121:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_DualStart(DAC_HandleTypeDef *hdac)
124:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
27 .loc 1 124 0
28 .cfi_startproc
29 @ args = 0, pretend = 0, frame = 0
30 @ frame_needed = 0, uses_anonymous_args = 0
31 .LVL0:
32 0000 38B5 push {r3, r4, r5, lr}
33 .LCFI0:
34 .cfi_def_cfa_offset 16
35 .cfi_offset 3, -16
36 .cfi_offset 4, -12
37 .cfi_offset 5, -8
38 .cfi_offset 14, -4
125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t tmp_swtrig = 0UL;
126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
128:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, DAC_CHANNEL_2));
129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
39 .loc 1 131 0
40 0002 4379 ldrb r3, [r0, #5] @ zero_extendqisi2
41 0004 012B cmp r3, #1
ARM GAS /tmp/ccFqqhpF.s page 4
42 0006 29D0 beq .L4
132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
133:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_BUSY;
135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
136:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the Peripheral */
137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_ENABLE(hdac, DAC_CHANNEL_1);
43 .loc 1 137 0 discriminator 2
44 0008 0368 ldr r3, [r0]
134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
45 .loc 1 134 0 discriminator 2
46 000a 0222 movs r2, #2
47 000c 0271 strb r2, [r0, #4]
48 .loc 1 137 0 discriminator 2
49 000e 1A68 ldr r2, [r3]
50 0010 0446 mov r4, r0
131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
51 .loc 1 131 0 discriminator 2
52 0012 0120 movs r0, #1
53 .LVL1:
54 .loc 1 137 0 discriminator 2
55 0014 0243 orrs r2, r2, r0
131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
56 .loc 1 131 0 discriminator 2
57 0016 6071 strb r0, [r4, #5]
58 .loc 1 137 0 discriminator 2
59 0018 1A60 str r2, [r3]
138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_ENABLE(hdac, DAC_CHANNEL_2);
60 .loc 1 138 0 discriminator 2
61 001a 1A68 ldr r2, [r3]
62 001c 42F48032 orr r2, r2, #65536
63 0020 1A60 str r2, [r3]
139:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Ensure minimum wait before using peripheral after enabling it */
140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_Delay(1);
64 .loc 1 140 0 discriminator 2
65 0022 FFF7FEFF bl HAL_Delay
66 .LVL2:
141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check if software trigger enabled */
143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if ((hdac->Instance->CR & (DAC_CR_TEN1 | DAC_CR_TSEL1)) == DAC_TRIGGER_SOFTWARE)
67 .loc 1 143 0 discriminator 2
68 0026 2268 ldr r2, [r4]
69 0028 1368 ldr r3, [r2]
144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp_swtrig |= DAC_SWTRIGR_SWTRIG1;
146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
147:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if ((hdac->Instance->CR & (DAC_CR_TEN2 | DAC_CR_TSEL2)) == (DAC_TRIGGER_SOFTWARE << (DAC_CHANNEL_
70 .loc 1 147 0 discriminator 2
71 002a 1168 ldr r1, [r2]
143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
72 .loc 1 143 0 discriminator 2
73 002c 03F03E03 and r3, r3, #62
74 0030 A3F10203 sub r3, #2
75 .loc 1 147 0 discriminator 2
76 0034 01F47811 and r1, r1, #4063232
143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
77 .loc 1 143 0 discriminator 2
ARM GAS /tmp/ccFqqhpF.s page 5
78 0038 B3FA83F3 clz r3, r3
79 .loc 1 147 0 discriminator 2
80 003c B1F5003F cmp r1, #131072
143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
81 .loc 1 143 0 discriminator 2
82 0040 4FEA5313 lsr r3, r3, #5
83 .LVL3:
148:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp_swtrig |= DAC_SWTRIGR_SWTRIG2;
150:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the selected DAC software conversion*/
152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** SET_BIT(hdac->Instance->SWTRIGR, tmp_swtrig);
84 .loc 1 152 0 discriminator 2
85 0044 5168 ldr r1, [r2, #4]
149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
86 .loc 1 149 0 discriminator 2
87 0046 08BF it eq
88 0048 43F00203 orreq r3, r3, #2
89 .LVL4:
90 .loc 1 152 0 discriminator 2
91 004c 0B43 orrs r3, r3, r1
92 .LVL5:
153:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
154:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
93 .loc 1 155 0 discriminator 2
94 004e 0125 movs r5, #1
156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process unlocked */
158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
95 .loc 1 158 0 discriminator 2
96 0050 0021 movs r1, #0
152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
97 .loc 1 152 0 discriminator 2
98 0052 5360 str r3, [r2, #4]
159:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return HAL_OK;
99 .loc 1 161 0 discriminator 2
100 0054 0846 mov r0, r1
155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
101 .loc 1 155 0 discriminator 2
102 0056 2571 strb r5, [r4, #4]
158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
103 .loc 1 158 0 discriminator 2
104 0058 6171 strb r1, [r4, #5]
162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
105 .loc 1 162 0 discriminator 2
106 005a 38BD pop {r3, r4, r5, pc}
107 .LVL6:
108 .L4:
131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
109 .loc 1 131 0
110 005c 0220 movs r0, #2
111 .LVL7:
112 .loc 1 162 0
113 005e 38BD pop {r3, r4, r5, pc}
ARM GAS /tmp/ccFqqhpF.s page 6
114 .cfi_endproc
115 .LFE329:
117 .section .text.HAL_DACEx_DualStop,"ax",%progbits
118 .align 1
119 .p2align 2,,3
120 .global HAL_DACEx_DualStop
121 .syntax unified
122 .thumb
123 .thumb_func
124 .fpu fpv4-sp-d16
126 HAL_DACEx_DualStop:
127 .LFB330:
163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Disables DAC and stop conversion of both channels.
166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
167:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_DualStop(DAC_HandleTypeDef *hdac)
171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
128 .loc 1 171 0
129 .cfi_startproc
130 @ args = 0, pretend = 0, frame = 0
131 @ frame_needed = 0, uses_anonymous_args = 0
132 .LVL8:
133 0000 10B5 push {r4, lr}
134 .LCFI1:
135 .cfi_def_cfa_offset 8
136 .cfi_offset 4, -8
137 .cfi_offset 14, -4
138 .loc 1 171 0
139 0002 0446 mov r4, r0
172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, DAC_CHANNEL_2));
174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the Peripheral */
176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_DISABLE(hdac, DAC_CHANNEL_1);
177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_DISABLE(hdac, DAC_CHANNEL_2);
178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Ensure minimum wait before enabling peripheral after disabling it */
179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_Delay(1);
140 .loc 1 179 0
141 0004 0120 movs r0, #1
142 .LVL9:
176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_DISABLE(hdac, DAC_CHANNEL_2);
143 .loc 1 176 0
144 0006 2368 ldr r3, [r4]
145 0008 1A68 ldr r2, [r3]
146 000a 22F00102 bic r2, r2, #1
147 000e 1A60 str r2, [r3]
177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Ensure minimum wait before enabling peripheral after disabling it */
148 .loc 1 177 0
149 0010 1A68 ldr r2, [r3]
150 0012 22F48032 bic r2, r2, #65536
151 0016 1A60 str r2, [r3]
152 .loc 1 179 0
153 0018 FFF7FEFF bl HAL_Delay
ARM GAS /tmp/ccFqqhpF.s page 7
154 .LVL10:
180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
155 .loc 1 182 0
156 001c 0123 movs r3, #1
157 001e 2371 strb r3, [r4, #4]
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return HAL_OK;
186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
158 .loc 1 186 0
159 0020 0020 movs r0, #0
160 0022 10BD pop {r4, pc}
161 .cfi_endproc
162 .LFE330:
164 .section .text.HAL_DACEx_DualStart_DMA,"ax",%progbits
165 .align 1
166 .p2align 2,,3
167 .global HAL_DACEx_DualStart_DMA
168 .syntax unified
169 .thumb
170 .thumb_func
171 .fpu fpv4-sp-d16
173 HAL_DACEx_DualStart_DMA:
174 .LFB331:
187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Enables DAC and starts conversion of both channel 1 and 2 of the same DAC.
190:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The DAC channel that will request data from DMA.
193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected
196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param pData The destination peripheral Buffer address.
197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Length The length of data to be transferred from memory to DAC peripheral
198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Alignment Specifies the data alignment for DAC channel.
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_ALIGN_8B_R: 8bit right data alignment selected
201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_ALIGN_12B_L: 12bit left data alignment selected
202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_ALIGN_12B_R: 12bit right data alignment selected
203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_DualStart_DMA(DAC_HandleTypeDef *hdac, uint32_t Channel, uint32_t *pDat
206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t Alignment)
207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
175 .loc 1 207 0
176 .cfi_startproc
177 @ args = 4, pretend = 0, frame = 0
178 @ frame_needed = 0, uses_anonymous_args = 0
179 .LVL11:
180 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
181 .LCFI2:
182 .cfi_def_cfa_offset 24
183 .cfi_offset 3, -24
184 .cfi_offset 4, -20
ARM GAS /tmp/ccFqqhpF.s page 8
185 .cfi_offset 5, -16
186 .cfi_offset 6, -12
187 .cfi_offset 7, -8
188 .cfi_offset 14, -4
208:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status;
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t tmpreg = 0UL;
210:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Ensure Channel 2 exists for this particular DAC instance */
214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, DAC_CHANNEL_2));
215:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_ALIGN(Alignment));
216:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
189 .loc 1 218 0
190 0002 4479 ldrb r4, [r0, #5] @ zero_extendqisi2
207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status;
191 .loc 1 207 0
192 0004 069F ldr r7, [sp, #24]
193 .loc 1 218 0
194 0006 012C cmp r4, #1
195 0008 69D0 beq .L20
196 000a 0446 mov r4, r0
197 000c 0E46 mov r6, r1
198 000e 2568 ldr r5, [r4]
199 0010 1146 mov r1, r2
200 .LVL12:
219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_BUSY;
201 .loc 1 221 0 discriminator 2
202 0012 0222 movs r2, #2
203 .LVL13:
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
204 .loc 1 218 0 discriminator 2
205 0014 0120 movs r0, #1
206 .LVL14:
207 .loc 1 221 0 discriminator 2
208 0016 2271 strb r2, [r4, #4]
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
209 .loc 1 218 0 discriminator 2
210 0018 6071 strb r0, [r4, #5]
222:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (Channel == DAC_CHANNEL_1)
224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set the DMA transfer complete callback for channel1 */
226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->DMA_Handle1->XferCpltCallback = DAC_DMAConvCpltCh1;
227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set the DMA half transfer complete callback for channel1 */
229:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->DMA_Handle1->XferHalfCpltCallback = DAC_DMAHalfConvCpltCh1;
230:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set the DMA error callback for channel1 */
232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->DMA_Handle1->XferErrorCallback = DAC_DMAErrorCh1;
233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the selected DAC channel1 DMA request */
235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** SET_BIT(hdac->Instance->CR, DAC_CR_DMAEN1);
ARM GAS /tmp/ccFqqhpF.s page 9
211 .loc 1 235 0 discriminator 2
212 001a 2A68 ldr r2, [r5]
223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
213 .loc 1 223 0 discriminator 2
214 001c 26B3 cbz r6, .L47
236:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
237:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set the DMA transfer complete callback for channel2 */
240:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->DMA_Handle2->XferCpltCallback = DAC_DMAConvCpltCh2;
215 .loc 1 240 0
216 001e E068 ldr r0, [r4, #12]
217 0020 DFF8C0C0 ldr ip, .L50
218 0024 C0F82CC0 str ip, [r0, #44]
241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
242:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set the DMA half transfer complete callback for channel2 */
243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->DMA_Handle2->XferHalfCpltCallback = DAC_DMAHalfConvCpltCh2;
219 .loc 1 243 0
220 0028 DFF8BCE0 ldr lr, .L50+4
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set the DMA error callback for channel2 */
246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->DMA_Handle2->XferErrorCallback = DAC_DMAErrorCh2;
221 .loc 1 246 0
222 002c DFF8BCC0 ldr ip, .L50+8
247:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
248:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the selected DAC channel2 DMA request */
249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** SET_BIT(hdac->Instance->CR, DAC_CR_DMAEN2);
223 .loc 1 249 0
224 0030 42F08052 orr r2, r2, #268435456
250:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** switch (Alignment)
225 .loc 1 252 0
226 0034 042F cmp r7, #4
246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
227 .loc 1 246 0
228 0036 C0E90CEC strd lr, ip, [r0, #48]
249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
229 .loc 1 249 0
230 003a 2A60 str r2, [r5]
231 .loc 1 252 0
232 003c 46D0 beq .L13
233 003e 082F cmp r7, #8
234 0040 27D0 beq .L14
235 0042 002F cmp r7, #0
236 0044 48D0 beq .L15
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
237 .loc 1 209 0
238 0046 0022 movs r2, #0
239 .LVL15:
240 .L17:
253:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
254:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** case DAC_ALIGN_12B_R:
255:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Get DHR12R1 address */
256:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmpreg = (uint32_t)&hdac->Instance->DHR12RD;
257:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** break;
258:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** case DAC_ALIGN_12B_L:
ARM GAS /tmp/ccFqqhpF.s page 10
259:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Get DHR12L1 address */
260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmpreg = (uint32_t)&hdac->Instance->DHR12LD;
261:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** break;
262:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** case DAC_ALIGN_8B_R:
263:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Get DHR8R1 address */
264:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmpreg = (uint32_t)&hdac->Instance->DHR8RD;
265:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** break;
266:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** default:
267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** break;
268:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
269:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
270:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the DMA channel */
271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (Channel == DAC_CHANNEL_1)
272:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
273:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the DAC DMA underrun interrupt */
274:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_ENABLE_IT(hdac, DAC_IT_DMAUDR1);
275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
276:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the DMA channel */
277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_DMA_Start_IT(hdac->DMA_Handle1, (uint32_t)pData, tmpreg, Length);
278:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
279:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
281:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the DAC DMA underrun interrupt */
282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_ENABLE_IT(hdac, DAC_IT_DMAUDR2);
241 .loc 1 282 0
242 0048 2E68 ldr r6, [r5]
243 .LVL16:
244 004a 46F00056 orr r6, r6, #536870912
245 004e 2E60 str r6, [r5]
246 .LVL17:
283:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
284:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the DMA channel */
285:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_DMA_Start_IT(hdac->DMA_Handle2, (uint32_t)pData, tmpreg, Length);
247 .loc 1 285 0
248 0050 FFF7FEFF bl HAL_DMA_Start_IT
249 .LVL18:
286:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
288:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process Unlocked */
289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
250 .loc 1 289 0
251 0054 0023 movs r3, #0
285:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
252 .loc 1 285 0
253 0056 0546 mov r5, r0
254 .LVL19:
255 .loc 1 289 0
256 0058 6371 strb r3, [r4, #5]
290:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
291:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (status == HAL_OK)
257 .loc 1 291 0
258 005a 4DB3 cbz r5, .L48
259 .L19:
292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
293:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the Peripheral */
294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_ENABLE(hdac, DAC_CHANNEL_1);
295:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_ENABLE(hdac, DAC_CHANNEL_2);
ARM GAS /tmp/ccFqqhpF.s page 11
296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Ensure minimum wait before using peripheral after enabling it */
297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_Delay(1);
298:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
299:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
300:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
301:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->ErrorCode |= HAL_DAC_ERROR_DMA;
260 .loc 1 301 0
261 005c 2369 ldr r3, [r4, #16]
262 005e 43F00403 orr r3, r3, #4
263 0062 2361 str r3, [r4, #16]
302:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
303:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
304:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
305:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return status;
306:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
264 .loc 1 306 0
265 0064 2846 mov r0, r5
266 0066 F8BD pop {r3, r4, r5, r6, r7, pc}
267 .LVL20:
268 .L47:
226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
269 .loc 1 226 0
270 0068 A068 ldr r0, [r4, #8]
271 006a DFF884C0 ldr ip, .L50+12
272 006e C0F82CC0 str ip, [r0, #44]
229:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
273 .loc 1 229 0
274 0072 DFF880E0 ldr lr, .L50+16
232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
275 .loc 1 232 0
276 0076 DFF880C0 ldr ip, .L50+20
235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
277 .loc 1 235 0
278 007a 42F48052 orr r2, r2, #4096
252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
279 .loc 1 252 0
280 007e 042F cmp r7, #4
232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
281 .loc 1 232 0
282 0080 C0E90CEC strd lr, ip, [r0, #48]
235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
283 .loc 1 235 0
284 0084 2A60 str r2, [r5]
252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
285 .loc 1 252 0
286 0086 21D0 beq .L13
287 0088 082F cmp r7, #8
288 008a 02D0 beq .L14
289 008c 27B3 cbz r7, .L15
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
290 .loc 1 209 0
291 008e 3246 mov r2, r6
292 0090 03E0 b .L12
293 .L14:
264:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** break;
294 .loc 1 264 0
295 0092 05F12802 add r2, r5, #40
ARM GAS /tmp/ccFqqhpF.s page 12
296 .LVL21:
297 .L16:
271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
298 .loc 1 271 0
299 0096 EEB9 cbnz r6, .L45
300 .L49:
301 0098 A068 ldr r0, [r4, #8]
302 .LVL22:
303 .L12:
274:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
304 .loc 1 274 0
305 009a 2E68 ldr r6, [r5]
306 .LVL23:
307 009c 46F40056 orr r6, r6, #8192
308 00a0 2E60 str r6, [r5]
309 .LVL24:
277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
310 .loc 1 277 0
311 00a2 FFF7FEFF bl HAL_DMA_Start_IT
312 .LVL25:
289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
313 .loc 1 289 0
314 00a6 0023 movs r3, #0
277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
315 .loc 1 277 0
316 00a8 0546 mov r5, r0
317 .LVL26:
289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
318 .loc 1 289 0
319 00aa 6371 strb r3, [r4, #5]
291:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
320 .loc 1 291 0
321 00ac 002D cmp r5, #0
322 00ae D5D1 bne .L19
323 .L48:
294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_ENABLE(hdac, DAC_CHANNEL_2);
324 .loc 1 294 0
325 00b0 2368 ldr r3, [r4]
326 00b2 1A68 ldr r2, [r3]
327 00b4 42F00102 orr r2, r2, #1
328 00b8 1A60 str r2, [r3]
295:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Ensure minimum wait before using peripheral after enabling it */
329 .loc 1 295 0
330 00ba 1A68 ldr r2, [r3]
331 00bc 42F48032 orr r2, r2, #65536
332 00c0 1A60 str r2, [r3]
297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
333 .loc 1 297 0
334 00c2 0120 movs r0, #1
335 00c4 FFF7FEFF bl HAL_Delay
336 .LVL27:
337 .loc 1 306 0
338 00c8 2846 mov r0, r5
339 00ca F8BD pop {r3, r4, r5, r6, r7, pc}
340 .LVL28:
341 .L13:
260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** break;
ARM GAS /tmp/ccFqqhpF.s page 13
342 .loc 1 260 0
343 00cc 05F12402 add r2, r5, #36
344 .LVL29:
271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
345 .loc 1 271 0
346 00d0 002E cmp r6, #0
347 00d2 E1D0 beq .L49
348 .L45:
349 00d4 E068 ldr r0, [r4, #12]
350 00d6 B7E7 b .L17
351 .LVL30:
352 .L15:
256:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** break;
353 .loc 1 256 0
354 00d8 05F12002 add r2, r5, #32
355 .LVL31:
257:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** case DAC_ALIGN_12B_L:
356 .loc 1 257 0
357 00dc DBE7 b .L16
358 .LVL32:
359 .L20:
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
360 .loc 1 218 0
361 00de 0225 movs r5, #2
362 .loc 1 306 0
363 00e0 2846 mov r0, r5
364 .LVL33:
365 00e2 F8BD pop {r3, r4, r5, r6, r7, pc}
366 .LVL34:
367 .L51:
368 .align 2
369 .L50:
370 00e4 00000000 .word DAC_DMAConvCpltCh2
371 00e8 00000000 .word DAC_DMAHalfConvCpltCh2
372 00ec 00000000 .word DAC_DMAErrorCh2
373 00f0 00000000 .word DAC_DMAConvCpltCh1
374 00f4 00000000 .word DAC_DMAHalfConvCpltCh1
375 00f8 00000000 .word DAC_DMAErrorCh1
376 .cfi_endproc
377 .LFE331:
379 .section .text.HAL_DACEx_DualStop_DMA,"ax",%progbits
380 .align 1
381 .p2align 2,,3
382 .global HAL_DACEx_DualStop_DMA
383 .syntax unified
384 .thumb
385 .thumb_func
386 .fpu fpv4-sp-d16
388 HAL_DACEx_DualStop_DMA:
389 .LFB332:
307:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
308:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Disables DAC and stop conversion both channel.
310:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
312:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The DAC channel that requests data from DMA.
313:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
ARM GAS /tmp/ccFqqhpF.s page 14
314:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
315:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected
316:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_DualStop_DMA(DAC_HandleTypeDef *hdac, uint32_t Channel)
319:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
390 .loc 1 319 0
391 .cfi_startproc
392 @ args = 0, pretend = 0, frame = 0
393 @ frame_needed = 0, uses_anonymous_args = 0
394 .LVL35:
395 0000 38B5 push {r3, r4, r5, lr}
396 .LCFI3:
397 .cfi_def_cfa_offset 16
398 .cfi_offset 3, -16
399 .cfi_offset 4, -12
400 .cfi_offset 5, -8
401 .cfi_offset 14, -4
320:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status;
321:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
322:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Ensure Channel 2 exists for this particular DAC instance */
323:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, DAC_CHANNEL_2));
324:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
325:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the selected DAC channel DMA request */
326:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** CLEAR_BIT(hdac->Instance->CR, DAC_CR_DMAEN2 | DAC_CR_DMAEN1);
402 .loc 1 326 0
403 0002 0368 ldr r3, [r0]
404 0004 1A68 ldr r2, [r3]
405 0006 22F01022 bic r2, r2, #268439552
406 000a 1A60 str r2, [r3]
327:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
328:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the Peripheral */
329:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_DISABLE(hdac, DAC_CHANNEL_1);
407 .loc 1 329 0
408 000c 1A68 ldr r2, [r3]
409 000e 22F00102 bic r2, r2, #1
410 0012 1A60 str r2, [r3]
330:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_DISABLE(hdac, DAC_CHANNEL_2);
411 .loc 1 330 0
412 0014 1A68 ldr r2, [r3]
413 0016 22F48032 bic r2, r2, #65536
319:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status;
414 .loc 1 319 0
415 001a 0446 mov r4, r0
416 001c 0D46 mov r5, r1
417 .loc 1 330 0
418 001e 1A60 str r2, [r3]
331:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Ensure minimum wait before enabling peripheral after disabling it */
332:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_Delay(1);
419 .loc 1 332 0
420 0020 0120 movs r0, #1
421 .LVL36:
422 0022 FFF7FEFF bl HAL_Delay
423 .LVL37:
333:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
334:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the DMA channel */
335:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
ARM GAS /tmp/ccFqqhpF.s page 15
336:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Channel1 is used */
337:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (Channel == DAC_CHANNEL_1)
424 .loc 1 337 0
425 0026 5DB9 cbnz r5, .L53
338:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
339:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the DMA channel */
340:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_DMA_Abort(hdac->DMA_Handle1);
426 .loc 1 340 0
427 0028 A068 ldr r0, [r4, #8]
428 002a FFF7FEFF bl HAL_DMA_Abort
429 .LVL38:
341:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
342:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the DAC DMA underrun interrupt */
343:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_DISABLE_IT(hdac, DAC_IT_DMAUDR1);
430 .loc 1 343 0
431 002e 2268 ldr r2, [r4]
432 0030 1368 ldr r3, [r2]
433 0032 23F40053 bic r3, r3, #8192
434 0036 1360 str r3, [r2]
344:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
345:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the DMA channel */
348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_DMA_Abort(hdac->DMA_Handle2);
349:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
350:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the DAC DMA underrun interrupt */
351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_DAC_DISABLE_IT(hdac, DAC_IT_DMAUDR2);
352:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
354:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check if DMA Channel effectively disabled */
355:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (status != HAL_OK)
435 .loc 1 355 0
436 0038 60B9 cbnz r0, .L58
437 .L55:
356:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
357:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Update DAC state machine to error */
358:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_ERROR;
359:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
363:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
438 .loc 1 363 0
439 003a 0123 movs r3, #1
440 003c 2371 strb r3, [r4, #4]
364:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
366:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
367:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return status;
368:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
441 .loc 1 368 0
442 003e 38BD pop {r3, r4, r5, pc}
443 .LVL39:
444 .L53:
348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
445 .loc 1 348 0
446 0040 E068 ldr r0, [r4, #12]
ARM GAS /tmp/ccFqqhpF.s page 16
447 0042 FFF7FEFF bl HAL_DMA_Abort
448 .LVL40:
351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
449 .loc 1 351 0
450 0046 2268 ldr r2, [r4]
451 0048 1368 ldr r3, [r2]
452 004a 23F00053 bic r3, r3, #536870912
453 004e 1360 str r3, [r2]
355:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
454 .loc 1 355 0
455 0050 0028 cmp r0, #0
456 0052 F2D0 beq .L55
457 .L58:
358:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
458 .loc 1 358 0
459 0054 0423 movs r3, #4
460 0056 2371 strb r3, [r4, #4]
461 .loc 1 368 0
462 0058 38BD pop {r3, r4, r5, pc}
463 .cfi_endproc
464 .LFE332:
466 005a 00BF .section .text.HAL_DACEx_TriangleWaveGenerate,"ax",%progbits
467 .align 1
468 .p2align 2,,3
469 .global HAL_DACEx_TriangleWaveGenerate
470 .syntax unified
471 .thumb
472 .thumb_func
473 .fpu fpv4-sp-d16
475 HAL_DACEx_TriangleWaveGenerate:
476 .LFB333:
369:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
370:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
371:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
372:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Enable or disable the selected DAC channel wave generation.
373:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
374:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The selected DAC channel.
376:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected (1)
379:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
380:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * (1) On this STM32 series, parameter not available on all instances.
381:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Refer to device datasheet for channels availability.
382:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Amplitude Select max triangle amplitude.
383:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
384:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_1: Select max triangle amplitude of 1
385:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_3: Select max triangle amplitude of 3
386:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_7: Select max triangle amplitude of 7
387:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_15: Select max triangle amplitude of 15
388:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_31: Select max triangle amplitude of 31
389:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_63: Select max triangle amplitude of 63
390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_127: Select max triangle amplitude of 127
391:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_255: Select max triangle amplitude of 255
392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_511: Select max triangle amplitude of 511
393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_1023: Select max triangle amplitude of 1023
394:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_2047: Select max triangle amplitude of 2047
ARM GAS /tmp/ccFqqhpF.s page 17
395:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_TRIANGLEAMPLITUDE_4095: Select max triangle amplitude of 4095
396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
397:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_TriangleWaveGenerate(DAC_HandleTypeDef *hdac, uint32_t Channel, uint32_
399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
477 .loc 1 399 0
478 .cfi_startproc
479 @ args = 0, pretend = 0, frame = 0
480 @ frame_needed = 0, uses_anonymous_args = 0
481 @ link register save eliminated.
482 .LVL41:
483 0000 0346 mov r3, r0
400:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
401:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
402:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_LFSR_UNMASK_TRIANGLE_AMPLITUDE(Amplitude));
403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
404:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
405:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
484 .loc 1 405 0
485 0002 4079 ldrb r0, [r0, #5] @ zero_extendqisi2
486 .LVL42:
487 0004 0128 cmp r0, #1
488 0006 17D0 beq .L61
399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
489 .loc 1 399 0 discriminator 2
490 0008 30B4 push {r4, r5}
491 .LCFI4:
492 .cfi_def_cfa_offset 8
493 .cfi_offset 4, -8
494 .cfi_offset 5, -4
406:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_BUSY;
495 .loc 1 408 0 discriminator 2
496 000a 0220 movs r0, #2
409:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the triangle wave generation for the selected DAC channel */
411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->CR, ((DAC_CR_WAVE1) | (DAC_CR_MAMP1)) << (Channel & 0x10UL),
497 .loc 1 411 0 discriminator 2
498 000c 1D68 ldr r5, [r3]
408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
499 .loc 1 408 0 discriminator 2
500 000e 1871 strb r0, [r3, #4]
501 .loc 1 411 0 discriminator 2
502 0010 4FF47C64 mov r4, #4032
503 0014 01F01000 and r0, r1, #16
504 0018 2968 ldr r1, [r5]
505 .LVL43:
506 001a 8440 lsls r4, r4, r0
507 001c 42F08002 orr r2, r2, #128
508 .LVL44:
509 0020 21EA0401 bic r1, r1, r4
510 0024 8240 lsls r2, r2, r0
511 0026 0A43 orrs r2, r2, r1
412:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (DAC_CR_WAVE1_1 | Amplitude) << (Channel & 0x10UL));
413:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
414:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
ARM GAS /tmp/ccFqqhpF.s page 18
415:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
512 .loc 1 415 0 discriminator 2
513 0028 0124 movs r4, #1
416:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
417:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process unlocked */
418:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
514 .loc 1 418 0 discriminator 2
515 002a 0021 movs r1, #0
411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (DAC_CR_WAVE1_1 | Amplitude) << (Channel & 0x10UL));
516 .loc 1 411 0 discriminator 2
517 002c 2A60 str r2, [r5]
419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
420:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
421:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return HAL_OK;
518 .loc 1 421 0 discriminator 2
519 002e 0846 mov r0, r1
415:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
520 .loc 1 415 0 discriminator 2
521 0030 1C71 strb r4, [r3, #4]
418:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
522 .loc 1 418 0 discriminator 2
523 0032 5971 strb r1, [r3, #5]
422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
524 .loc 1 422 0 discriminator 2
525 0034 30BC pop {r4, r5}
526 .LCFI5:
527 .cfi_restore 5
528 .cfi_restore 4
529 .cfi_def_cfa_offset 0
530 0036 7047 bx lr
531 .LVL45:
532 .L61:
405:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
533 .loc 1 405 0
534 0038 0220 movs r0, #2
535 .loc 1 422 0
536 003a 7047 bx lr
537 .cfi_endproc
538 .LFE333:
540 .section .text.HAL_DACEx_NoiseWaveGenerate,"ax",%progbits
541 .align 1
542 .p2align 2,,3
543 .global HAL_DACEx_NoiseWaveGenerate
544 .syntax unified
545 .thumb
546 .thumb_func
547 .fpu fpv4-sp-d16
549 HAL_DACEx_NoiseWaveGenerate:
550 .LFB334:
423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Enable or disable the selected DAC channel wave generation.
426:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
427:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
428:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The selected DAC channel.
429:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
430:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
ARM GAS /tmp/ccFqqhpF.s page 19
431:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected (1)
432:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
433:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * (1) On this STM32 series, parameter not available on all instances.
434:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Refer to device datasheet for channels availability.
435:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Amplitude Unmask DAC channel LFSR for noise wave generation.
436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
437:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BIT0: Unmask DAC channel LFSR bit0 for noise wave generation
438:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS1_0: Unmask DAC channel LFSR bit[1:0] for noise wave generat
439:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS2_0: Unmask DAC channel LFSR bit[2:0] for noise wave generat
440:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS3_0: Unmask DAC channel LFSR bit[3:0] for noise wave generat
441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS4_0: Unmask DAC channel LFSR bit[4:0] for noise wave generat
442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS5_0: Unmask DAC channel LFSR bit[5:0] for noise wave generat
443:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS6_0: Unmask DAC channel LFSR bit[6:0] for noise wave generat
444:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS7_0: Unmask DAC channel LFSR bit[7:0] for noise wave generat
445:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS8_0: Unmask DAC channel LFSR bit[8:0] for noise wave generat
446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS9_0: Unmask DAC channel LFSR bit[9:0] for noise wave generat
447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS10_0: Unmask DAC channel LFSR bit[10:0] for noise wave gener
448:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_LFSRUNMASK_BITS11_0: Unmask DAC channel LFSR bit[11:0] for noise wave gener
449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
450:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_NoiseWaveGenerate(DAC_HandleTypeDef *hdac, uint32_t Channel, uint32_t A
452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
551 .loc 1 452 0
552 .cfi_startproc
553 @ args = 0, pretend = 0, frame = 0
554 @ frame_needed = 0, uses_anonymous_args = 0
555 @ link register save eliminated.
556 .LVL46:
557 0000 0346 mov r3, r0
453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
454:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
455:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_LFSR_UNMASK_TRIANGLE_AMPLITUDE(Amplitude));
456:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
457:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
458:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
558 .loc 1 458 0
559 0002 4079 ldrb r0, [r0, #5] @ zero_extendqisi2
560 .LVL47:
561 0004 0128 cmp r0, #1
562 0006 17D0 beq .L68
452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
563 .loc 1 452 0 discriminator 2
564 0008 30B4 push {r4, r5}
565 .LCFI6:
566 .cfi_def_cfa_offset 8
567 .cfi_offset 4, -8
568 .cfi_offset 5, -4
459:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
460:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
461:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_BUSY;
569 .loc 1 461 0 discriminator 2
570 000a 0220 movs r0, #2
462:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
463:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the noise wave generation for the selected DAC channel */
464:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->CR, ((DAC_CR_WAVE1) | (DAC_CR_MAMP1)) << (Channel & 0x10UL),
571 .loc 1 464 0 discriminator 2
572 000c 1D68 ldr r5, [r3]
ARM GAS /tmp/ccFqqhpF.s page 20
461:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
573 .loc 1 461 0 discriminator 2
574 000e 1871 strb r0, [r3, #4]
575 .loc 1 464 0 discriminator 2
576 0010 4FF47C64 mov r4, #4032
577 0014 01F01000 and r0, r1, #16
578 0018 2968 ldr r1, [r5]
579 .LVL48:
580 001a 8440 lsls r4, r4, r0
581 001c 42F04002 orr r2, r2, #64
582 .LVL49:
583 0020 21EA0401 bic r1, r1, r4
584 0024 8240 lsls r2, r2, r0
585 0026 0A43 orrs r2, r2, r1
465:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (DAC_CR_WAVE1_0 | Amplitude) << (Channel & 0x10UL));
466:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
467:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
468:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
586 .loc 1 468 0 discriminator 2
587 0028 0124 movs r4, #1
469:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process unlocked */
471:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
588 .loc 1 471 0 discriminator 2
589 002a 0021 movs r1, #0
464:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (DAC_CR_WAVE1_0 | Amplitude) << (Channel & 0x10UL));
590 .loc 1 464 0 discriminator 2
591 002c 2A60 str r2, [r5]
472:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
473:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
474:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return HAL_OK;
592 .loc 1 474 0 discriminator 2
593 002e 0846 mov r0, r1
468:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
594 .loc 1 468 0 discriminator 2
595 0030 1C71 strb r4, [r3, #4]
471:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
596 .loc 1 471 0 discriminator 2
597 0032 5971 strb r1, [r3, #5]
475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
598 .loc 1 475 0 discriminator 2
599 0034 30BC pop {r4, r5}
600 .LCFI7:
601 .cfi_restore 5
602 .cfi_restore 4
603 .cfi_def_cfa_offset 0
604 0036 7047 bx lr
605 .LVL50:
606 .L68:
458:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
607 .loc 1 458 0
608 0038 0220 movs r0, #2
609 .loc 1 475 0
610 003a 7047 bx lr
611 .cfi_endproc
612 .LFE334:
614 .section .text.HAL_DACEx_SawtoothWaveGenerate,"ax",%progbits
ARM GAS /tmp/ccFqqhpF.s page 21
615 .align 1
616 .p2align 2,,3
617 .global HAL_DACEx_SawtoothWaveGenerate
618 .syntax unified
619 .thumb
620 .thumb_func
621 .fpu fpv4-sp-d16
623 HAL_DACEx_SawtoothWaveGenerate:
624 .LFB335:
476:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
477:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
478:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Enable or disable the selected DAC channel sawtooth wave generation.
479:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
480:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The selected DAC channel.
482:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
483:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
484:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected (1)
485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
486:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * (1) On this STM32 series, parameter not available on all instances.
487:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Refer to device datasheet for channels availability.
488:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Polarity polarity to be used for wave generation.
489:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
490:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_SAWTOOTH_POLARITY_DECREMENT
491:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_SAWTOOTH_POLARITY_INCREMENT
492:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param ResetData Sawtooth wave reset value.
493:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Range is from 0 to DAC full range 4095 (0xFFF)
494:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param StepData Sawtooth wave step value.
495:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * 12.4 bit format, unsigned: 12 bits exponent / 4 bits mantissa
496:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Step value step is 1/16 = 0.0625
497:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Step value range is 0.0000 to 4095.9375 (0xFFF.F)
498:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @note Sawtooth reset and step triggers are configured by calling @ref HAL_DAC_ConfigChannel
499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
500:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
501:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_SawtoothWaveGenerate(DAC_HandleTypeDef *hdac, uint32_t Channel, uint32_
502:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t ResetData, uint32_t StepData)
503:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
625 .loc 1 503 0
626 .cfi_startproc
627 @ args = 4, pretend = 0, frame = 0
628 @ frame_needed = 0, uses_anonymous_args = 0
629 @ link register save eliminated.
630 .LVL51:
631 0000 30B4 push {r4, r5}
632 .LCFI8:
633 .cfi_def_cfa_offset 8
634 .cfi_offset 4, -8
635 .cfi_offset 5, -4
504:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
505:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
506:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_SAWTOOTH_POLARITY(Polarity));
507:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_RESET_DATA(ResetData));
508:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_STEP_DATA(StepData));
509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
510:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
636 .loc 1 511 0
ARM GAS /tmp/ccFqqhpF.s page 22
637 0002 4479 ldrb r4, [r0, #5] @ zero_extendqisi2
638 0004 012C cmp r4, #1
639 0006 23D0 beq .L77
640 0008 029D ldr r5, [sp, #8]
641 000a 1A43 orrs r2, r2, r3
642 .LVL52:
643 .loc 1 511 0 is_stmt 0 discriminator 2
644 000c 0124 movs r4, #1
512:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
514:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_BUSY;
645 .loc 1 514 0 is_stmt 1 discriminator 2
646 000e 0223 movs r3, #2
647 .LVL53:
511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
648 .loc 1 511 0 discriminator 2
649 0010 4471 strb r4, [r0, #5]
650 0012 42EA0542 orr r2, r2, r5, lsl #16
651 .loc 1 514 0 discriminator 2
652 0016 0371 strb r3, [r0, #4]
653 0018 0468 ldr r4, [r0]
515:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
516:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (Channel == DAC_CHANNEL_1)
654 .loc 1 516 0 discriminator 2
655 001a 99B1 cbz r1, .L79
517:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
518:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Configure the sawtooth wave generation data parameters */
519:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->STR1,
520:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** DAC_STR1_STINCDATA1 | DAC_STR1_STDIR1 | DAC_STR1_STRSTDATA1,
521:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (StepData << DAC_STR1_STINCDATA1_Pos)
522:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** | Polarity
523:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** | (ResetData << DAC_STR1_STRSTDATA1_Pos));
524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
525:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
526:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
527:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Configure the sawtooth wave generation data parameters */
528:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->STR2,
656 .loc 1 528 0
657 001c E36D ldr r3, [r4, #92]
658 001e 03F46043 and r3, r3, #57344
659 0022 1A43 orrs r2, r2, r3
660 0024 E265 str r2, [r4, #92]
661 .L76:
529:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** DAC_STR2_STINCDATA2 | DAC_STR2_STDIR2 | DAC_STR2_STRSTDATA2,
530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (StepData << DAC_STR2_STINCDATA2_Pos)
531:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** | Polarity
532:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** | (ResetData << DAC_STR2_STRSTDATA2_Pos));
533:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
534:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
535:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the sawtooth wave generation for the selected DAC channel */
536:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->CR, (DAC_CR_WAVE1) << (Channel & 0x10UL), (uint32_t)(DAC_CR_WAVE1_1 |
662 .loc 1 536 0
663 0026 2268 ldr r2, [r4]
664 0028 01F01003 and r3, r1, #16
665 002c C021 movs r1, #192
666 .LVL54:
667 002e 9940 lsls r1, r1, r3
ARM GAS /tmp/ccFqqhpF.s page 23
537:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
538:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
539:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
540:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
541:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process unlocked */
542:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
668 .loc 1 542 0
669 0030 0023 movs r3, #0
536:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
670 .loc 1 536 0
671 0032 1143 orrs r1, r1, r2
539:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
672 .loc 1 539 0
673 0034 0125 movs r5, #1
543:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
544:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
545:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return HAL_OK;
674 .loc 1 545 0
675 0036 1A46 mov r2, r3
536:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
676 .loc 1 536 0
677 0038 2160 str r1, [r4]
539:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
678 .loc 1 539 0
679 003a 0571 strb r5, [r0, #4]
542:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
680 .loc 1 542 0
681 003c 4371 strb r3, [r0, #5]
546:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
682 .loc 1 546 0
683 003e 30BC pop {r4, r5}
684 .LCFI9:
685 .cfi_remember_state
686 .cfi_restore 5
687 .cfi_restore 4
688 .cfi_def_cfa_offset 0
689 .LVL55:
690 0040 1046 mov r0, r2
691 .LVL56:
692 0042 7047 bx lr
693 .LVL57:
694 .L79:
695 .LCFI10:
696 .cfi_restore_state
519:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** DAC_STR1_STINCDATA1 | DAC_STR1_STDIR1 | DAC_STR1_STRSTDATA1,
697 .loc 1 519 0
698 0044 A36D ldr r3, [r4, #88]
699 0046 03F46043 and r3, r3, #57344
700 004a 1A43 orrs r2, r2, r3
701 004c A265 str r2, [r4, #88]
702 004e EAE7 b .L76
703 .LVL58:
704 .L77:
511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
705 .loc 1 511 0
706 0050 0222 movs r2, #2
707 .LVL59:
ARM GAS /tmp/ccFqqhpF.s page 24
708 .loc 1 546 0
709 0052 1046 mov r0, r2
710 .LVL60:
711 0054 30BC pop {r4, r5}
712 .LCFI11:
713 .cfi_restore 5
714 .cfi_restore 4
715 .cfi_def_cfa_offset 0
716 .LVL61:
717 0056 7047 bx lr
718 .cfi_endproc
719 .LFE335:
721 .section .text.HAL_DACEx_SawtoothWaveDataReset,"ax",%progbits
722 .align 1
723 .p2align 2,,3
724 .global HAL_DACEx_SawtoothWaveDataReset
725 .syntax unified
726 .thumb
727 .thumb_func
728 .fpu fpv4-sp-d16
730 HAL_DACEx_SawtoothWaveDataReset:
731 .LFB336:
547:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
548:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
549:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Trig sawtooth wave reset
550:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @note This function allows to reset sawtooth wave in case of SW trigger
551:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * has been configured for this usage.
552:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
553:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
554:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The selected DAC channel.
555:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
556:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
557:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected (1)
558:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
559:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * (1) On this STM32 series, parameter not available on all instances.
560:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Refer to device datasheet for channels availability.
561:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
562:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
563:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_SawtoothWaveDataReset(DAC_HandleTypeDef *hdac, uint32_t Channel)
564:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
732 .loc 1 564 0
733 .cfi_startproc
734 @ args = 0, pretend = 0, frame = 0
735 @ frame_needed = 0, uses_anonymous_args = 0
736 @ link register save eliminated.
737 .LVL62:
565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
566:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
567:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
568:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
569:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
570:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
738 .loc 1 571 0
739 0000 4279 ldrb r2, [r0, #5] @ zero_extendqisi2
740 0002 012A cmp r2, #1
741 0004 1DD0 beq .L85
ARM GAS /tmp/ccFqqhpF.s page 25
564:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
742 .loc 1 564 0 discriminator 2
743 0006 10B4 push {r4}
744 .LCFI12:
745 .cfi_def_cfa_offset 4
746 .cfi_offset 4, -4
572:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
573:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (((hdac->Instance->STMODR >> (Channel & 0x10UL)) & DAC_STMODR_STRSTTRIGSEL1) == 0UL /* SW TRIG
747 .loc 1 573 0 discriminator 2
748 0008 0468 ldr r4, [r0]
749 000a 226E ldr r2, [r4, #96]
750 000c 0346 mov r3, r0
751 000e 01F01000 and r0, r1, #16
752 .LVL63:
753 0012 C240 lsrs r2, r2, r0
754 0014 1207 lsls r2, r2, #28
571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
755 .loc 1 571 0 discriminator 2
756 0016 4FF00100 mov r0, #1
757 001a 5871 strb r0, [r3, #5]
758 .loc 1 573 0 discriminator 2
759 001c 08D1 bne .L82
574:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
575:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
576:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_BUSY;
760 .loc 1 576 0
761 001e 0222 movs r2, #2
762 0020 1A71 strb r2, [r3, #4]
577:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
578:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (Channel == DAC_CHANNEL_1)
579:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
580:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the selected DAC software conversion */
581:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** SET_BIT(hdac->Instance->SWTRIGR, DAC_SWTRIGR_SWTRIG1);
763 .loc 1 581 0
764 0022 6268 ldr r2, [r4, #4]
578:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
765 .loc 1 578 0
766 0024 49B9 cbnz r1, .L83
767 .loc 1 581 0
768 0026 0243 orrs r2, r2, r0
769 0028 6260 str r2, [r4, #4]
770 .L84:
582:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
583:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
585:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the selected DAC software conversion */
586:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** SET_BIT(hdac->Instance->SWTRIGR, DAC_SWTRIGR_SWTRIG2);
587:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
588:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
589:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
590:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
771 .loc 1 590 0
772 002a 0122 movs r2, #1
773 002c 1A71 strb r2, [r3, #4]
565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
774 .loc 1 565 0
775 002e 0020 movs r0, #0
ARM GAS /tmp/ccFqqhpF.s page 26
776 .L82:
777 .LVL64:
591:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
593:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
594:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_ERROR;
595:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
597:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process unlocked */
598:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
778 .loc 1 598 0
779 0030 0022 movs r2, #0
780 0032 5A71 strb r2, [r3, #5]
599:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
600:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
601:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return status;
602:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
781 .loc 1 602 0
782 0034 5DF8044B ldr r4, [sp], #4
783 .LCFI13:
784 .cfi_remember_state
785 .cfi_restore 4
786 .cfi_def_cfa_offset 0
787 0038 7047 bx lr
788 .LVL65:
789 .L83:
790 .LCFI14:
791 .cfi_restore_state
586:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
792 .loc 1 586 0
793 003a 42F00202 orr r2, r2, #2
794 003e 6260 str r2, [r4, #4]
795 0040 F3E7 b .L84
796 .LVL66:
797 .L85:
798 .LCFI15:
799 .cfi_def_cfa_offset 0
800 .cfi_restore 4
571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
801 .loc 1 571 0
802 0042 0220 movs r0, #2
803 .LVL67:
804 .loc 1 602 0
805 0044 7047 bx lr
806 .cfi_endproc
807 .LFE336:
809 0046 00BF .section .text.HAL_DACEx_SawtoothWaveDataStep,"ax",%progbits
810 .align 1
811 .p2align 2,,3
812 .global HAL_DACEx_SawtoothWaveDataStep
813 .syntax unified
814 .thumb
815 .thumb_func
816 .fpu fpv4-sp-d16
818 HAL_DACEx_SawtoothWaveDataStep:
819 .LFB337:
603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
ARM GAS /tmp/ccFqqhpF.s page 27
604:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
605:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Trig sawtooth wave step
606:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @note This function allows to generate step in sawtooth wave in case of
607:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * SW trigger has been configured for this usage.
608:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
609:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
610:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The selected DAC channel.
611:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
612:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
613:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected (1)
614:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
615:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * (1) On this STM32 series, parameter not available on all instances.
616:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Refer to device datasheet for channels availability.
617:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
618:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
619:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_SawtoothWaveDataStep(DAC_HandleTypeDef *hdac, uint32_t Channel)
620:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
820 .loc 1 620 0
821 .cfi_startproc
822 @ args = 0, pretend = 0, frame = 0
823 @ frame_needed = 0, uses_anonymous_args = 0
824 @ link register save eliminated.
825 .LVL68:
621:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
622:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
623:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
624:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
625:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
626:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
627:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
826 .loc 1 627 0
827 0000 4279 ldrb r2, [r0, #5] @ zero_extendqisi2
828 0002 012A cmp r2, #1
829 0004 1FD0 beq .L96
620:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
830 .loc 1 620 0 discriminator 2
831 0006 10B4 push {r4}
832 .LCFI16:
833 .cfi_def_cfa_offset 4
834 .cfi_offset 4, -4
628:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
629:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (((hdac->Instance->STMODR >> (Channel & 0x10UL)) & DAC_STMODR_STINCTRIGSEL1) == 0UL /* SW TRIG
835 .loc 1 629 0 discriminator 2
836 0008 0468 ldr r4, [r0]
837 000a 226E ldr r2, [r4, #96]
838 000c 0346 mov r3, r0
839 000e 01F01000 and r0, r1, #16
840 .LVL69:
841 0012 C240 lsrs r2, r2, r0
842 0014 12F4706F tst r2, #3840
627:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
843 .loc 1 627 0 discriminator 2
844 0018 4FF00100 mov r0, #1
845 001c 5871 strb r0, [r3, #5]
846 .loc 1 629 0 discriminator 2
847 001e 09D1 bne .L93
630:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
ARM GAS /tmp/ccFqqhpF.s page 28
631:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
632:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_BUSY;
848 .loc 1 632 0
849 0020 0222 movs r2, #2
850 0022 1A71 strb r2, [r3, #4]
633:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
634:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (Channel == DAC_CHANNEL_1)
635:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
636:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the selected DAC software conversion */
637:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** SET_BIT(hdac->Instance->SWTRIGR, DAC_SWTRIGR_SWTRIGB1);
851 .loc 1 637 0
852 0024 6268 ldr r2, [r4, #4]
634:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
853 .loc 1 634 0
854 0026 51B9 cbnz r1, .L94
855 .loc 1 637 0
856 0028 42F48032 orr r2, r2, #65536
857 002c 6260 str r2, [r4, #4]
858 .L95:
638:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
639:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
640:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
641:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the selected DAC software conversion */
642:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** SET_BIT(hdac->Instance->SWTRIGR, DAC_SWTRIGR_SWTRIGB2);
643:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
644:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
645:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Change DAC state */
646:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
859 .loc 1 646 0
860 002e 0122 movs r2, #1
861 0030 1A71 strb r2, [r3, #4]
621:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
862 .loc 1 621 0
863 0032 0020 movs r0, #0
864 .L93:
865 .LVL70:
647:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
648:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
649:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
650:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_ERROR;
651:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
652:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
653:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process unlocked */
654:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
866 .loc 1 654 0
867 0034 0022 movs r2, #0
868 0036 5A71 strb r2, [r3, #5]
655:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
656:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
657:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return status;
658:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
869 .loc 1 658 0
870 0038 5DF8044B ldr r4, [sp], #4
871 .LCFI17:
872 .cfi_remember_state
873 .cfi_restore 4
874 .cfi_def_cfa_offset 0
ARM GAS /tmp/ccFqqhpF.s page 29
875 003c 7047 bx lr
876 .LVL71:
877 .L94:
878 .LCFI18:
879 .cfi_restore_state
642:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
880 .loc 1 642 0
881 003e 42F40032 orr r2, r2, #131072
882 0042 6260 str r2, [r4, #4]
883 0044 F3E7 b .L95
884 .LVL72:
885 .L96:
886 .LCFI19:
887 .cfi_def_cfa_offset 0
888 .cfi_restore 4
627:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
889 .loc 1 627 0
890 0046 0220 movs r0, #2
891 .LVL73:
892 .loc 1 658 0
893 0048 7047 bx lr
894 .cfi_endproc
895 .LFE337:
897 004a 00BF .section .text.HAL_DACEx_DualSetValue,"ax",%progbits
898 .align 1
899 .p2align 2,,3
900 .global HAL_DACEx_DualSetValue
901 .syntax unified
902 .thumb
903 .thumb_func
904 .fpu fpv4-sp-d16
906 HAL_DACEx_DualSetValue:
907 .LFB338:
659:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
660:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
661:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
662:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Set the specified data holding register value for dual DAC channel.
663:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
664:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
665:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Alignment Specifies the data alignment for dual channel DAC.
666:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
667:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * DAC_ALIGN_8B_R: 8bit right data alignment selected
668:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * DAC_ALIGN_12B_L: 12bit left data alignment selected
669:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * DAC_ALIGN_12B_R: 12bit right data alignment selected
670:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Data1 Data for DAC Channel1 to be loaded in the selected data holding register.
671:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Data2 Data for DAC Channel2 to be loaded in the selected data holding register.
672:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @note In dual mode, a unique register access is required to write in both
673:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * DAC channels at the same time.
674:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
675:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
676:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_DualSetValue(DAC_HandleTypeDef *hdac, uint32_t Alignment, uint32_t Data
677:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
908 .loc 1 677 0
909 .cfi_startproc
910 @ args = 0, pretend = 0, frame = 0
911 @ frame_needed = 0, uses_anonymous_args = 0
912 @ link register save eliminated.
ARM GAS /tmp/ccFqqhpF.s page 30
913 .LVL74:
914 0000 10B4 push {r4}
915 .LCFI20:
916 .cfi_def_cfa_offset 4
917 .cfi_offset 4, -4
918 0002 0468 ldr r4, [r0]
678:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t data;
679:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t tmp;
680:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
681:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
682:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_ALIGN(Alignment));
683:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_DATA(Data1));
684:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_DATA(Data2));
685:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
686:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Calculate and set dual DAC data holding register value */
687:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (Alignment == DAC_ALIGN_8B_R)
919 .loc 1 687 0
920 0004 0829 cmp r1, #8
921 0006 04F12004 add r4, r4, #32
688:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
689:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** data = ((uint32_t)Data2 << 8U) | Data1;
922 .loc 1 689 0
923 000a 0CBF ite eq
924 000c 42EA0323 orreq r3, r2, r3, lsl #8
925 .LVL75:
690:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
691:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
692:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
693:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** data = ((uint32_t)Data2 << 16U) | Data1;
926 .loc 1 693 0
927 0010 42EA0343 orrne r3, r2, r3, lsl #16
928 .LVL76:
694:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
695:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
696:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp = (uint32_t)hdac->Instance;
697:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp += DAC_DHR12RD_ALIGNMENT(Alignment);
698:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
699:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set the dual DAC selected data holding register */
700:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *(__IO uint32_t *)tmp = data;
701:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
702:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Return function status */
703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return HAL_OK;
704:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
929 .loc 1 704 0
930 0014 0020 movs r0, #0
931 .LVL77:
700:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
932 .loc 1 700 0
933 0016 0B51 str r3, [r1, r4]
934 .loc 1 704 0
935 0018 5DF8044B ldr r4, [sp], #4
936 .LCFI21:
937 .cfi_restore 4
938 .cfi_def_cfa_offset 0
939 .LVL78:
940 001c 7047 bx lr
941 .cfi_endproc
ARM GAS /tmp/ccFqqhpF.s page 31
942 .LFE338:
944 001e 00BF .section .text.HAL_DACEx_ConvCpltCallbackCh2,"ax",%progbits
945 .align 1
946 .p2align 2,,3
947 .weak HAL_DACEx_ConvCpltCallbackCh2
948 .syntax unified
949 .thumb
950 .thumb_func
951 .fpu fpv4-sp-d16
953 HAL_DACEx_ConvCpltCallbackCh2:
954 .LFB339:
705:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
706:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
707:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Conversion complete callback in non-blocking mode for Channel2.
708:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
709:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
710:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval None
711:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
712:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __weak void HAL_DACEx_ConvCpltCallbackCh2(DAC_HandleTypeDef *hdac)
713:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
955 .loc 1 713 0
956 .cfi_startproc
957 @ args = 0, pretend = 0, frame = 0
958 @ frame_needed = 0, uses_anonymous_args = 0
959 @ link register save eliminated.
960 .LVL79:
714:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Prevent unused argument(s) compilation warning */
715:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** UNUSED(hdac);
716:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
717:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* NOTE : This function should not be modified, when the callback is needed,
718:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** the HAL_DACEx_ConvCpltCallbackCh2 could be implemented in the user file
719:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
720:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
961 .loc 1 720 0
962 0000 7047 bx lr
963 .cfi_endproc
964 .LFE339:
966 0002 00BF .section .text.DAC_DMAConvCpltCh2,"ax",%progbits
967 .align 1
968 .p2align 2,,3
969 .global DAC_DMAConvCpltCh2
970 .syntax unified
971 .thumb
972 .thumb_func
973 .fpu fpv4-sp-d16
975 DAC_DMAConvCpltCh2:
976 .LFB347:
721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
722:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
723:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Conversion half DMA transfer callback in non-blocking mode for Channel2.
724:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
725:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
726:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval None
727:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
728:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __weak void HAL_DACEx_ConvHalfCpltCallbackCh2(DAC_HandleTypeDef *hdac)
729:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
730:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Prevent unused argument(s) compilation warning */
ARM GAS /tmp/ccFqqhpF.s page 32
731:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** UNUSED(hdac);
732:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
733:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* NOTE : This function should not be modified, when the callback is needed,
734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** the HAL_DACEx_ConvHalfCpltCallbackCh2 could be implemented in the user file
735:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
736:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
737:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
738:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
739:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Error DAC callback for Channel2.
740:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
741:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
742:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval None
743:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
744:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __weak void HAL_DACEx_ErrorCallbackCh2(DAC_HandleTypeDef *hdac)
745:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
746:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Prevent unused argument(s) compilation warning */
747:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** UNUSED(hdac);
748:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
749:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* NOTE : This function should not be modified, when the callback is needed,
750:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** the HAL_DACEx_ErrorCallbackCh2 could be implemented in the user file
751:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
753:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
754:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
755:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief DMA underrun DAC callback for Channel2.
756:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
757:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval None
759:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
760:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __weak void HAL_DACEx_DMAUnderrunCallbackCh2(DAC_HandleTypeDef *hdac)
761:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
762:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Prevent unused argument(s) compilation warning */
763:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** UNUSED(hdac);
764:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
765:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* NOTE : This function should not be modified, when the callback is needed,
766:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** the HAL_DACEx_DMAUnderrunCallbackCh2 could be implemented in the user file
767:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
768:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
770:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
771:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Run the self calibration of one DAC channel.
773:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
775:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param sConfig DAC channel configuration structure.
776:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The selected DAC channel.
777:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
778:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
779:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected (1)
780:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
781:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * (1) On this STM32 series, parameter not available on all instances.
782:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Refer to device datasheet for channels availability.
783:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval Updates DAC_TrimmingValue. , DAC_UserTrimming set to DAC_UserTrimming
784:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
785:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @note Calibration runs about 7 ms.
786:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
787:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_SelfCalibrate(DAC_HandleTypeDef *hdac, DAC_ChannelConfTypeDef *sConfig,
ARM GAS /tmp/ccFqqhpF.s page 33
788:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
789:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
790:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __IO uint32_t tmp;
792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t trimmingvalue;
793:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t delta;
794:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
795:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* store/restore channel configuration structure purpose */
796:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t oldmodeconfiguration;
797:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
798:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
799:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
800:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
801:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the DAC handle allocation */
802:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check if DAC running */
803:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (hdac == NULL)
804:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
805:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_ERROR;
806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
807:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else if (hdac->State == HAL_DAC_STATE_BUSY)
808:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
809:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_ERROR;
810:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
811:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
812:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
813:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
815:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
816:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Store configuration */
817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** oldmodeconfiguration = (hdac->Instance->MCR & (DAC_MCR_MODE1 << (Channel & 0x10UL)));
818:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
819:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the selected DAC channel */
820:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** CLEAR_BIT((hdac->Instance->CR), (DAC_CR_EN1 << (Channel & 0x10UL)));
821:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Wait for ready bit to be de-asserted */
822:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_Delay(1);
823:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
824:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set mode in MCR for calibration */
825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->MCR, (DAC_MCR_MODE1 << (Channel & 0x10UL)), 0U);
826:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
827:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set DAC Channel1 DHR register to the middle value */
828:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp = (uint32_t)hdac->Instance;
829:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (Channel == DAC_CHANNEL_1)
831:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp += DAC_DHR12R1_ALIGNMENT(DAC_ALIGN_12B_R);
833:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
834:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
835:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
836:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp += DAC_DHR12R2_ALIGNMENT(DAC_ALIGN_12B_R);
837:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
838:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
839:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *(__IO uint32_t *) tmp = 0x0800UL;
840:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
841:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Enable the selected DAC channel calibration */
842:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* i.e. set DAC_CR_CENx bit */
843:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** SET_BIT((hdac->Instance->CR), (DAC_CR_CEN1 << (Channel & 0x10UL)));
844:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
ARM GAS /tmp/ccFqqhpF.s page 34
845:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Init trimming counter */
846:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Medium value */
847:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** trimmingvalue = 16UL;
848:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** delta = 8UL;
849:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** while (delta != 0UL)
850:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
851:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set candidate trimming */
852:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->CCR, (DAC_CCR_OTRIM1 << (Channel & 0x10UL)), (trimmingvalue << (Ch
853:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
854:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* tOFFTRIMmax delay x ms as per datasheet (electrical characteristics */
855:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* i.e. minimum time needed between two calibration steps */
856:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_Delay(1);
857:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
858:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if ((hdac->Instance->SR & (DAC_SR_CAL_FLAG1 << (Channel & 0x10UL))) == (DAC_SR_CAL_FLAG1 << (
859:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* DAC_SR_CAL_FLAGx is HIGH try higher trimming */
861:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** trimmingvalue -= delta;
862:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
863:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
864:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
865:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* DAC_SR_CAL_FLAGx is LOW try lower trimming */
866:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** trimmingvalue += delta;
867:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
868:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** delta >>= 1UL;
869:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
870:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
871:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Still need to check if right calibration is current value or one step below */
872:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Indeed the first value that causes the DAC_SR_CAL_FLAGx bit to change from 0 to 1 */
873:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set candidate trimming */
874:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->CCR, (DAC_CCR_OTRIM1 << (Channel & 0x10UL)), (trimmingvalue << (Chan
875:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
876:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* tOFFTRIMmax delay x ms as per datasheet (electrical characteristics */
877:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* i.e. minimum time needed between two calibration steps */
878:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_Delay(1U);
879:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if ((hdac->Instance->SR & (DAC_SR_CAL_FLAG1 << (Channel & 0x10UL))) == 0UL)
881:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
882:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Trimming is actually one value more */
883:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** trimmingvalue++;
884:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set right trimming */
885:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->CCR, (DAC_CCR_OTRIM1 << (Channel & 0x10UL)), (trimmingvalue << (Ch
886:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
887:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
888:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Disable the selected DAC channel calibration */
889:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* i.e. clear DAC_CR_CENx bit */
890:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** CLEAR_BIT((hdac->Instance->CR), (DAC_CR_CEN1 << (Channel & 0x10UL)));
891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
892:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** sConfig->DAC_TrimmingValue = trimmingvalue;
893:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** sConfig->DAC_UserTrimming = DAC_TRIMMING_USER;
894:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Restore configuration */
896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->MCR, (DAC_MCR_MODE1 << (Channel & 0x10UL)), oldmodeconfiguration);
897:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
898:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process unlocked */
899:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
900:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
901:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
ARM GAS /tmp/ccFqqhpF.s page 35
902:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return status;
903:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
904:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
905:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
906:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Set the trimming mode and trimming value (user trimming mode applied).
907:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
908:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
909:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param sConfig DAC configuration structure updated with new DAC trimming value.
910:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The selected DAC channel.
911:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
912:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
913:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected (1)
914:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
915:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * (1) On this STM32 series, parameter not available on all instances.
916:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Refer to device datasheet for channels availability.
917:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param NewTrimmingValue DAC new trimming value
918:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval HAL status
919:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
920:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef HAL_DACEx_SetUserTrimming(DAC_HandleTypeDef *hdac, DAC_ChannelConfTypeDef *sConfi
921:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t NewTrimmingValue)
922:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
923:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
924:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
925:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameters */
926:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
927:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_NEWTRIMMINGVALUE(NewTrimmingValue));
928:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
929:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the DAC handle allocation */
930:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** if (hdac == NULL)
931:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
932:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** status = HAL_ERROR;
933:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
934:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** else
935:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
936:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process locked */
937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_LOCK(hdac);
938:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
939:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set new trimming */
940:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** MODIFY_REG(hdac->Instance->CCR, (DAC_CCR_OTRIM1 << (Channel & 0x10UL)), (NewTrimmingValue << (C
941:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
942:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Update trimming mode */
943:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** sConfig->DAC_UserTrimming = DAC_TRIMMING_USER;
944:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** sConfig->DAC_TrimmingValue = NewTrimmingValue;
945:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
946:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Process unlocked */
947:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** __HAL_UNLOCK(hdac);
948:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
949:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return status;
950:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
951:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
952:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
953:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Return the DAC trimming value.
954:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac DAC handle
955:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param Channel The selected DAC channel.
956:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * This parameter can be one of the following values:
957:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_1: DAC Channel1 selected
958:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @arg DAC_CHANNEL_2: DAC Channel2 selected (1)
ARM GAS /tmp/ccFqqhpF.s page 36
959:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
960:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * (1) On this STM32 series, parameter not available on all instances.
961:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * Refer to device datasheet for channels availability.
962:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval Trimming value : range: 0->31
963:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
964:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
965:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t HAL_DACEx_GetTrimOffset(DAC_HandleTypeDef *hdac, uint32_t Channel)
966:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
967:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameter */
968:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** assert_param(IS_DAC_CHANNEL(hdac->Instance, Channel));
969:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
970:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Retrieve trimming */
971:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return ((hdac->Instance->CCR & (DAC_CCR_OTRIM1 << (Channel & 0x10UL))) >> (Channel & 0x10UL));
972:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
973:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
974:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
975:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @}
976:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
977:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
978:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /** @defgroup DACEx_Exported_Functions_Group3 Peripheral Control functions
979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Extended Peripheral Control functions
980:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** *
981:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** @verbatim
982:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ==============================================================================
983:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ##### Peripheral Control functions #####
984:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** ==============================================================================
985:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** [..] This section provides functions allowing to:
986:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** (+) Set the specified data holding register value for DAC channel.
987:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
988:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** @endverbatim
989:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @{
990:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
991:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
992:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
993:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Return the last data output value of the selected DAC channel.
995:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdac pointer to a DAC_HandleTypeDef structure that contains
996:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DAC.
997:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval The selected DAC channel data output value.
998:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
999:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t HAL_DACEx_DualGetValue(DAC_HandleTypeDef *hdac)
1000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1001:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t tmp = 0UL;
1002:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1003:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp |= hdac->Instance->DOR1;
1004:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1005:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** tmp |= hdac->Instance->DOR2 << 16UL;
1006:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1007:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Returns the DAC channel data output register value */
1008:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** return tmp;
1009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1010:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1011:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1012:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
1013:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @}
1014:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
1015:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
ARM GAS /tmp/ccFqqhpF.s page 37
1016:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @}
1017:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
1018:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1019:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Private functions ---------------------------------------------------------*/
1020:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /** @defgroup DACEx_Private_Functions DACEx private functions
1021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief Extended private functions
1022:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @{
1023:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
1024:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1025:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1026:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
1027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief DMA conversion complete callback.
1028:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
1029:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DMA module.
1030:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval None
1031:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
1032:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** void DAC_DMAConvCpltCh2(DMA_HandleTypeDef *hdma)
1033:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
977 .loc 1 1033 0
978 .cfi_startproc
979 @ args = 0, pretend = 0, frame = 0
980 @ frame_needed = 0, uses_anonymous_args = 0
981 .LVL80:
982 0000 10B5 push {r4, lr}
983 .LCFI22:
984 .cfi_def_cfa_offset 8
985 .cfi_offset 4, -8
986 .cfi_offset 14, -4
1034:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** DAC_HandleTypeDef *hdac = (DAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
987 .loc 1 1034 0
988 0002 846A ldr r4, [r0, #40]
989 .LVL81:
1035:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1036:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
1037:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->ConvCpltCallbackCh2(hdac);
1038:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #else
1039:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_DACEx_ConvCpltCallbackCh2(hdac);
990 .loc 1 1039 0
991 0004 2046 mov r0, r4
992 .LVL82:
993 0006 FFF7FEFF bl HAL_DACEx_ConvCpltCallbackCh2
994 .LVL83:
1040:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #endif /* USE_HAL_DAC_REGISTER_CALLBACKS */
1041:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1042:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
995 .loc 1 1042 0
996 000a 0123 movs r3, #1
997 000c 2371 strb r3, [r4, #4]
1043:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
998 .loc 1 1043 0
999 000e 10BD pop {r4, pc}
1000 .cfi_endproc
1001 .LFE347:
1003 .section .text.HAL_DACEx_ConvHalfCpltCallbackCh2,"ax",%progbits
1004 .align 1
1005 .p2align 2,,3
1006 .weak HAL_DACEx_ConvHalfCpltCallbackCh2
ARM GAS /tmp/ccFqqhpF.s page 38
1007 .syntax unified
1008 .thumb
1009 .thumb_func
1010 .fpu fpv4-sp-d16
1012 HAL_DACEx_ConvHalfCpltCallbackCh2:
1013 .LFB351:
1014 .cfi_startproc
1015 @ args = 0, pretend = 0, frame = 0
1016 @ frame_needed = 0, uses_anonymous_args = 0
1017 @ link register save eliminated.
1018 0000 7047 bx lr
1019 .cfi_endproc
1020 .LFE351:
1022 0002 00BF .section .text.DAC_DMAHalfConvCpltCh2,"ax",%progbits
1023 .align 1
1024 .p2align 2,,3
1025 .global DAC_DMAHalfConvCpltCh2
1026 .syntax unified
1027 .thumb
1028 .thumb_func
1029 .fpu fpv4-sp-d16
1031 DAC_DMAHalfConvCpltCh2:
1032 .LFB348:
1044:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1045:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
1046:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief DMA half transfer complete callback.
1047:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
1048:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DMA module.
1049:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval None
1050:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
1051:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** void DAC_DMAHalfConvCpltCh2(DMA_HandleTypeDef *hdma)
1052:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1033 .loc 1 1052 0
1034 .cfi_startproc
1035 @ args = 0, pretend = 0, frame = 0
1036 @ frame_needed = 0, uses_anonymous_args = 0
1037 .LVL84:
1038 .loc 1 1052 0
1039 0000 08B5 push {r3, lr}
1040 .LCFI23:
1041 .cfi_def_cfa_offset 8
1042 .cfi_offset 3, -8
1043 .cfi_offset 14, -4
1053:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** DAC_HandleTypeDef *hdac = (DAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
1054:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Conversion complete callback */
1055:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
1056:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->ConvHalfCpltCallbackCh2(hdac);
1057:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #else
1058:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_DACEx_ConvHalfCpltCallbackCh2(hdac);
1044 .loc 1 1058 0
1045 0002 806A ldr r0, [r0, #40]
1046 .LVL85:
1047 0004 FFF7FEFF bl HAL_DACEx_ConvHalfCpltCallbackCh2
1048 .LVL86:
1059:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #endif /* USE_HAL_DAC_REGISTER_CALLBACKS */
1060:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1049 .loc 1 1060 0
ARM GAS /tmp/ccFqqhpF.s page 39
1050 0008 08BD pop {r3, pc}
1051 .cfi_endproc
1052 .LFE348:
1054 000a 00BF .section .text.HAL_DACEx_ErrorCallbackCh2,"ax",%progbits
1055 .align 1
1056 .p2align 2,,3
1057 .weak HAL_DACEx_ErrorCallbackCh2
1058 .syntax unified
1059 .thumb
1060 .thumb_func
1061 .fpu fpv4-sp-d16
1063 HAL_DACEx_ErrorCallbackCh2:
1064 .LFB353:
1065 .cfi_startproc
1066 @ args = 0, pretend = 0, frame = 0
1067 @ frame_needed = 0, uses_anonymous_args = 0
1068 @ link register save eliminated.
1069 0000 7047 bx lr
1070 .cfi_endproc
1071 .LFE353:
1073 0002 00BF .section .text.DAC_DMAErrorCh2,"ax",%progbits
1074 .align 1
1075 .p2align 2,,3
1076 .global DAC_DMAErrorCh2
1077 .syntax unified
1078 .thumb
1079 .thumb_func
1080 .fpu fpv4-sp-d16
1082 DAC_DMAErrorCh2:
1083 .LFB349:
1061:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1062:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /**
1063:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @brief DMA error callback.
1064:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
1065:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * the configuration information for the specified DMA module.
1066:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** * @retval None
1067:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** */
1068:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** void DAC_DMAErrorCh2(DMA_HandleTypeDef *hdma)
1069:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1084 .loc 1 1069 0
1085 .cfi_startproc
1086 @ args = 0, pretend = 0, frame = 0
1087 @ frame_needed = 0, uses_anonymous_args = 0
1088 .LVL87:
1089 .loc 1 1069 0
1090 0000 10B5 push {r4, lr}
1091 .LCFI24:
1092 .cfi_def_cfa_offset 8
1093 .cfi_offset 4, -8
1094 .cfi_offset 14, -4
1070:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** DAC_HandleTypeDef *hdac = (DAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
1095 .loc 1 1070 0
1096 0002 846A ldr r4, [r0, #40]
1097 .LVL88:
1071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1072:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set DAC error code to DMA error */
1073:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->ErrorCode |= HAL_DAC_ERROR_DMA;
ARM GAS /tmp/ccFqqhpF.s page 40
1098 .loc 1 1073 0
1099 0004 2369 ldr r3, [r4, #16]
1100 0006 43F00403 orr r3, r3, #4
1101 000a 2361 str r3, [r4, #16]
1074:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1075:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
1076:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->ErrorCallbackCh2(hdac);
1077:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #else
1078:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_DACEx_ErrorCallbackCh2(hdac);
1102 .loc 1 1078 0
1103 000c 2046 mov r0, r4
1104 .LVL89:
1105 000e FFF7FEFF bl HAL_DACEx_ErrorCallbackCh2
1106 .LVL90:
1079:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** #endif /* USE_HAL_DAC_REGISTER_CALLBACKS */
1080:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1081:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** hdac->State = HAL_DAC_STATE_READY;
1107 .loc 1 1081 0
1108 0012 0123 movs r3, #1
1109 0014 2371 strb r3, [r4, #4]
1082:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1110 .loc 1 1082 0
1111 0016 10BD pop {r4, pc}
1112 .cfi_endproc
1113 .LFE349:
1115 .section .text.HAL_DACEx_DMAUnderrunCallbackCh2,"ax",%progbits
1116 .align 1
1117 .p2align 2,,3
1118 .weak HAL_DACEx_DMAUnderrunCallbackCh2
1119 .syntax unified
1120 .thumb
1121 .thumb_func
1122 .fpu fpv4-sp-d16
1124 HAL_DACEx_DMAUnderrunCallbackCh2:
1125 .LFB355:
1126 .cfi_startproc
1127 @ args = 0, pretend = 0, frame = 0
1128 @ frame_needed = 0, uses_anonymous_args = 0
1129 @ link register save eliminated.
1130 0000 7047 bx lr
1131 .cfi_endproc
1132 .LFE355:
1134 0002 00BF .section .text.HAL_DACEx_SelfCalibrate,"ax",%progbits
1135 .align 1
1136 .p2align 2,,3
1137 .global HAL_DACEx_SelfCalibrate
1138 .syntax unified
1139 .thumb
1140 .thumb_func
1141 .fpu fpv4-sp-d16
1143 HAL_DACEx_SelfCalibrate:
1144 .LFB343:
788:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
1145 .loc 1 788 0
1146 .cfi_startproc
1147 @ args = 0, pretend = 0, frame = 16
1148 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS /tmp/ccFqqhpF.s page 41
1149 .LVL91:
803:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1150 .loc 1 803 0
1151 0000 0028 cmp r0, #0
1152 0002 00F08380 beq .L125
807:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1153 .loc 1 807 0
1154 0006 0379 ldrb r3, [r0, #4] @ zero_extendqisi2
1155 0008 022B cmp r3, #2
1156 000a 7FD0 beq .L125
814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1157 .loc 1 814 0
1158 000c 4379 ldrb r3, [r0, #5] @ zero_extendqisi2
1159 000e 012B cmp r3, #1
1160 0010 00F08180 beq .L126
788:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
1161 .loc 1 788 0 discriminator 2
1162 0014 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
1163 .LCFI25:
1164 .cfi_def_cfa_offset 36
1165 .cfi_offset 4, -36
1166 .cfi_offset 5, -32
1167 .cfi_offset 6, -28
1168 .cfi_offset 7, -24
1169 .cfi_offset 8, -20
1170 .cfi_offset 9, -16
1171 .cfi_offset 10, -12
1172 .cfi_offset 11, -8
1173 .cfi_offset 14, -4
817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1174 .loc 1 817 0 discriminator 2
1175 0018 0368 ldr r3, [r0]
788:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
1176 .loc 1 788 0 discriminator 2
1177 001a 85B0 sub sp, sp, #20
1178 .LCFI26:
1179 .cfi_def_cfa_offset 56
1180 001c 1546 mov r5, r2
817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1181 .loc 1 817 0 discriminator 2
1182 001e DA6B ldr r2, [r3, #60]
1183 .LVL92:
1184 0020 0092 str r2, [sp]
1185 0022 0446 mov r4, r0
820:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Wait for ready bit to be de-asserted */
1186 .loc 1 820 0 discriminator 2
1187 0024 1A68 ldr r2, [r3]
1188 0026 0191 str r1, [sp, #4]
814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1189 .loc 1 814 0 discriminator 2
1190 0028 0120 movs r0, #1
1191 .LVL93:
817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1192 .loc 1 817 0 discriminator 2
1193 002a 05F01006 and r6, r5, #16
820:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Wait for ready bit to be de-asserted */
1194 .loc 1 820 0 discriminator 2
ARM GAS /tmp/ccFqqhpF.s page 42
1195 002e 00FA06F1 lsl r1, r0, r6
1196 .LVL94:
1197 0032 22EA0102 bic r2, r2, r1
814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1198 .loc 1 814 0 discriminator 2
1199 0036 6071 strb r0, [r4, #5]
820:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Wait for ready bit to be de-asserted */
1200 .loc 1 820 0 discriminator 2
1201 0038 1A60 str r2, [r3]
822:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1202 .loc 1 822 0 discriminator 2
1203 003a FFF7FEFF bl HAL_Delay
1204 .LVL95:
825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1205 .loc 1 825 0 discriminator 2
1206 003e 2368 ldr r3, [r4]
817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1207 .loc 1 817 0 discriminator 2
1208 0040 4FF0070A mov r10, #7
825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1209 .loc 1 825 0 discriminator 2
1210 0044 DA6B ldr r2, [r3, #60]
817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1211 .loc 1 817 0 discriminator 2
1212 0046 0AFA06FA lsl r10, r10, r6
825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1213 .loc 1 825 0 discriminator 2
1214 004a 22EA0A02 bic r2, r2, r10
1215 004e DA63 str r2, [r3, #60]
828:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1216 .loc 1 828 0 discriminator 2
1217 0050 0393 str r3, [sp, #12]
832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1218 .loc 1 832 0 discriminator 2
1219 0052 039A ldr r2, [sp, #12]
830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1220 .loc 1 830 0 discriminator 2
1221 0054 002D cmp r5, #0
1222 0056 5BD0 beq .L132
836:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1223 .loc 1 836 0
1224 0058 1432 adds r2, r2, #20
1225 005a 0392 str r2, [sp, #12]
1226 .L119:
839:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1227 .loc 1 839 0
1228 005c 039A ldr r2, [sp, #12]
1229 005e 4FF40061 mov r1, #2048
1230 0062 1160 str r1, [r2]
843:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1231 .loc 1 843 0
1232 0064 1A68 ldr r2, [r3]
1233 0066 4FF48047 mov r7, #16384
1234 006a B740 lsls r7, r7, r6
852:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1235 .loc 1 852 0
1236 006c 1F25 movs r5, #31
ARM GAS /tmp/ccFqqhpF.s page 43
1237 .LVL96:
843:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1238 .loc 1 843 0
1239 006e 3A43 orrs r2, r2, r7
852:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1240 .loc 1 852 0
1241 0070 B540 lsls r5, r5, r6
843:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1242 .loc 1 843 0
1243 0072 1A60 str r2, [r3]
1244 .LVL97:
852:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1245 .loc 1 852 0
1246 0074 ED43 mvns r5, r5
1247 0076 4FF00409 mov r9, #4
848:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** while (delta != 0UL)
1248 .loc 1 848 0
1249 007a 4FF00808 mov r8, #8
847:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** delta = 8UL;
1250 .loc 1 847 0
1251 007e 4FF0100B mov fp, #16
1252 .LVL98:
1253 .L122:
852:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1254 .loc 1 852 0
1255 0082 986B ldr r0, [r3, #56]
1256 0084 0BFA06FE lsl lr, fp, r6
1257 0088 00EA050C and ip, r0, r5
1258 008c 4CEA0E00 orr r0, ip, lr
1259 0090 9863 str r0, [r3, #56]
856:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1260 .loc 1 856 0
1261 0092 0120 movs r0, #1
1262 0094 FFF7FEFF bl HAL_Delay
1263 .LVL99:
858:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1264 .loc 1 858 0
1265 0098 2368 ldr r3, [r4]
1266 009a 586B ldr r0, [r3, #52]
1267 009c 37EA0002 bics r2, r7, r0
861:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1268 .loc 1 861 0
1269 00a0 0CBF ite eq
1270 00a2 ABEB080B subeq fp, fp, r8
1271 .LVL100:
866:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1272 .loc 1 866 0
1273 00a6 C344 addne fp, fp, r8
1274 .LVL101:
849:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1275 .loc 1 849 0
1276 00a8 B9F10109 subs r9, r9, #1
868:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1277 .loc 1 868 0
1278 00ac 4FEA5808 lsr r8, r8, #1
1279 .LVL102:
849:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
ARM GAS /tmp/ccFqqhpF.s page 44
1280 .loc 1 849 0
1281 00b0 E7D1 bne .L122
874:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1282 .loc 1 874 0
1283 00b2 996B ldr r1, [r3, #56]
1284 00b4 0BFA06F2 lsl r2, fp, r6
1285 00b8 2940 ands r1, r1, r5
1286 00ba 0A43 orrs r2, r2, r1
1287 00bc 9A63 str r2, [r3, #56]
878:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1288 .loc 1 878 0
1289 00be 0120 movs r0, #1
1290 00c0 FFF7FEFF bl HAL_Delay
1291 .LVL103:
880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1292 .loc 1 880 0
1293 00c4 2268 ldr r2, [r4]
1294 00c6 536B ldr r3, [r2, #52]
1295 00c8 1F42 tst r7, r3
1296 00ca 07D1 bne .L123
885:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1297 .loc 1 885 0
1298 00cc 936B ldr r3, [r2, #56]
883:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Set right trimming */
1299 .loc 1 883 0
1300 00ce 0BF1010B add fp, fp, #1
1301 .LVL104:
885:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1302 .loc 1 885 0
1303 00d2 0BFA06F6 lsl r6, fp, r6
1304 00d6 1D40 ands r5, r5, r3
1305 00d8 2E43 orrs r6, r6, r5
1306 00da 9663 str r6, [r2, #56]
1307 .L123:
890:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1308 .loc 1 890 0
1309 00dc 1368 ldr r3, [r2]
896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1310 .loc 1 896 0
1311 00de 0099 ldr r1, [sp]
892:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** sConfig->DAC_UserTrimming = DAC_TRIMMING_USER;
1312 .loc 1 892 0
1313 00e0 019D ldr r5, [sp, #4]
890:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1314 .loc 1 890 0
1315 00e2 23EA0707 bic r7, r3, r7
1316 00e6 1760 str r7, [r2]
896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1317 .loc 1 896 0
1318 00e8 D36B ldr r3, [r2, #60]
892:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** sConfig->DAC_UserTrimming = DAC_TRIMMING_USER;
1319 .loc 1 892 0
1320 00ea C5F820B0 str fp, [r5, #32]
896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1321 .loc 1 896 0
1322 00ee 81EA0308 eor r8, r1, r3
1323 .LVL105:
ARM GAS /tmp/ccFqqhpF.s page 45
1324 00f2 08EA0A0A and r10, r8, r10
899:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1325 .loc 1 899 0
1326 00f6 0021 movs r1, #0
893:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1327 .loc 1 893 0
1328 00f8 0120 movs r0, #1
1329 00fa E861 str r0, [r5, #28]
896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1330 .loc 1 896 0
1331 00fc 8AEA0303 eor r3, r10, r3
789:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1332 .loc 1 789 0
1333 0100 0846 mov r0, r1
896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1334 .loc 1 896 0
1335 0102 D363 str r3, [r2, #60]
899:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1336 .loc 1 899 0
1337 0104 6171 strb r1, [r4, #5]
903:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1338 .loc 1 903 0
1339 0106 05B0 add sp, sp, #20
1340 .LCFI27:
1341 .cfi_def_cfa_offset 36
1342 @ sp needed
1343 0108 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
1344 .LVL106:
1345 .L125:
1346 .LCFI28:
1347 .cfi_def_cfa_offset 0
1348 .cfi_restore 4
1349 .cfi_restore 5
1350 .cfi_restore 6
1351 .cfi_restore 7
1352 .cfi_restore 8
1353 .cfi_restore 9
1354 .cfi_restore 10
1355 .cfi_restore 11
1356 .cfi_restore 14
805:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1357 .loc 1 805 0
1358 010c 0120 movs r0, #1
1359 .LVL107:
1360 010e 7047 bx lr
1361 .LVL108:
1362 .L132:
1363 .LCFI29:
1364 .cfi_def_cfa_offset 56
1365 .cfi_offset 4, -36
1366 .cfi_offset 5, -32
1367 .cfi_offset 6, -28
1368 .cfi_offset 7, -24
1369 .cfi_offset 8, -20
1370 .cfi_offset 9, -16
1371 .cfi_offset 10, -12
1372 .cfi_offset 11, -8
ARM GAS /tmp/ccFqqhpF.s page 46
1373 .cfi_offset 14, -4
832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1374 .loc 1 832 0
1375 0110 0832 adds r2, r2, #8
1376 0112 0392 str r2, [sp, #12]
1377 0114 A2E7 b .L119
1378 .LVL109:
1379 .L126:
1380 .LCFI30:
1381 .cfi_def_cfa_offset 0
1382 .cfi_restore 4
1383 .cfi_restore 5
1384 .cfi_restore 6
1385 .cfi_restore 7
1386 .cfi_restore 8
1387 .cfi_restore 9
1388 .cfi_restore 10
1389 .cfi_restore 11
1390 .cfi_restore 14
814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1391 .loc 1 814 0
1392 0116 0220 movs r0, #2
1393 .LVL110:
903:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1394 .loc 1 903 0
1395 0118 7047 bx lr
1396 .cfi_endproc
1397 .LFE343:
1399 011a 00BF .section .text.HAL_DACEx_SetUserTrimming,"ax",%progbits
1400 .align 1
1401 .p2align 2,,3
1402 .global HAL_DACEx_SetUserTrimming
1403 .syntax unified
1404 .thumb
1405 .thumb_func
1406 .fpu fpv4-sp-d16
1408 HAL_DACEx_SetUserTrimming:
1409 .LFB344:
922:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
1410 .loc 1 922 0
1411 .cfi_startproc
1412 @ args = 0, pretend = 0, frame = 0
1413 @ frame_needed = 0, uses_anonymous_args = 0
1414 @ link register save eliminated.
1415 .LVL111:
930:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** {
1416 .loc 1 930 0
1417 0000 C0B1 cbz r0, .L135
922:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** HAL_StatusTypeDef status = HAL_OK;
1418 .loc 1 922 0
1419 0002 70B4 push {r4, r5, r6}
1420 .LCFI31:
1421 .cfi_def_cfa_offset 12
1422 .cfi_offset 4, -12
1423 .cfi_offset 5, -8
1424 .cfi_offset 6, -4
937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
ARM GAS /tmp/ccFqqhpF.s page 47
1425 .loc 1 937 0
1426 0004 4479 ldrb r4, [r0, #5] @ zero_extendqisi2
1427 0006 012C cmp r4, #1
1428 0008 17D0 beq .L136
940:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1429 .loc 1 940 0 discriminator 2
1430 000a 0668 ldr r6, [r0]
1431 000c 02F01002 and r2, r2, #16
1432 .LVL112:
1433 0010 B46B ldr r4, [r6, #56]
1434 0012 1F25 movs r5, #31
1435 0014 9540 lsls r5, r5, r2
1436 0016 24EA0504 bic r4, r4, r5
1437 001a 03FA02F2 lsl r2, r3, r2
1438 001e 2243 orrs r2, r2, r4
947:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1439 .loc 1 947 0 discriminator 2
1440 0020 0024 movs r4, #0
940:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1441 .loc 1 940 0 discriminator 2
1442 0022 B263 str r2, [r6, #56]
943:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** sConfig->DAC_TrimmingValue = NewTrimmingValue;
1443 .loc 1 943 0 discriminator 2
1444 0024 0125 movs r5, #1
923:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1445 .loc 1 923 0 discriminator 2
1446 0026 2246 mov r2, r4
943:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** sConfig->DAC_TrimmingValue = NewTrimmingValue;
1447 .loc 1 943 0 discriminator 2
1448 0028 C1E90753 strd r5, r3, [r1, #28]
947:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1449 .loc 1 947 0 discriminator 2
1450 002c 4471 strb r4, [r0, #5]
950:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1451 .loc 1 950 0 discriminator 2
1452 002e 1046 mov r0, r2
1453 .LVL113:
1454 0030 70BC pop {r4, r5, r6}
1455 .LCFI32:
1456 .cfi_restore 6
1457 .cfi_restore 5
1458 .cfi_restore 4
1459 .cfi_def_cfa_offset 0
1460 0032 7047 bx lr
1461 .LVL114:
1462 .L135:
932:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1463 .loc 1 932 0
1464 0034 0122 movs r2, #1
1465 .LVL115:
950:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1466 .loc 1 950 0
1467 0036 1046 mov r0, r2
1468 .LVL116:
1469 0038 7047 bx lr
1470 .LVL117:
1471 .L136:
ARM GAS /tmp/ccFqqhpF.s page 48
1472 .LCFI33:
1473 .cfi_def_cfa_offset 12
1474 .cfi_offset 4, -12
1475 .cfi_offset 5, -8
1476 .cfi_offset 6, -4
937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1477 .loc 1 937 0
1478 003a 0222 movs r2, #2
1479 .LVL118:
950:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1480 .loc 1 950 0
1481 003c 1046 mov r0, r2
1482 .LVL119:
1483 003e 70BC pop {r4, r5, r6}
1484 .LCFI34:
1485 .cfi_restore 6
1486 .cfi_restore 5
1487 .cfi_restore 4
1488 .cfi_def_cfa_offset 0
1489 0040 7047 bx lr
1490 .cfi_endproc
1491 .LFE344:
1493 0042 00BF .section .text.HAL_DACEx_GetTrimOffset,"ax",%progbits
1494 .align 1
1495 .p2align 2,,3
1496 .global HAL_DACEx_GetTrimOffset
1497 .syntax unified
1498 .thumb
1499 .thumb_func
1500 .fpu fpv4-sp-d16
1502 HAL_DACEx_GetTrimOffset:
1503 .LFB345:
966:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** /* Check the parameter */
1504 .loc 1 966 0
1505 .cfi_startproc
1506 @ args = 0, pretend = 0, frame = 0
1507 @ frame_needed = 0, uses_anonymous_args = 0
1508 @ link register save eliminated.
1509 .LVL120:
971:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** }
1510 .loc 1 971 0
1511 0000 0368 ldr r3, [r0]
1512 0002 01F01001 and r1, r1, #16
1513 .LVL121:
1514 0006 986B ldr r0, [r3, #56]
1515 .LVL122:
1516 0008 1F23 movs r3, #31
1517 000a 8B40 lsls r3, r3, r1
1518 000c 1840 ands r0, r0, r3
972:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1519 .loc 1 972 0
1520 000e C840 lsrs r0, r0, r1
1521 0010 7047 bx lr
1522 .cfi_endproc
1523 .LFE345:
1525 0012 00BF .section .text.HAL_DACEx_DualGetValue,"ax",%progbits
1526 .align 1
ARM GAS /tmp/ccFqqhpF.s page 49
1527 .p2align 2,,3
1528 .global HAL_DACEx_DualGetValue
1529 .syntax unified
1530 .thumb
1531 .thumb_func
1532 .fpu fpv4-sp-d16
1534 HAL_DACEx_DualGetValue:
1535 .LFB346:
1000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c **** uint32_t tmp = 0UL;
1536 .loc 1 1000 0
1537 .cfi_startproc
1538 @ args = 0, pretend = 0, frame = 0
1539 @ frame_needed = 0, uses_anonymous_args = 0
1540 @ link register save eliminated.
1541 .LVL123:
1003:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1542 .loc 1 1003 0
1543 0000 0368 ldr r3, [r0]
1544 0002 DA6A ldr r2, [r3, #44]
1545 .LVL124:
1005:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1546 .loc 1 1005 0
1547 0004 186B ldr r0, [r3, #48]
1548 .LVL125:
1009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dac_ex.c ****
1549 .loc 1 1009 0
1550 0006 42EA0040 orr r0, r2, r0, lsl #16
1551 .LVL126:
1552 000a 7047 bx lr
1553 .cfi_endproc
1554 .LFE346:
1556 .text
1557 .Letext0:
1558 .file 2 "/usr/include/newlib/machine/_default_types.h"
1559 .file 3 "/usr/include/newlib/sys/_stdint.h"
1560 .file 4 "Drivers/CMSIS/Include/core_cm4.h"
1561 .file 5 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h"
1562 .file 6 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h"
1563 .file 7 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h"
1564 .file 8 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h"
1565 .file 9 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h"
1566 .file 10 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dac.h"
1567 .file 11 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h"
1568 .file 12 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h"
1569 .file 13 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h"
ARM GAS /tmp/ccFqqhpF.s page 50
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32g4xx_hal_dac_ex.c
/tmp/ccFqqhpF.s:16 .text.HAL_DACEx_DualStart:0000000000000000 $t
/tmp/ccFqqhpF.s:24 .text.HAL_DACEx_DualStart:0000000000000000 HAL_DACEx_DualStart
/tmp/ccFqqhpF.s:118 .text.HAL_DACEx_DualStop:0000000000000000 $t
/tmp/ccFqqhpF.s:126 .text.HAL_DACEx_DualStop:0000000000000000 HAL_DACEx_DualStop
/tmp/ccFqqhpF.s:165 .text.HAL_DACEx_DualStart_DMA:0000000000000000 $t
/tmp/ccFqqhpF.s:173 .text.HAL_DACEx_DualStart_DMA:0000000000000000 HAL_DACEx_DualStart_DMA
/tmp/ccFqqhpF.s:370 .text.HAL_DACEx_DualStart_DMA:00000000000000e4 $d
/tmp/ccFqqhpF.s:975 .text.DAC_DMAConvCpltCh2:0000000000000000 DAC_DMAConvCpltCh2
/tmp/ccFqqhpF.s:1031 .text.DAC_DMAHalfConvCpltCh2:0000000000000000 DAC_DMAHalfConvCpltCh2
/tmp/ccFqqhpF.s:1082 .text.DAC_DMAErrorCh2:0000000000000000 DAC_DMAErrorCh2
/tmp/ccFqqhpF.s:380 .text.HAL_DACEx_DualStop_DMA:0000000000000000 $t
/tmp/ccFqqhpF.s:388 .text.HAL_DACEx_DualStop_DMA:0000000000000000 HAL_DACEx_DualStop_DMA
/tmp/ccFqqhpF.s:467 .text.HAL_DACEx_TriangleWaveGenerate:0000000000000000 $t
/tmp/ccFqqhpF.s:475 .text.HAL_DACEx_TriangleWaveGenerate:0000000000000000 HAL_DACEx_TriangleWaveGenerate
/tmp/ccFqqhpF.s:541 .text.HAL_DACEx_NoiseWaveGenerate:0000000000000000 $t
/tmp/ccFqqhpF.s:549 .text.HAL_DACEx_NoiseWaveGenerate:0000000000000000 HAL_DACEx_NoiseWaveGenerate
/tmp/ccFqqhpF.s:615 .text.HAL_DACEx_SawtoothWaveGenerate:0000000000000000 $t
/tmp/ccFqqhpF.s:623 .text.HAL_DACEx_SawtoothWaveGenerate:0000000000000000 HAL_DACEx_SawtoothWaveGenerate
/tmp/ccFqqhpF.s:722 .text.HAL_DACEx_SawtoothWaveDataReset:0000000000000000 $t
/tmp/ccFqqhpF.s:730 .text.HAL_DACEx_SawtoothWaveDataReset:0000000000000000 HAL_DACEx_SawtoothWaveDataReset
/tmp/ccFqqhpF.s:810 .text.HAL_DACEx_SawtoothWaveDataStep:0000000000000000 $t
/tmp/ccFqqhpF.s:818 .text.HAL_DACEx_SawtoothWaveDataStep:0000000000000000 HAL_DACEx_SawtoothWaveDataStep
/tmp/ccFqqhpF.s:898 .text.HAL_DACEx_DualSetValue:0000000000000000 $t
/tmp/ccFqqhpF.s:906 .text.HAL_DACEx_DualSetValue:0000000000000000 HAL_DACEx_DualSetValue
/tmp/ccFqqhpF.s:945 .text.HAL_DACEx_ConvCpltCallbackCh2:0000000000000000 $t
/tmp/ccFqqhpF.s:953 .text.HAL_DACEx_ConvCpltCallbackCh2:0000000000000000 HAL_DACEx_ConvCpltCallbackCh2
/tmp/ccFqqhpF.s:967 .text.DAC_DMAConvCpltCh2:0000000000000000 $t
/tmp/ccFqqhpF.s:1004 .text.HAL_DACEx_ConvHalfCpltCallbackCh2:0000000000000000 $t
/tmp/ccFqqhpF.s:1012 .text.HAL_DACEx_ConvHalfCpltCallbackCh2:0000000000000000 HAL_DACEx_ConvHalfCpltCallbackCh2
/tmp/ccFqqhpF.s:1023 .text.DAC_DMAHalfConvCpltCh2:0000000000000000 $t
/tmp/ccFqqhpF.s:1055 .text.HAL_DACEx_ErrorCallbackCh2:0000000000000000 $t
/tmp/ccFqqhpF.s:1063 .text.HAL_DACEx_ErrorCallbackCh2:0000000000000000 HAL_DACEx_ErrorCallbackCh2
/tmp/ccFqqhpF.s:1074 .text.DAC_DMAErrorCh2:0000000000000000 $t
/tmp/ccFqqhpF.s:1116 .text.HAL_DACEx_DMAUnderrunCallbackCh2:0000000000000000 $t
/tmp/ccFqqhpF.s:1124 .text.HAL_DACEx_DMAUnderrunCallbackCh2:0000000000000000 HAL_DACEx_DMAUnderrunCallbackCh2
/tmp/ccFqqhpF.s:1135 .text.HAL_DACEx_SelfCalibrate:0000000000000000 $t
/tmp/ccFqqhpF.s:1143 .text.HAL_DACEx_SelfCalibrate:0000000000000000 HAL_DACEx_SelfCalibrate
/tmp/ccFqqhpF.s:1400 .text.HAL_DACEx_SetUserTrimming:0000000000000000 $t
/tmp/ccFqqhpF.s:1408 .text.HAL_DACEx_SetUserTrimming:0000000000000000 HAL_DACEx_SetUserTrimming
/tmp/ccFqqhpF.s:1494 .text.HAL_DACEx_GetTrimOffset:0000000000000000 $t
/tmp/ccFqqhpF.s:1502 .text.HAL_DACEx_GetTrimOffset:0000000000000000 HAL_DACEx_GetTrimOffset
/tmp/ccFqqhpF.s:1526 .text.HAL_DACEx_DualGetValue:0000000000000000 $t
/tmp/ccFqqhpF.s:1534 .text.HAL_DACEx_DualGetValue:0000000000000000 HAL_DACEx_DualGetValue
UNDEFINED SYMBOLS
HAL_Delay
HAL_DMA_Start_IT
DAC_DMAConvCpltCh1
DAC_DMAHalfConvCpltCh1
DAC_DMAErrorCh1
HAL_DMA_Abort