⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 global.h

📁 实现快速傅立叶变换算法,provides test framwork for FFT testing
💻 H
📖 第 1 页 / 共 5 页
字号:
//    #endif

    #ifndef NDEBUG
        #include <stdio.h>              // prototype printf() (for TRACE)
        #define TRACE  printf
    #endif

//---------------------------------------------------------------------------
//  definitions for Keil ARM
//---------------------------------------------------------------------------
#elif  defined (__CA__)

    #define TARGET_SYSTEM   _NO_OS_
    #define DEV_SYSTEM      _DEV_KEIL_CARM_

    #define NEAR                        // variables mapped to internal data storage location
    #define FAR                         // variables mapped to external data storage location
    #define CONST        const          // variables mapped to ROM (i.e. flash)
    #define ROM                         // code or variables mapped to ROM (i.e. flash)
                                        // usage: CONST BYTE ROM foo = 0x00;
    #define HWACC                       // hardware access through external memory (i.e. CAN)
    #define LARGE                       // functions set parameters to external data storage location

    // These types can be adjusted by users to match application requirements. The goal is to
    // minimize code memory and maximize speed.
    #define GENERIC                     // generic pointer to point to application data
                                        // Variables with this attribute can be located in external
                                        // or internal data memory.
    #define MEM                         // Memory attribute to optimize speed and code of pointer access.

    #define REENTRANT
    #define PUBLIC

    #ifndef QWORD
        #define QWORD long long
    #endif

    #ifndef NDEBUG
        #include <stdio.h>              // prototype printf() (for TRACE)
        #define TRACE  printf
    #endif

//---------------------------------------------------------------------------
//  definitions for ARM IAR C Compiler
//---------------------------------------------------------------------------
#elif  defined (__ICCARM__)

    #define TARGET_SYSTEM   _NO_OS_
    #define DEV_SYSTEM      _DEV_IAR_CARM_

    #define NEAR                        // variables mapped to internal data storage location
    #define FAR                         // variables mapped to external data storage location
    #define CONST        const          // variables mapped to ROM (i.e. flash)
    #define ROM                         // code or variables mapped to ROM (i.e. flash)
                                        // usage: CONST BYTE ROM foo = 0x00;
    #define HWACC                       // hardware access through external memory (i.e. CAN)
    #define LARGE                       // functions set parameters to external data storage location

    // These types can be adjusted by users to match application requirements. The goal is to
    // minimize code memory and maximize speed.
    #define GENERIC                     // generic pointer to point to application data
                                        // Variables with this attribute can be located in external
                                        // or internal data memory.
    #define MEM                         // Memory attribute to optimize speed and code of pointer access.

    #define REENTRANT
    #define PUBLIC

    #ifndef QWORD
        #define QWORD long long
    #endif

    // Workaround:
    // If we use IAR and want to debug but don't want to use C-Spy Debugger
    // assert() doesn't work in debug mode because it needs support for FILE descriptors
    // (_DLIB_FILE_DESCRIPTOR == 1).
    #ifndef NDEBUG
        #define ASSERT(expr)    if (!(expr)) {\
                                   TRACE0 ("Assertion failed: " #expr );\
                                   while (1);}
    #else
        #define ASSERT(expr)
    #endif

    #ifndef NDEBUG
        #include <stdio.h>              // prototype printf() (for TRACE)
        #define TRACE  printf
//        #define TRACE  PRINTF4
    #endif

//---------------------------------------------------------------------------
//  definitions for Tasking 8051
//---------------------------------------------------------------------------

#elif defined (_CC51)

    #include <cc51.h>

    #define TARGET_SYSTEM   _NO_OS_
    #define DEV_SYSTEM      _DEV_TASKING_C51X_

    #define NEAR            _data       // variables mapped to internal data storage location
    #define FAR             _xdat       // variables mapped to external data storage location
    #define CONST           const       // variables mapped to ROM (i.e. flash)
    #define ROM                         // code or variables mapped to ROM (i.e. flash)
                                        // usage: CONST BYTE ROM foo = 0x00;
    #define HWACC           _xdat       // hardware access through external memory (i.e. CAN)
    #define LARGE                       // functions set parameters to external data storage location

    // These types can be adjusted by users to match application requirements. The goal is to
    // minimize code memory and maximize speed.
    #define GENERIC                     // generic pointer to point to application data
                                        // Variables with this attribute can be located in external
                                        // or internal data memory.
    #define MEM             _xdat       // Memory attribute to optimize speed and code of pointer access.

    #define REENTRANT       _reentrant
    #define PUBLIC

    #ifndef NDEBUG
        #include <stdio.h>              // prototype printf() (for TRACE)
        #define TRACE  printf
    #endif


//---------------------------------------------------------------------------
//  definitions for Tasking C167CR and C164CI
//---------------------------------------------------------------------------

#elif defined (_C166)

    #define TARGET_SYSTEM   _NO_OS_
    #define DEV_SYSTEM      _DEV_TASKING_C16X_

    #define NEAR            near        // variables mapped to internal data storage location
    #define FAR             far         // variables mapped to external data storage location
    #define CONST           const       // variables mapped to ROM (i.e. flash)
    #define ROM                         // code or variables mapped to ROM (i.e. flash)
                                        // usage: CONST BYTE ROM foo = 0x00;
    #define HWACC   /* to be defined */ // hardware access through external memory (i.e. CAN)
    #define LARGE                       // functions set parameters to external data storage location

    // These types can be adjusted by users to match application requirements. The goal is to
    // minimize code memory and maximize speed.
    #define GENERIC                     // generic pointer to point to application data
                                        // Variables with this attribute can be located in external
                                        // or internal data memory.
    #define MEM                         // Memory attribute to optimize speed and code of pointer access.

    #define REENTRANT
    #define PUBLIC

    // Stdio.h has to be alway included here. If printf() is used stdio.h defines NULL
    // without checking if it is already included. So an error occurs while compiling.
    // (r.d.)
    #include <stdio.h>                  // prototype printf() (for TRACE)
    #ifndef NDEBUG
        #define TRACE  printf
    #endif


