资源简介

本代码是基于STM32F103ZET6和编码器直流电机编写的,模糊自整定位置PID控制电机转动速度的程序。并且是基于正点原子代码格式编写的,相对于普通位置式PID来说控制效果更好,是很好的算法优化。对于初学者有重要的参考研究意义。本代码工程书写规范,带有注释,分程序块编写。本人测试可靠可用,绝对良心。

资源截图

代码片段和文件信息

/**************************************************************************//**
 * @file     core_cm3.c
 * @brief    CMSIS Cortex-M3 Core Peripheral Access layer Source File
 * @version  V1.30
 * @date     30. October 2009
 *
 * @note
 * Copyright (C) 2009 ARM Limited. All rights reserved.
 *
 * @par
 * ARM Limited (ARM) is supplying this software for use with Cortex-M 
 * processor based microcontrollers.  This file can be freely distributed 
 * within development tools that are supporting such ARM based processors. 
 *
 * @par
 * THIS SOFTWARE IS PROVIDED “AS IS“.  NO WARRANTIES WHETHER EXPRESS IMPLIED
 * OR STATUTORY INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
 * ARM SHALL NOT IN ANY CIRCUMSTANCES BE LIABLE FOR SPECIAL INCIDENTAL OR
 * CONSEQUENTIAL DAMAGES FOR ANY REASON WHATSOEVER.
 *
 ******************************************************************************/

#include 

/* define compiler specific symbols */
#if defined ( __CC_ARM   )
  #define __ASM            __asm                                      /*!< asm keyword for ARM Compiler          */
  #define __INLINE         __inline                                   /*!< inline keyword for ARM Compiler       */

#elif defined ( __ICCARM__ )
  #define __ASM           __asm                                       /*!< asm keyword for IAR Compiler          */
  #define __INLINE        inline                                      /*!< inline keyword for IAR Compiler. Only avaiable in High optimization mode! */

#elif defined   (  __GNUC__  )
  #define __ASM            __asm                                      /*!< asm keyword for GNU Compiler          */
  #define __INLINE         inline                                     /*!< inline keyword for GNU Compiler       */

#elif defined   (  __TASKING__  )
  #define __ASM            __asm                                      /*!< asm keyword for TASKING Compiler      */
  #define __INLINE         inline                                     /*!< inline keyword for TASKING Compiler   */

#endif


/* ###################  Compiler specific Intrinsics  ########################### */

#if defined ( __CC_ARM   ) /*------------------RealView Compiler -----------------*/
/* ARM armcc specific functions */

/**
 * @brief  Return the Process Stack Pointer
 *
 * @return ProcessStackPointer
 *
 * Return the actual process stack pointer
 */
__ASM uint32_t __get_PSP(void)
{
  mrs r0 psp
  bx lr
}

/**
 * @brief  Set the Process Stack Pointer
 *
 * @param  topOfProcStack  Process Stack Pointer
 *
 * Assign the value ProcessStackPointer to the MSP 
 * (process stack pointer) Cortex processor register
 */
__ASM void __set_PSP(uint32_t topOfProcStack)
{
  msr psp r0
  bx lr
}

/**
 * @brief  Return the Main Stack Pointer
 *
 * @return Main Stack Pointer
 *
 * Return the curren

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\CORE\
     文件       17273  2010-06-07 10:25  模糊自整定 位置式PID 控制速度2018\CORE\core_cm3.c
     文件       85714  2011-02-09 14:59  模糊自整定 位置式PID 控制速度2018\CORE\core_cm3.h
     文件       15503  2011-03-10 10:52  模糊自整定 位置式PID 控制速度2018\CORE\startup_stm32f10x_hd.s
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\HARDWARE\
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\HARDWARE\CODE\
     文件        2332  2018-06-13 10:51  模糊自整定 位置式PID 控制速度2018\HARDWARE\CODE\code4.c
     文件         280  2018-06-13 09:32  模糊自整定 位置式PID 控制速度2018\HARDWARE\CODE\code4.h
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\HARDWARE\DataScope_DP\
     文件        2667  2016-01-02 12:45  模糊自整定 位置式PID 控制速度2018\HARDWARE\DataScope_DP\DataScope_DP.C
     文件         364  2016-01-02 12:45  模糊自整定 位置式PID 控制速度2018\HARDWARE\DataScope_DP\DataScope_DP.h
     目录           0  2018-07-03 20:12  模糊自整定 位置式PID 控制速度2018\HARDWARE\FuzzyPid\
     文件        1347  2018-07-03 19:58  模糊自整定 位置式PID 控制速度2018\HARDWARE\FuzzyPid\fuzzypid .h
     文件        4161  2018-07-03 20:12  模糊自整定 位置式PID 控制速度2018\HARDWARE\FuzzyPid\fuzzypid.c
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\HARDWARE\KEY\
     文件        1827  2015-03-20 12:41  模糊自整定 位置式PID 控制速度2018\HARDWARE\KEY\key.c
     文件        1186  2015-03-19 16:14  模糊自整定 位置式PID 控制速度2018\HARDWARE\KEY\key.h
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\HARDWARE\LED\
     文件        1293  2012-10-06 18:50  模糊自整定 位置式PID 控制速度2018\HARDWARE\LED\led.c
     文件         638  2012-09-13 09:45  模糊自整定 位置式PID 控制速度2018\HARDWARE\LED\led.h
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\HARDWARE\my_PWM\
     文件         347  2018-07-03 19:28  模糊自整定 位置式PID 控制速度2018\HARDWARE\my_PWM\mypwm.h
     文件        3989  2018-07-03 20:07  模糊自整定 位置式PID 控制速度2018\HARDWARE\my_PWM\my_pwm.c
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\HARDWARE\my_TIMER\
     文件        2250  2018-07-03 20:06  模糊自整定 位置式PID 控制速度2018\HARDWARE\my_TIMER\timer7.c
     文件         176  2018-06-13 10:34  模糊自整定 位置式PID 控制速度2018\HARDWARE\my_TIMER\timer7.h
     目录           0  2018-07-03 20:09  模糊自整定 位置式PID 控制速度2018\HARDWARE\PID\
     文件        2000  2018-07-03 18:50  模糊自整定 位置式PID 控制速度2018\HARDWARE\PID\pid.c
     文件         715  2018-07-02 23:22  模糊自整定 位置式PID 控制速度2018\HARDWARE\PID\pid.h
     文件         399  2011-04-23 10:24  模糊自整定 位置式PID 控制速度2018\keilkilll.bat
............此处省略159个文件信息

评论

共有 条评论