• tianyi113
  • C/C++
  • 9MB
  • rar
  • 0
  • 10 积分
  • 24
  • 2019-06-02 11:06
/** @page GPIO_IOToggle GPIO IO Toggle example @verbatim ******************** (C) COPYRIGHT 2011 STMicroelectronics ******************* * @file GPIO/IOToggle/readme.txt * @author MCD Application Team * @version V1.0.0 * @date 30-September-2011 * @brief Description of the GPIO IO Toggle example. ****************************************************************************** * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. ****************************************************************************** @endverbatim @par Example Description GPIO ports are connected on AHB bus, using BSRRH and BSRRL registers one cycle is required to set a pin and another cycle to reset it. So GPIO pins can toggle at AHB clock divided by 2. This example describes how to use BSRRH and BSRRL (Port Bit Set/Reset Register High and Low) for maximum IO toggling. PG6 and PG8 (configured in output pushpull mode) toggles in a forever loop: - Set PG6 and PG8 by setting corresponding bits in BSRRL register - Reset PG6 and PG8 by setting corresponding bits in BSRRH register In this example, HCLK is configured at 168 MHz so PG6 and PG8 toggles at 84MHz. To achieve the maximum IO toggling frequency, you have to configure your compiler options for high speed optimization. @par Directory contents - GPIO/IOToggle/stm32f4xx_conf.h Library Configuration file - GPIO/IOToggle/stm32f4xx_it.c Interrupt handlers - GPIO/IOToggle/stm32f4xx_it.h Interrupt handlers header file - GPIO/IOToggle/main.c Main program - GPIO/IOToggle/system_stm32f4xx.c STM32F4xx system source file @note The "system_stm32f4xx.c" is generated by an automatic clock configuration tool and can be easily customized to your own configuration. To select different clock setup, use the "STM32F4xx_Clock_Configuration_V1.0.0.xls" provided with the AN3988 package available on <a href="" rel='nofollow' onclick='return false;'> ST Microcontrollers </a> @par Hardware and Software environment - This example runs on STM32F4xx Devices. - This example has been tested with STM324xG-EVAL RevB and can be easily tailored to any other development board - STM324xG-EVAL Set-up - Use LED1 and LED2 connected respectively to PG.06 and PG.08 @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 Project\STM32F4xx_StdPeriph_Templates - Open your preferred toolchain - Rebuild all files and load your image into target memory - Run the example * <h3><center>&copy; COPYRIGHT 2011 STMicroelectronics</center></h3> */