//---------------------------------------------------------------------------
//  definitions for FUJITSU FFMC-16LX MB90590
//---------------------------------------------------------------------------

#elif (defined (F590) || defined (F543) || defined (F598) || defined (F495) || defined (F350))

    #define TARGET_SYSTEM   _NO_OS_
    #define DEV_SYSTEM      _DEV_FUJITSU_F590_

    #define NEAR    /* to be defined */ // variables mapped to internal data storage location
    #define FAR     /* to be defined */ // variables mapped to external data storage location
    #define CONST           const       // variables mapped to ROM (i.e. flash)
    #define ROM     /* to be defined */ // code or variables mapped to ROM (i.e. flash)
                                        // usage: CONST BYTE ROM foo = 0x00;
    #define HWACC   /* to be defined */ // hardware access through external memory (i.e. CAN)
    #define LARGE                       // functions set parameters to external data storage location

    // These types can be adjusted by users to match application requirements. The goal is to
    // minimize code memory and maximize speed.
    #define GENERIC                     // generic pointer to point to application data
                                        // Variables with this attribute can be located in external
                                        // or internal data memory.
    #define MEM                         // Memory attribute to optimize speed and code of pointer access.

    // softune is not able to support 64 bit variables QWORD !!!

    #define REENTRANT
    #define PUBLIC

    #ifndef NDEBUG
        #include <stdio.h>              // prototype printf() (for TRACE)
        #define TRACE  printf
    #endif


//---------------------------------------------------------------------------
//  definitions for Mitsubishi M16C family for TASKING Compiler CM16
//---------------------------------------------------------------------------

#elif defined (_CM16C)

    #define TARGET_SYSTEM   _NO_OS_
    #define DEV_SYSTEM      _DEV_TASKING_M16C_

    #define NEAR            _near       // variables mapped to internal data storage location
    #define FAR             _far        // variables mapped to external data storage location
    #define CONST           _farrom       // variables mapped to ROM (i.e. flash)
    #define ROM                         // code or variables mapped to ROM (i.e. flash)
                                        // usage: CONST BYTE ROM foo = 0x00;
    #define HWACC           _near       // hardware access through external memory (i.e. CAN)
    #define LARGE                       // functions set parameters to external data storage location

    // These types can be adjusted by users to match application requirements. The goal is to
    // minimize code memory and maximize speed.
    #define GENERIC         _far        // generic pointer to point to application data
                                        // Variables with this attribute can be located in external
                                        // or internal data memory.
                                        // do you use memory model SMALL, than you have to set _far
    #define MEM                         // Memory attribute to optimize speed and code of pointer access.

    #define REENTRANT
    #define PUBLIC

    // Stdio.h has to be alway included here. If printf() is used stdio.h defines NULL
    // without checking if it is already included. So an error occurs while compiling.
    // (r.d.)
    #include <stdio.h>                  // prototype printf() (for TRACE)
    #ifndef NDEBUG
        #define TRACE  printf
    #endif


//---------------------------------------------------------------------------
//  definitions for Mitsubishi M16C family for Mitsubishi Compiler NC30
//---------------------------------------------------------------------------
// name NC30, andere Form will der Compiler nicht !!
#elif defined (NC30)

    #define TARGET_SYSTEM   _NO_OS_
    #define DEV_SYSTEM      _DEV_MITSUBISHI_M16C_

    #define NEAR            near        // variables mapped to internal data storage location
    #define FAR             far         // variables mapped to external data storage location
    #define CONST           const       // variables mapped to ROM (i.e. flash)
    #define ROM                      // code or variables mapped to ROM (i.e. flash)
                                        // usage: CONST BYTE ROM foo = 0x00;
    #define HWACC           near        // hardware access through external memory (i.e. CAN)
    #define LARGE                       // functions set parameters to external data storage location

    // These types can be adjusted by users to match application requirements. The goal is to
    // minimize code memory and maximize speed.
    #define GENERIC         far         // generic pointer to point to application data
                                        // Variables with this attribute can be located in external
                                        // or internal data memory.
    #define MEM                         // Memory attribute to optimize speed and code of pointer access.

    #define REENTRANT
    #define PUBLIC

    #ifndef NDEBUG
        #include <stdio.h>                  // prototype printf() (for TRACE)
        #define TRACE  printf
    #endif

//---------------------------------------------------------------------------
//  definitions for ARM7 family with GNU compiler
//---------------------------------------------------------------------------

#elif defined(__GNUC__) && defined(__arm__)

    #define TARGET_SYSTEM   _NO_OS_
    #define DEV_SYSTEM      _DEV_GNU_ARM7_

    #define NEAR                        // variables mapped to internal data storage location
    #define FAR                         // variables mapped to external data storage location
    #define CONST           const       // variables mapped to ROM (i.e. flash)
    #define ROM                         // code or variables mapped to ROM (i.e. flash)
                                        // usage: CONST BYTE ROM foo = 0x00;
    #define HWACC                       // hardware access through external memory (i.e. CAN)
    #define LARGE                       // functions set parameters to external data storage location

    // These types can be adjusted by users to match application requirements. The goal is to
    // minimize code memory and maximize speed.
    #define GENERIC                     // generic pointer to point to application data
                                        // Variables with this attribute can be located in external
                                        // or internal data memory.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -