/**
  @page ADC_AnalogWatchdog ADC Analog Watchdog example description
  
  @verbatim
  ******************** (C) COPYRIGHT 2015 STMicroelectronics *******************
  * @file    ADC/ADC_AnalogWatchdog/readme.txt 
  * @author  MCD Application Team
  * @version V1.1.3
  * @date    15-December-2021
  * @brief   ADC Analog Watchdog Description
  ******************************************************************************
  *
  * Copyright (c) 2015 STMicroelectronics.
  * All rights reserved.
  *
  * This software is licensed under terms that can be found in the LICENSE file
  * in the root directory of this software component.
  * If no LICENSE file comes with this software, it is provided AS-IS.
  *
  ******************************************************************************
  @endverbatim

@par Example Description 

This example describes how to use the ADC analog watchdog to guard continuously  
an ADC channel.
The ADC1 is configured to convert continuously ADC channel7. 
The analog watchdog is configured and enabled to guard a single regular channel.
Each time the channel7 converted value exceeds programmed analog watchdog high 
threshold (value 0x7F) or goes down analog watchdog low threshold (value 0x1F)
an AWD interrupt is generated and the output pin connected to LED4 is toggled. 
The LED will bright as long as the AWD interrupt is generated which means that the 
converted value of regular ADC channel7 is outside the range limited by high and 
low analog watchdog thresholds.


@note that ADC channel7 is connected to a potentiometer (RV2) which can deliver 
a voltage between 0V and 3.3V.
 

@par Directory contents 

  - ADC/ADC_AnalogWatchdog/stm32f30x_conf.h    Library Configuration file
  - ADC/ADC_AnalogWatchdog/stm32f30x_it.c      Interrupt handlers
  - ADC/ADC_AnalogWatchdog/stm32f30x_it.h      Interrupt handlers header file
  - ADC/ADC_AnalogWatchdog/main.c              Main program
  - ADC/ADC_AnalogWatchdog/main.h              Main program  header file
  - ADC/ADC_AnalogWatchdog/system_stm32f30x.c  STM32F30x system source file
  
@note The "system_stm32f30x.c" is generated by an automatic clock configuration 
      system and can be easily customized to your own configuration. 
      To select different clock setup, use the "STM32F30x_Clock_Configuration_V1.0.0.xls" 
      provided with the AN4152 package available on <a href="http://www.st.com/internet/mcu/family/141.jsp">  ST Microcontrollers </a>
         
@par Hardware and Software environment

  - This example runs on STM32F303xC and STM32F303xE Devices.
  
  - This example has been tested with STMicroelectronics STM32303C-EVAL RevB(STM32F30x)
    evaluation board and can be easily tailored to any other supported device 
    and development board.
    
  - STM32303C-EVAL Set-up
    - RV2 Potentiometer connected to PC.01 pin.
    - Make sure that the jumper JP11 and JP12 is fitted.
    - Make sure that the jumper JP15 and JP17 are fitted in 3V3 position.


@par How to use it ? 

In order to make the program work, you must do the following :
 - Copy all source files from this example folder to the template folder under
   Projects\STM32F30x_StdPeriph_Templates
 - Open your preferred toolchain 
 - Add the following files to the project source list
    - Utilities\STM32_EVAL\STM32303C_EVAL\stm32303c_eval.c
    - Utilities\STM32_EVAL\STM32303C_EVAL\stm32303c_eval_lcd.c
 - Rebuild all files and load your image into target memory
 - Run the example
    
 * <h3><center>&copy; COPYRIGHT STMicroelectronics</center></h3>
 */