Line 13... |
Line 13... |
#define __RTOS_H__
|
#define __RTOS_H__
|
|
|
// Symmetric Multi-Processing
|
// Symmetric Multi-Processing
|
#define OS_CPU_COUNT 1
|
#define OS_CPU_COUNT 1
|
|
|
// Standard C library calls
|
|
#define printf UartPrintf
|
|
//#define printf UartPrintfPoll
|
|
#define scanf UartScanf
|
|
#ifndef WIN32
|
|
#define malloc(S) OS_HeapMalloc(NULL, S)
|
|
#define free(S) OS_HeapFree(S)
|
|
#endif
|
|
|
|
// Typedefs
|
// Typedefs
|
typedef unsigned int uint32;
|
typedef unsigned int uint32;
|
typedef unsigned short uint16;
|
typedef unsigned short uint16;
|
typedef unsigned char uint8;
|
typedef unsigned char uint8;
|
|
|
Line 39... |
Line 30... |
#define MemoryWrite(A,V) *(volatile uint32*)(A)=(V)
|
#define MemoryWrite(A,V) *(volatile uint32*)(A)=(V)
|
#endif
|
#endif
|
|
|
/***************** LibC ******************/
|
/***************** LibC ******************/
|
#if !defined(_LIBC) && !defined(_CTYPE_DEFINED)
|
#if !defined(_LIBC) && !defined(_CTYPE_DEFINED)
|
|
#define printf UartPrintf
|
|
//#define printf UartPrintfPoll
|
|
#define scanf UartScanf
|
|
#ifndef WIN32
|
|
#define malloc(S) OS_HeapMalloc(NULL, S)
|
|
#define free(S) OS_HeapFree(S)
|
|
#endif
|
|
|
#ifndef NULL
|
#ifndef NULL
|
#define NULL (void*)0
|
#define NULL (void*)0
|
#endif
|
#endif
|
|
|
#define assert(A) if((A)==0){OS_Assert();UartPrintfCritical("\r\nAssert %s:%d\r\n", __FILE__, __LINE__);}
|
#define assert(A) if((A)==0){OS_Assert();UartPrintfCritical("\r\nAssert %s:%d\r\n", __FILE__, __LINE__);}
|
Line 52... |
Line 51... |
#define isdigit(c) ('0'<=(c)&&(c)<='9')
|
#define isdigit(c) ('0'<=(c)&&(c)<='9')
|
#define islower(c) ('a'<=(c)&&(c)<='z')
|
#define islower(c) ('a'<=(c)&&(c)<='z')
|
#define isupper(c) ('A'<=(c)&&(c)<='Z')
|
#define isupper(c) ('A'<=(c)&&(c)<='Z')
|
#define isalpha(c) (islower(c)||isupper(c))
|
#define isalpha(c) (islower(c)||isupper(c))
|
#define isalnum(c) (isalpha(c)||isdigit(c))
|
#define isalnum(c) (isalpha(c)||isdigit(c))
|
|
#undef min
|
#define min(a,b) ((a)<(b)?(a):(b))
|
#define min(a,b) ((a)<(b)?(a):(b))
|
#define strcpy strcpy2 //don't use intrinsic functions
|
#define strcpy strcpy2 //don't use intrinsic functions
|
#define strcat strcat2
|
#define strcat strcat2
|
#define strncat strncat2
|
#define strncat strncat2
|
#define strcmp strcmp2
|
#define strcmp strcmp2
|
Line 78... |
Line 78... |
int memcmp(const void *cs, const void *ct, unsigned long bytes);
|
int memcmp(const void *cs, const void *ct, unsigned long bytes);
|
void *memset(void *dst, int c, unsigned long bytes);
|
void *memset(void *dst, int c, unsigned long bytes);
|
int abs(int n);
|
int abs(int n);
|
int rand(void);
|
int rand(void);
|
void srand(unsigned int seed);
|
void srand(unsigned int seed);
|
long strtol(const char *s, const char **end, int base);
|
long strtol(const char *s, char **end, int base);
|
int atoi(const char *s);
|
int atoi(const char *s);
|
char *itoa(int num, char *dst, int base);
|
char *itoa(int num, char *dst, int base);
|
#ifndef NO_ELLIPSIS
|
#ifndef NO_ELLIPSIS
|
int sprintf(char *s, const char *format, ...);
|
int sprintf(char *s, const char *format, ...);
|
int sscanf(char *s, const char *format, ...);
|
int sscanf(const char *s, const char *format, ...);
|
#endif
|
#endif
|
#ifdef INCLUDE_DUMP
|
#ifdef INCLUDE_DUMP
|
void dump(const unsigned char *data, int length);
|
void dump(const unsigned char *data, int length);
|
#endif
|
#endif
|
#ifdef INCLUDE_QSORT
|
#ifdef INCLUDE_QSORT
|