• 大小: 13.97MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-01
  • 语言: 其他
  • 标签: STM32  

资源简介

通过串口升级STM32应用程序,内含PC工具软件及代码的原理介绍

资源截图

代码片段和文件信息

/**************************************************************************//**
 * @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  2013-10-05 16:32  STM32通过串口升级程序\
     文件       32768  2008-09-07 09:48  STM32通过串口升级程序\123.exe
     文件       34096  2012-07-27 17:15  STM32通过串口升级程序\Form1.frm
     文件         489  2012-07-27 17:15  STM32通过串口升级程序\Form1.frx
     文件         229  2012-09-17 13:35  STM32通过串口升级程序\Form1.log
     文件         190  2010-02-10 18:09  STM32通过串口升级程序\MSSCCPRJ.SCC
     文件        5006  2012-07-27 09:41  STM32通过串口升级程序\工程1.PDM
     文件       20480  2010-12-03 22:29  STM32通过串口升级程序\工程1.exe
     文件        1058  2012-07-27 17:15  STM32通过串口升级程序\工程1.vbp
     文件          51  2012-09-02 17:16  STM32通过串口升级程序\工程1.vbw
     文件       29184  2012-07-27 09:45  STM32通过串口升级程序\说明.doc
     目录           0  2012-07-31 11:47  STM32通过串口升级程序\通信板程序\
     目录           0  2012-07-31 11:47  STM32通过串口升级程序\通信板程序\Libraries\
     目录           0  2013-10-05 16:32  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\
     目录           0  2013-10-05 16:31  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\
     文件         898  2011-12-14 09:52  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\all-wcprops
     文件         810  2011-12-14 09:52  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\entries
     目录           0  2012-07-31 11:47  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\prop-base\
     文件          53  2011-12-14 09:52  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\prop-base\License.doc.svn-base
     目录           0  2013-10-05 16:51  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\props\
     目录           0  2013-10-05 16:31  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\text-base\
     文件       12531  2011-12-14 09:52  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\text-base\CMSIS changes.htm.svn-base
     文件        9310  2011-12-14 09:52  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\text-base\CMSIS debug support.htm.svn-base
     文件       39936  2011-12-14 09:52  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\text-base\License.doc.svn-base
     目录           0  2012-07-31 11:47  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\tmp\
     目录           0  2013-10-05 16:51  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\tmp\prop-base\
     目录           0  2013-10-05 16:51  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\tmp\props\
     目录           0  2013-10-05 16:51  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\.svn\tmp\text-base\
     目录           0  2012-07-31 11:47  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\CM3\
     目录           0  2013-10-05 16:31  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\CM3\.svn\
     文件         200  2011-12-14 09:52  STM32通过串口升级程序\通信板程序\Libraries\CMSIS\CM3\.svn\all-wcprops
............此处省略1175个文件信息

评论

共有 条评论