亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main3.c

?? 最新版FreeRTOS, 包擴多種開發平臺的移植
?? C
字號:
/*
	FreeRTOS.org V4.1.1 - Copyright (C) 2003-2006 Richard Barry.

	This file is part of the FreeRTOS.org distribution.

	FreeRTOS.org is free software; you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation; either version 2 of the License, or
	(at your option) any later version.

	FreeRTOS.org 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.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with FreeRTOS.org; if not, write to the Free Software
	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

	A special exception to the GPL can be applied should you wish to distribute
	a combined work that includes FreeRTOS.org, without being obliged to provide
	the source code for any proprietary components.  See the licensing section 
	of http://www.FreeRTOS.org for full details of how and when the exception
	can be applied.

	***************************************************************************
	See http://www.FreeRTOS.org for documentation, latest information, license 
	and contact details.  Please ensure to read the configuration and relevant 
	port sections of the online documentation.
	***************************************************************************
*/

/*
 * THIS DEMO APPLICATION REQUIRES A LOOPBACK CONNECTOR TO BE FITTED TO THE PIC
 * USART PORT - connect pin 2 to pin 3 on J2.
 *
 * Instead of the normal single demo application, the PIC18F demo is split 
 * into several smaller programs of which this is the third.  This enables the 
 * demo's to be executed on the RAM limited 40 pin devices.  The 64 and 80 pin 
 * devices require a more costly development platform and are not so readily 
 * available.
 *
 * The RTOSDemo3 project is configured for a PIC18F452 device.  Main3.c starts
 * 5 tasks (including the idle task).
 * 
 * The first task repeatedly transmits a string of characters on the PIC USART
 * port.  The second task receives the characters, checking that the correct
 * sequence is maintained (i.e. what is transmitted is identical to that 
 * received).  Each transmitted and each received character causes an LED to 
 * flash.  See demo/common/minimal/comtest. c for more information.
 *
 * The third task continuously performs a 32 bit calculation.  This is a good
 * test of the context switch mechanism as the 8 bit architecture requires 
 * the use of several file registers to perform the 32 bit operations.  See
 * demo/common/minimal/integer. c for more information.
 *
 * The third task is the check task.  This periodically checks that the other
 * tasks are still running and have not experienced any errors.  If no errors
 * have been reported by either the comms or integer tasks an LED is flashed
 * with a frequency mainNO_ERROR_CHECK_PERIOD.  If an error is discovered the 
 * frequency is increased to mainERROR_FLASH_RATE.
 *
 * The check task also provides a visual indication of a system reset by
 * flashing the one remaining LED (mainRESET_LED) when it starts.  After 
 * this initial flash mainRESET_LED should remain off.
 *
 * http://www.FreeRTOS.org contains important information on the use of the 
 * PIC18F port.
 */

/*
Changes from V2.0.0

	+ Delay periods are now specified using variables and constants of
	  portTickType rather than unsigned portLONG.
*/

/* Scheduler include files. */
#include "FreeRTOS.h"
#include "task.h"

/* Demo app include files. */
#include "partest.h"
#include "serial.h"
#include "comtest.h"
#include "integer.h"

/* Priority definitions for the LED tasks.  Other tasks just use the idle
priority. */
#define mainCOMM_TEST_PRIORITY			( tskIDLE_PRIORITY + ( unsigned portBASE_TYPE ) 2 )
#define mainCHECK_TASK_PRIORITY			( tskIDLE_PRIORITY + ( unsigned portBASE_TYPE ) 3 )

/* The period between executions of the check task before and after an error
has been discovered.  If an error has been discovered the check task runs
more frequently - increasing the LED flash rate. */
#define mainNO_ERROR_CHECK_PERIOD		( ( portTickType ) 1000 / portTICK_RATE_MS )
#define mainERROR_CHECK_PERIOD			( ( portTickType ) 100 / portTICK_RATE_MS )

/* The period for which mainRESET_LED remain on every reset. */
#define mainRESET_LED_PERIOD			( ( portTickType ) 500 / portTICK_RATE_MS )

/* The LED that is toggled whenever a character is transmitted.
mainCOMM_TX_RX_LED + 1 will be toggled every time a character is received. */
#define mainCOMM_TX_RX_LED				( ( unsigned portBASE_TYPE ) 2 )

/* The LED that is flashed by the check task at a rate that indicates the 
error status. */
#define mainCHECK_TASK_LED				( ( unsigned portBASE_TYPE ) 1 )

/* The LED that is flashed once upon every reset. */
#define mainRESET_LED					( ( unsigned portBASE_TYPE ) 0 )

