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
