STM32搭载RTOS实现任务+消息队列+串口通信完整项目代码


本项目在cortex-m3 STM32奋斗开发板V5上成功运行.平台:KEIL4 搭载FreeRTOS系统,任务一向消息队列填充数字,任务二从消息队列提取数据并发送到串口1,同时有LED灯跟随数据传送亮灭。 这里我们的课程设计内容。 对于STM32和FreeRTOS初学者以及想了解RTOS的任务机制与消息队列的好例程。
资源截图
代码片段和文件信息
/**************************************************************************//**
 * @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

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      17273  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSIScore_cm3.c

     文件      85714  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSIScore_cm3.h

     文件      15766  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstartupstartup_stm32f10x_cl.s

     文件      15692  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstartupstartup_stm32f10x_hd.s

     文件      15692  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstartupstartup_stm32f10x_hd_vl.s

     文件      12376  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstartupstartup_stm32f10x_ld.s

     文件      13656  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstartupstartup_stm32f10x_ld_vl.s

     文件      12765  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstartupstartup_stm32f10x_md.s

     文件      14073  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstartupstartup_stm32f10x_md_vl.s

     文件      15955  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstartupstartup_stm32f10x_xl.s

     文件     633941  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISstm32f10x.h

     文件      36557  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISsystem_stm32f10x.c

     文件       2085  2015-07-23 16:39  基于RTOS消息队列的串口通信CMSISsystem_stm32f10x.h

     文件      14871  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOScroutine.c

     文件      10883  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSheap_2.c

     文件      28423  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludecroutine.h

     文件      15417  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludeFreeRTOS.h

     文件       5101  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludeFreeRTOSConfig.h

     文件      12949  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludelist.h

     文件       6412  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludempu_wrappers.h

     文件      11780  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludeportable.h

     文件       5462  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludeportmacro.h

     文件       3526  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludeprojdefs.h

     文件      44191  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludequeue.h

     文件      28498  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludesemphr.h

     文件       8580  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSincludeStackMacros.h

     文件      46909  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSinclude ask.h

     文件      44681  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSinclude imers.h

     文件       8296  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSlist.c

     文件      10036  2015-07-23 16:39  基于RTOS消息队列的串口通信FreeRTOSport.c

............此处省略219个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)