/* Constants required for the communications. */
#define mainCOMMS_QUEUE_LENGTH			( ( unsigned portBASE_TYPE ) 5 )
#define mainBAUD_RATE					( ( unsigned portLONG ) 57600 )
/*-----------------------------------------------------------*/

/* 
 * Task function which periodically checks the other tasks for errors.  Flashes
 * an LED at a rate that indicates whether an error has ever been detected. 
 */
static void vErrorChecks( void *pvParameters );

/*-----------------------------------------------------------*/

/* Creates the tasks, then starts the scheduler. */
void main( void )
{
	/* Initialise the required hardware. */
	vParTestInitialise();

	/* Initialise the block memory allocator. */
	vPortInitialiseBlocks();

	/* Start the standard comtest tasks as defined in demo/common/minimal. */
	vAltStartComTestTasks( mainCOMM_TEST_PRIORITY, mainBAUD_RATE, mainCOMM_TX_RX_LED );

	/* Start the standard 32bit calculation task as defined in
	demo/common/minimal. */
	vStartIntegerMathTasks( tskIDLE_PRIORITY );

	/* Start the check task defined in this file. */
	xTaskCreate( vErrorChecks, ( const portCHAR * const ) "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );

	/* Start the scheduler.  This will never return. */
	vTaskStartScheduler();
}
/*-----------------------------------------------------------*/

static void vErrorChecks( void *pvParameters )
{
portTickType xDelayTime = mainNO_ERROR_CHECK_PERIOD;
volatile unsigned portLONG ulDummy = 3UL;

	/* Toggle the LED so we can see when a reset occurs. */
	vParTestSetLED( mainRESET_LED, pdTRUE );
	vTaskDelay( mainRESET_LED_PERIOD );
	vParTestSetLED( mainRESET_LED, pdFALSE );

	/* Cycle for ever, delaying then checking all the other tasks are still
	operating without error. */
	for( ;; )
	{
		/* Wait until it is time to check the other tasks. */
		vTaskDelay( xDelayTime );

		/* Perform an integer calculation - just to ensure the registers
		get used.  The result is not important. */
		ulDummy *= 3UL;

		/* Check all the other tasks are running, and running without ever
		having an error.  The delay period is lowered if an error is reported,
		causing the LED to flash at a higher rate. */
		if( xAreIntegerMathsTaskStillRunning() == pdFALSE )
		{
			xDelayTime = mainERROR_CHECK_PERIOD;
		}

		if( xAreComTestTasksStillRunning() == pdFALSE )
		{
			xDelayTime = mainERROR_CHECK_PERIOD;
		}

		/* Flash the LED for visual feedback.  The rate of the flash will 
		indicate the health of the system. */
		vParTestToggleLED( mainCHECK_TASK_LED );
	}
}
/*-----------------------------------------------------------*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久精品2019中文字幕之3| 日韩亚洲欧美一区二区三区| 精品一区二区三区蜜桃| 亚洲r级在线视频| 亚洲精品高清视频在线观看| 国产精品久久久久9999吃药| 国产精品欧美一区二区三区| 国产精品成人午夜| 亚洲日本欧美天堂| 一区二区三区国产| 日韩和的一区二区| 捆绑变态av一区二区三区| 精品亚洲国产成人av制服丝袜| 久久机这里只有精品| 丰满少妇久久久久久久| 91热门视频在线观看| 欧美美女视频在线观看| 日韩欧美在线网站| 国产情人综合久久777777| 中文字幕一区二区三区乱码在线| 一区二区三区资源| 亚洲不卡一区二区三区| 精品亚洲porn| gogo大胆日本视频一区| 欧美丝袜丝交足nylons| 精品久久久久久久久久久久久久久 | 欧美午夜精品一区二区蜜桃| 欧美日韩国产成人在线91| 日韩精品一区二区三区四区视频 | 91网站在线播放| 欧美日韩中文字幕精品| 久久婷婷国产综合国色天香| 国产精品高潮久久久久无| 亚洲超丰满肉感bbw| 风间由美中文字幕在线看视频国产欧美| 成人免费视频视频在线观看免费 | 日韩中文字幕不卡| 福利91精品一区二区三区| 在线观看区一区二| 久久一区二区视频| 亚洲一区二区在线观看视频| 国产精品1024| 欧美电影在哪看比较好| 国产欧美久久久精品影院| 亚洲国产一区二区三区| 成人福利视频在线| 欧美成人a∨高清免费观看| 亚洲免费三区一区二区| 国产精品亚洲第一| 欧美肥妇bbw| 亚洲激情图片一区| 国产传媒一区在线| 91精品国产综合久久精品性色| 亚洲国产电影在线观看| 久久激情五月婷婷| 欧美丰满一区二区免费视频| 国产精品久久久久aaaa| 国产精品99久久久久久有的能看| 欧美日韩国产综合久久 | 亚洲自拍偷拍欧美| 不卡的av电影| 国产日韩精品视频一区| 久99久精品视频免费观看| 欧美人牲a欧美精品| 亚洲综合小说图片| 欧美综合天天夜夜久久| 亚洲欧美另类久久久精品| 成人国产精品免费观看视频| 久久久电影一区二区三区| 韩国av一区二区三区| 欧美本精品男人aⅴ天堂| 日韩综合小视频| 7777精品伊人久久久大香线蕉经典版下载 | 丰满白嫩尤物一区二区| 久久久久久久久99精品| 国产美女精品一区二区三区| 欧美一区二区精美| 日本怡春院一区二区| 91精品国模一区二区三区| 日本人妖一区二区| 精品国产一区二区在线观看| 精一区二区三区| 26uuu色噜噜精品一区| 国产最新精品免费| 欧美极品美女视频| 97精品久久久午夜一区二区三区 | 青青草97国产精品免费观看无弹窗版| 欧美日韩一区二区在线观看视频 | 97国产一区二区| 亚洲欧美日本在线| 宅男在线国产精品| 国产精品一区二区视频| 国产精品无圣光一区二区| 91片在线免费观看| 亚洲va国产va欧美va观看| 欧美一二三四在线| 床上的激情91.| 亚洲男女一区二区三区| 91精品国产综合久久久久久久 | 国产精品无人区| 91黄色免费版| 国内成人精品2018免费看| 国产精品无码永久免费888| 色琪琪一区二区三区亚洲区| 午夜久久电影网| 久久色.com| 日韩三级av在线播放| 国内外精品视频| 夜夜亚洲天天久久| 久久精品视频在线免费观看 | 亚洲蜜臀av乱码久久精品| 7777精品伊人久久久大香线蕉超级流畅| 美女mm1313爽爽久久久蜜臀| 欧美国产日韩亚洲一区| 欧美日韩不卡在线| 波多野结衣在线一区| 香港成人在线视频| 国产精品色婷婷久久58| 日韩一级二级三级| 91丨porny丨蝌蚪视频| 免费国产亚洲视频| 一区二区三国产精华液| 久久精品一区八戒影视| 91精品国产aⅴ一区二区| 成人免费va视频| 男女性色大片免费观看一区二区| 亚洲人成网站精品片在线观看| 日韩精品一区二区三区视频播放| 色婷婷激情久久| 国产成人精品综合在线观看| 视频一区二区中文字幕| 亚洲乱码国产乱码精品精小说| 精品成人一区二区| 日韩一区二区麻豆国产| 欧美在线高清视频| 99re在线精品| fc2成人免费人成在线观看播放| 久久国产综合精品| 免费成人在线观看视频| 亚洲成av人片一区二区梦乃| 一区二区三区四区不卡视频| 欧美激情一二三区| 中文字幕av免费专区久久| 日韩欧美成人一区| 日韩限制级电影在线观看| 欧美丰满美乳xxx高潮www| 欧美视频在线观看一区二区| av在线不卡免费看| 91在线视频播放地址| 91原创在线视频| 成人免费观看av| caoporen国产精品视频| 成人毛片在线观看| 99免费精品在线观看| 99免费精品在线| 欧美性受xxxx| 欧美日韩国产中文| 日韩视频在线你懂得| 日韩精品最新网址| 国产日韩影视精品| 国产精品欧美一区二区三区| 综合色中文字幕| 一区二区三区国产精华| 午夜一区二区三区视频| 日本网站在线观看一区二区三区 | 婷婷综合久久一区二区三区| 丝袜亚洲另类丝袜在线| 蜜臀91精品一区二区三区 | 91美女精品福利| 欧美卡1卡2卡| 精品福利视频一区二区三区| 国产欧美精品一区二区色综合| 国产精品久久福利| 亚洲一区二区三区爽爽爽爽爽 | 一区二区三区四区亚洲| 亚洲成人一区在线| 国产一区二区三区电影在线观看| 福利一区福利二区| 欧美羞羞免费网站| 日韩欧美不卡一区| 国产精品久久一级| 日韩制服丝袜先锋影音| 国产精品2024| 在线免费av一区| 久久久久99精品国产片| 亚洲精品视频观看| 极品美女销魂一区二区三区免费 | 青娱乐精品视频在线| 国产精品香蕉一区二区三区| 91免费看片在线观看| 51久久夜色精品国产麻豆| 国产精品日日摸夜夜摸av| 视频在线观看91| 99精品视频在线观看免费| 日韩视频中午一区| 一区二区三区欧美久久| 国产成人在线影院| 337p亚洲精品色噜噜| 亚洲日本韩国一区| 国产美女一区二区|