mirror of
https://gitee.com/lzc56/MiaoUI.git
synced 2025-08-13 20:52:52 +00:00
316 lines
13 KiB
C
316 lines
13 KiB
C
![]() |
/*
|
|||
|
FreeRTOS V9.0.0 - Copyright (C) 2016 Real Time Engineers Ltd.
|
|||
|
All rights reserved
|
|||
|
|
|||
|
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
|||
|
|
|||
|
This file is part of the FreeRTOS distribution.
|
|||
|
|
|||
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
|||
|
the terms of the GNU General Public License (version 2) as published by the
|
|||
|
Free Software Foundation >>>> AND MODIFIED BY <<<< the FreeRTOS exception.
|
|||
|
|
|||
|
***************************************************************************
|
|||
|
>>! NOTE: The modification to the GPL is included to allow you to !<<
|
|||
|
>>! distribute a combined work that includes FreeRTOS without being !<<
|
|||
|
>>! obliged to provide the source code for proprietary components !<<
|
|||
|
>>! outside of the FreeRTOS kernel. !<<
|
|||
|
***************************************************************************
|
|||
|
|
|||
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
|||
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|||
|
FOR A PARTICULAR PURPOSE. Full license text is available on the following
|
|||
|
link: http://www.freertos.org/a00114.html
|
|||
|
|
|||
|
***************************************************************************
|
|||
|
* *
|
|||
|
* FreeRTOS provides completely free yet professionally developed, *
|
|||
|
* robust, strictly quality controlled, supported, and cross *
|
|||
|
* platform software that is more than just the market leader, it *
|
|||
|
* is the industry's de facto standard. *
|
|||
|
* *
|
|||
|
* Help yourself get started quickly while simultaneously helping *
|
|||
|
* to support the FreeRTOS project by purchasing a FreeRTOS *
|
|||
|
* tutorial book, reference manual, or both: *
|
|||
|
* http://www.FreeRTOS.org/Documentation *
|
|||
|
* *
|
|||
|
***************************************************************************
|
|||
|
|
|||
|
http://www.FreeRTOS.org/FAQHelp.html - Having a problem? Start by reading
|
|||
|
the FAQ page "My application does not run, what could be wrong?". Have you
|
|||
|
defined configASSERT()?
|
|||
|
|
|||
|
http://www.FreeRTOS.org/support - In return for receiving this top quality
|
|||
|
embedded software for free we request you assist our global community by
|
|||
|
participating in the support forum.
|
|||
|
|
|||
|
http://www.FreeRTOS.org/training - Investing in training allows your team to
|
|||
|
be as productive as possible as early as possible. Now you can receive
|
|||
|
FreeRTOS training directly from Richard Barry, CEO of Real Time Engineers
|
|||
|
Ltd, and the world's leading authority on the world's leading RTOS.
|
|||
|
|
|||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
|||
|
including FreeRTOS+Trace - an indispensable productivity tool, a DOS
|
|||
|
compatible FAT file system, and our tiny thread aware UDP/IP stack.
|
|||
|
|
|||
|
http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate.
|
|||
|
Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS.
|
|||
|
|
|||
|
http://www.OpenRTOS.com - Real Time Engineers ltd. license FreeRTOS to High
|
|||
|
Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS
|
|||
|
licenses offer ticketed support, indemnification and commercial middleware.
|
|||
|
|
|||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
|||
|
engineered and independently SIL3 certified version for use in safety and
|
|||
|
mission critical applications that require provable dependability.
|
|||
|
|
|||
|
*/
|
|||
|
|
|||
|
|
|||
|
#ifndef FREERTOS_CONFIG_H
|
|||
|
#define FREERTOS_CONFIG_H
|
|||
|
|
|||
|
#include "stm32f10x.h"
|
|||
|
#include "bsp_usart.h"
|
|||
|
|
|||
|
|
|||
|
//<2F><><EFBFBD>Բ<EFBFBD>ͬ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD>ͬ<EFBFBD><CDAC>stdint.h<>ļ<EFBFBD>
|
|||
|
#if defined(__ICCARM__) || defined(__CC_ARM) || defined(__GNUC__)
|
|||
|
#include <stdint.h>
|
|||
|
extern uint32_t SystemCoreClock;
|
|||
|
#endif
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD>
|
|||
|
#define vAssertCalled(char,int) printf("Error:%s,%d\r\n",char,int)
|
|||
|
#define configASSERT(x) if((x)==0) vAssertCalled(__FILE__,__LINE__)
|
|||
|
|
|||
|
/************************************************************************
|
|||
|
* FreeRTOS<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
*********************************************************************/
|
|||
|
/* <20><>1<EFBFBD><31>RTOSʹ<53><CAB9><EFBFBD><EFBFBD>ռʽ<D5BC><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>RTOSʹ<53><CAB9>Э<EFBFBD><D0AD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ƭ<EFBFBD><C6AC>
|
|||
|
*
|
|||
|
* ע<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD>Է<EFBFBD>Ϊ<EFBFBD><EFBFBD>ռʽ<EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD>
|
|||
|
* Э<EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
#define configUSE_PREEMPTION 1
|
|||
|
|
|||
|
//1ʹ<31><CAB9>ʱ<EFBFBD><CAB1>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD>(Ĭ<><C4AC>ʽʹ<CABD>ܵ<EFBFBD>)
|
|||
|
#define configUSE_TIME_SLICING 1
|
|||
|
|
|||
|
/* ijЩ<C4B3><D0A9><EFBFBD><EFBFBD>FreeRTOS<4F><53>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>Ҫִ<D2AA>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* ͨ<EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>ơ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⷽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*
|
|||
|
* ͨ<EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* 1.configUSE_PORT_OPTIMISED_TASK_SELECTION Ϊ 0 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⷽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* 2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FreeRTOS֧<EFBFBD>ֵ<EFBFBD>Ӳ<EFBFBD><EFBFBD>
|
|||
|
* 3.<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD>Cʵ<EFBFBD>֣<EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⷽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* 4.<EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD>Ŀ
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD>ⷽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* 1.<EFBFBD><EFBFBD><EFBFBD>뽫configUSE_PORT_OPTIMISED_TASK_SELECTION<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1<EFBFBD><EFBFBD>
|
|||
|
* 2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD>ܹ<EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[CLZ]ָ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* 3.<EFBFBD><EFBFBD>ͨ<EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
|
|||
|
* 4.һ<EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD>ĿΪ32
|
|||
|
* һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õģ<EFBFBD>MCUû<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ЩӲ<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD>˺<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
|
|||
|
|
|||
|
/* <20><>1<EFBFBD><31>ʹ<EFBFBD>ܵ<DCB5><CDB9><EFBFBD>ticklessģʽ<C4A3><CABD><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD>ģ<EFBFBD>tick<63><6B><EFBFBD>ж<EFBFBD>һֱ<D2BB><D6B1><EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD>迪<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܻᵼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>س<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>°취<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* 1.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD>
|
|||
|
* 2.<EFBFBD><EFBFBD>ס<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><EFBFBD><EFBFBD>ɿ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*
|
|||
|
* 1.ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD> BOOT 0 <EFBFBD>Ӹߵ<EFBFBD>ƽ(3.3V)
|
|||
|
* 2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ磬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*
|
|||
|
* 1.ʹ<EFBFBD><EFBFBD>FlyMcu<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>оƬ<EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* STMISP -> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>оƬ(z)
|
|||
|
*/
|
|||
|
#define configUSE_TICKLESS_IDLE 0
|
|||
|
|
|||
|
/*
|
|||
|
* д<EFBFBD><EFBFBD>ʵ<EFBFBD>ʵ<EFBFBD>CPU<EFBFBD>ں<EFBFBD>ʱ<EFBFBD><EFBFBD>Ƶ<EFBFBD>ʣ<EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPUָ<EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>Ƶ<EFBFBD>ʣ<EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪFclk
|
|||
|
* FclkΪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD>ں˵<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>źţ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD>cpu<EFBFBD><EFBFBD>ƵΪ XX MHz<EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>źţ<EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ģ<EFBFBD>1/Fclk<EFBFBD><EFBFBD>Ϊcpuʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>
|
|||
|
*/
|
|||
|
#define configCPU_CLOCK_HZ (SystemCoreClock)
|
|||
|
|
|||
|
//RTOSϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>жϵ<D0B6>Ƶ<EFBFBD>ʡ<EFBFBD><CAA1><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>жϵĴ<CFB5><C4B4><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>ж<EFBFBD>RTOS<4F><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define configTICK_RATE_HZ (( TickType_t )1000)
|
|||
|
|
|||
|
//<2F><>ʹ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
|||
|
#define configMAX_PRIORITIES (32)
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õĶ<C3B5>ջ<EFBFBD><D5BB>С
|
|||
|
#define configMINIMAL_STACK_SIZE ((unsigned short)128)
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define configMAX_TASK_NAME_LEN (16)
|
|||
|
|
|||
|
//ϵͳ<CFB5><CDB3><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1<EFBFBD><31>ʾΪ16λ<36><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD>0<EFBFBD><30>ʾΪ32λ<32><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define configUSE_16_BIT_TICKS 0
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPUʹ<55><CAB9>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define configIDLE_SHOULD_YIELD 1
|
|||
|
|
|||
|
//<2F><><EFBFBD>ö<EFBFBD><C3B6><EFBFBD>
|
|||
|
#define configUSE_QUEUE_SETS 0
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD>ܣ<EFBFBD>Ĭ<EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD>
|
|||
|
#define configUSE_TASK_NOTIFICATIONS 1
|
|||
|
|
|||
|
//ʹ<>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD>
|
|||
|
#define configUSE_MUTEXES 0
|
|||
|
|
|||
|
//ʹ<>õݹ黥<DDB9><E9BBA5><EFBFBD>ź<EFBFBD><C5BA><EFBFBD>
|
|||
|
#define configUSE_RECURSIVE_MUTEXES 0
|
|||
|
|
|||
|
//Ϊ1ʱʹ<CAB1>ü<EFBFBD><C3BC><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD>
|
|||
|
#define configUSE_COUNTING_SEMAPHORES 0
|
|||
|
|
|||
|
/* <20><><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>ע<EFBFBD><D7A2><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>и<EFBFBD><D0B8><EFBFBD> */
|
|||
|
#define configQUEUE_REGISTRY_SIZE 10
|
|||
|
|
|||
|
#define configUSE_APPLICATION_TASK_TAG 0
|
|||
|
|
|||
|
|
|||
|
/*****************************************************************
|
|||
|
FreeRTOS<EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
*****************************************************************/
|
|||
|
//֧<>ֶ<EFBFBD>̬<EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define configSUPPORT_DYNAMIC_ALLOCATION 1
|
|||
|
//֧<>־<EFBFBD>̬<EFBFBD>ڴ<EFBFBD>
|
|||
|
#define configSUPPORT_STATIC_ALLOCATION 0
|
|||
|
//ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>ܵĶѴ<C4B6>С
|
|||
|
#define configTOTAL_HEAP_SIZE ((size_t)(12*1024))
|
|||
|
|
|||
|
|
|||
|
/***************************************************************
|
|||
|
FreeRTOS<EFBFBD>빳<EFBFBD>Ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>йص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
**************************************************************/
|
|||
|
/* <20><>1<EFBFBD><31>ʹ<EFBFBD>ÿ<EFBFBD><C3BF>й<EFBFBD><D0B9>ӣ<EFBFBD>Idle Hook<6F><6B><EFBFBD><EFBFBD><EFBFBD>ڻص<DABB><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD><D4BF>й<EFBFBD><D0B9><EFBFBD>
|
|||
|
*
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>֣<EFBFBD>
|
|||
|
* FreeRTOS<EFBFBD>涨<EFBFBD>˺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֺͲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>void vApplicationIdleHook(void )<EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD>ᱻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD>ɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>RTOS<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷŷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵĶ<EFBFBD>ջ<EFBFBD>ڴ档
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD>˱<EFBFBD><EFBFBD>뱣֤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>CPUִ<EFBFBD><EFBFBD>
|
|||
|
* ʹ<EFBFBD>ÿ<EFBFBD><EFBFBD>й<EFBFBD><EFBFBD>Ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʡ<EFBFBD><EFBFBD>ģʽ<EFBFBD>Ǻܳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>API<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
#define configUSE_IDLE_HOOK 0
|
|||
|
|
|||
|
/* <20><>1<EFBFBD><31>ʹ<EFBFBD><CAB9>ʱ<EFBFBD><CAB1>Ƭ<EFBFBD><C6AC><EFBFBD>ӣ<EFBFBD>Tick Hook<6F><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD>
|
|||
|
*
|
|||
|
*
|
|||
|
* ʱ<EFBFBD><EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>֣<EFBFBD>
|
|||
|
* FreeRTOS<EFBFBD>涨<EFBFBD>˺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֺͲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>void vApplicationTickHook(void )
|
|||
|
* ʱ<EFBFBD><EFBFBD>Ƭ<EFBFBD>жϿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Եĵ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dz<EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ö<EFBFBD>ջ<EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD>ܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԡ<EFBFBD>FromISR" <20><> "FROM_ISR<EFBFBD><EFBFBD><EFBFBD><EFBFBD>β<EFBFBD><EFBFBD>API<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
/*xTaskIncrementTick<63><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>xPortSysTickHandler<65>жϺ<D0B6><CFBA><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD>õġ<C3B5><C4A1><EFBFBD><EFBFBD>ˣ<EFBFBD>vApplicationTickHook()<29><><EFBFBD><EFBFBD>ִ<EFBFBD>е<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̲ܶ<DCB6><CCB2><EFBFBD>*/
|
|||
|
#define configUSE_TICK_HOOK 0
|
|||
|
|
|||
|
//ʹ<><CAB9><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܹ<EFBFBD><DCB9>Ӻ<EFBFBD><D3BA><EFBFBD>
|
|||
|
#define configUSE_MALLOC_FAILED_HOOK 0
|
|||
|
|
|||
|
/*
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0ʱ<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ô˹<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṩһ<EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õĻ<EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⷽ<EFBFBD><EFBFBD> */
|
|||
|
#define configCHECK_FOR_STACK_OVERFLOW 0
|
|||
|
|
|||
|
|
|||
|
/********************************************************************
|
|||
|
FreeRTOS<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD>ռ<EFBFBD><EFBFBD>йص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
**********************************************************************/
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ͳ<EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD>
|
|||
|
#define configGENERATE_RUN_TIME_STATS 0
|
|||
|
//<2F><><EFBFBD>ÿ<EFBFBD><C3BF>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD>ٵ<EFBFBD><D9B5><EFBFBD>
|
|||
|
#define configUSE_TRACE_FACILITY 0
|
|||
|
/* <20><><EFBFBD><EFBFBD>configUSE_TRACE_FACILITYͬʱΪ1ʱ<31><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* prvWriteNameToBuffer()
|
|||
|
* vTaskList(),
|
|||
|
* vTaskGetRunTimeStats()
|
|||
|
*/
|
|||
|
#define configUSE_STATS_FORMATTING_FUNCTIONS 1
|
|||
|
|
|||
|
|
|||
|
/********************************************************************
|
|||
|
FreeRTOS<EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD><EFBFBD>йص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
*********************************************************************/
|
|||
|
//<2F><><EFBFBD><EFBFBD>Э<EFBFBD>̣<EFBFBD><CCA3><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>croutine.c
|
|||
|
#define configUSE_CO_ROUTINES 0
|
|||
|
//Э<>̵<EFBFBD><CCB5><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>Ŀ
|
|||
|
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
|
|||
|
|
|||
|
|
|||
|
/***********************************************************************
|
|||
|
FreeRTOS<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>йص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
**********************************************************************/
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
|||
|
#define configUSE_TIMERS 0
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
|||
|
#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES-1)
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD>
|
|||
|
#define configTIMER_QUEUE_LENGTH 10
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB>С
|
|||
|
#define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE*2)
|
|||
|
|
|||
|
/************************************************************
|
|||
|
FreeRTOS<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
************************************************************/
|
|||
|
#define INCLUDE_xTaskGetSchedulerState 1
|
|||
|
#define INCLUDE_vTaskPrioritySet 1
|
|||
|
#define INCLUDE_uxTaskPriorityGet 1
|
|||
|
#define INCLUDE_vTaskDelete 1
|
|||
|
#define INCLUDE_vTaskCleanUpResources 1
|
|||
|
#define INCLUDE_vTaskSuspend 1
|
|||
|
#define INCLUDE_vTaskDelayUntil 1
|
|||
|
#define INCLUDE_vTaskDelay 1
|
|||
|
#define INCLUDE_eTaskGetState 1
|
|||
|
#define INCLUDE_xTimerPendFunctionCall 0
|
|||
|
//#define INCLUDE_xTaskGetCurrentTaskHandle 1
|
|||
|
#define INCLUDE_uxTaskGetStackHighWaterMark 1
|
|||
|
//#define INCLUDE_xTaskGetIdleTaskHandle 0
|
|||
|
|
|||
|
|
|||
|
/******************************************************************
|
|||
|
FreeRTOS<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>йص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
******************************************************************/
|
|||
|
#ifdef __NVIC_PRIO_BITS
|
|||
|
#define configPRIO_BITS __NVIC_PRIO_BITS
|
|||
|
#else
|
|||
|
#define configPRIO_BITS 4
|
|||
|
#endif
|
|||
|
//<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
|||
|
#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 15
|
|||
|
|
|||
|
//ϵͳ<CFB5>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
|||
|
#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 5
|
|||
|
|
|||
|
#define configKERNEL_INTERRUPT_PRIORITY ( configLIBRARY_LOWEST_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) ) /* 240 */
|
|||
|
|
|||
|
#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
|
|||
|
|
|||
|
|
|||
|
/****************************************************************
|
|||
|
FreeRTOS<EFBFBD><EFBFBD><EFBFBD>жϷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>йص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
****************************************************************/
|
|||
|
#define xPortPendSVHandler PendSV_Handler
|
|||
|
#define vPortSVCHandler SVC_Handler
|
|||
|
|
|||
|
|
|||
|
/* <20><><EFBFBD><EFBFBD>Ϊʹ<CEAA><CAB9>Percepio Tracealyzer<65><72>Ҫ<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫʱ<D2AA><CAB1> configUSE_TRACE_FACILITY <20><><EFBFBD><EFBFBD>Ϊ 0 */
|
|||
|
#if ( configUSE_TRACE_FACILITY == 1 )
|
|||
|
#include "trcRecorder.h"
|
|||
|
#define INCLUDE_xTaskGetCurrentTaskHandle 1 // <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD> TraceԴ<65><D4B4>ʹ<EFBFBD>ã<EFBFBD>Ĭ<EFBFBD>ϸ<EFBFBD>ֵΪ0 <20><>ʾ<EFBFBD><CABE><EFBFBD>ã<EFBFBD>
|
|||
|
#endif
|
|||
|
|
|||
|
|
|||
|
#endif /* FREERTOS_CONFIG_H */
|
|||
|
|