123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- /*
- FreeRTOS V8.2.3 - Copyright (C) 2015 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.
- 1 tab == 4 spaces!
- */
- #ifndef PROJDEFS_H
- #define PROJDEFS_H
- /*
- * Defines the prototype to which task functions must conform. Defined in this
- * file to ensure the type is known before portable.h is included.
- */
- typedef void (*TaskFunction_t)( void * );
- /* Converts a time in milliseconds to a time in ticks. */
- #define pdMS_TO_TICKS( xTimeInMs ) ( ( TickType_t ) ( ( ( TickType_t ) ( xTimeInMs ) * ( TickType_t ) configTICK_RATE_HZ ) / ( TickType_t ) 1000 ) )
- #define pdFALSE ( ( BaseType_t ) 0 )
- #define pdTRUE ( ( BaseType_t ) 1 )
- #define pdPASS ( pdTRUE )
- #define pdFAIL ( pdFALSE )
- #define errQUEUE_EMPTY ( ( BaseType_t ) 0 )
- #define errQUEUE_FULL ( ( BaseType_t ) 0 )
- /* FreeRTOS error definitions. */
- #define errCOULD_NOT_ALLOCATE_REQUIRED_MEMORY ( -1 )
- #define errQUEUE_BLOCKED ( -4 )
- #define errQUEUE_YIELD ( -5 )
- /* Macros used for basic data corruption checks. */
- #ifndef configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES
- #define configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES 0
- #endif
- #if( configUSE_16_BIT_TICKS == 1 )
- #define pdINTEGRITY_CHECK_VALUE 0x5a5a
- #else
- #define pdINTEGRITY_CHECK_VALUE 0x5a5a5a5aUL
- #endif
- /* The following errno values are used by FreeRTOS+ components, not FreeRTOS
- itself. */
- #define pdFREERTOS_ERRNO_NONE 0 /* No errors */
- #define pdFREERTOS_ERRNO_ENOENT 2 /* No such file or directory */
- #define pdFREERTOS_ERRNO_EIO 5 /* I/O error */
- #define pdFREERTOS_ERRNO_ENXIO 6 /* No such device or address */
- #define pdFREERTOS_ERRNO_EBADF 9 /* Bad file number */
- #define pdFREERTOS_ERRNO_EAGAIN 11 /* No more processes */
- #define pdFREERTOS_ERRNO_EWOULDBLOCK 11 /* Operation would block */
- #define pdFREERTOS_ERRNO_ENOMEM 12 /* Not enough memory */
- #define pdFREERTOS_ERRNO_EACCES 13 /* Permission denied */
- #define pdFREERTOS_ERRNO_EFAULT 14 /* Bad address */
- #define pdFREERTOS_ERRNO_EBUSY 16 /* Mount device busy */
- #define pdFREERTOS_ERRNO_EEXIST 17 /* File exists */
- #define pdFREERTOS_ERRNO_EXDEV 18 /* Cross-device link */
- #define pdFREERTOS_ERRNO_ENODEV 19 /* No such device */
- #define pdFREERTOS_ERRNO_ENOTDIR 20 /* Not a directory */
- #define pdFREERTOS_ERRNO_EISDIR 21 /* Is a directory */
- #define pdFREERTOS_ERRNO_EINVAL 22 /* Invalid argument */
- #define pdFREERTOS_ERRNO_ENOSPC 28 /* No space left on device */
- #define pdFREERTOS_ERRNO_ESPIPE 29 /* Illegal seek */
- #define pdFREERTOS_ERRNO_EROFS 30 /* Read only file system */
- #define pdFREERTOS_ERRNO_EUNATCH 42 /* Protocol driver not attached */
- #define pdFREERTOS_ERRNO_EBADE 50 /* Invalid exchange */
- #define pdFREERTOS_ERRNO_EFTYPE 79 /* Inappropriate file type or format */
- #define pdFREERTOS_ERRNO_ENMFILE 89 /* No more files */
- #define pdFREERTOS_ERRNO_ENOTEMPTY 90 /* Directory not empty */
- #define pdFREERTOS_ERRNO_ENAMETOOLONG 91 /* File or path name too long */
- #define pdFREERTOS_ERRNO_EOPNOTSUPP 95 /* Operation not supported on transport endpoint */
- #define pdFREERTOS_ERRNO_ENOBUFS 105 /* No buffer space available */
- #define pdFREERTOS_ERRNO_ENOPROTOOPT 109 /* Protocol not available */
- #define pdFREERTOS_ERRNO_EADDRINUSE 112 /* Address already in use */
- #define pdFREERTOS_ERRNO_ETIMEDOUT 116 /* Connection timed out */
- #define pdFREERTOS_ERRNO_EINPROGRESS 119 /* Connection already in progress */
- #define pdFREERTOS_ERRNO_EALREADY 120 /* Socket already connected */
- #define pdFREERTOS_ERRNO_EADDRNOTAVAIL 125 /* Address not available */
- #define pdFREERTOS_ERRNO_EISCONN 127 /* Socket is already connected */
- #define pdFREERTOS_ERRNO_ENOTCONN 128 /* Socket is not connected */
- #define pdFREERTOS_ERRNO_ENOMEDIUM 135 /* No medium inserted */
- #define pdFREERTOS_ERRNO_EILSEQ 138 /* An invalid UTF-16 sequence was encountered. */
- #define pdFREERTOS_ERRNO_ECANCELED 140 /* Operation canceled. */
- /* The following endian values are used by FreeRTOS+ components, not FreeRTOS
- itself. */
- #define pdFREERTOS_LITTLE_ENDIAN 0
- #define pdFREERTOS_BIG_ENDIAN 1
- #endif /* PROJDEFS_H */
|