optical/NxBase/afxdef.h

181 lines
4.4 KiB
C
Raw Permalink Normal View History

2025-09-04 01:45:08 +00:00
#ifndef __AFXDEF_H__
#define __AFXDEF_H__
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
//---------------------------------------------------------------
#ifndef NULL
#define NULL ((void *) 0)
#endif
#ifndef TRUE
#define TRUE 1
#endif
#ifndef FALSE
#define FALSE 0
#endif
//---------------------------------------------------------------
#define Bit_RESET 0
#define Bit_SET 1
#define SensorSta GPIO_PinState
#define SENSOR_ON Bit_RESET
#define SENSOR_OFF Bit_SET
#define OUTPUT_ON Bit_RESET
#define OUTPUT_OFF Bit_SET
#define DATA_VALID 0x55AA
#define DAT_ZERO Bit_RESET // 0
#define DAT_ONE Bit_SET // 1
//---------------------------------------------------------------
#define BOOL int
#define BYTE uint8_t
#define WORD uint16_t
#define DWORD uint32_t
#define u8 uint8_t
#define u16 uint16_t
#define u32 uint32_t
#define u64 uint64_t
#define s8 int8_t
#define s16 int16_t
#define s32 int32_t
#define vu16 volatile u16
//---------------------------------------------------------------
#define U8_MAX ((u8)255)
#define S8_MAX ((s8)127)
#define S8_MIN ((s8)(-128))
#define U16_MAX ((u16)65535u)
#define S16_MAX ((s16)32767)
#define S16_MIN ((s16)(-32768))
#define U32_MAX ((u32)4294967295uL)
#define S32_MAX ((s32)2147483647)
#define S32_MIN ((s32)(-2147483648))
//---------------------------------------------------------------
#define CLEAR_INT() __set_PRIMASK(1)
#define SET_INT() __set_PRIMASK(0)
#ifdef __set_FAULTMASK
#define CLEAR_ALL_INT() __set_FAULTMASK(1)
#define SET_ALL_INT() __set_FAULTMASK(0)
#endif
#ifndef CLEAR_ALL_INT
#define CLEAR_ALL_INT CLEAR_INT
#endif
#ifndef SET_ALL_INT
#define SET_ALL_INT SET_INT
#endif
#ifndef __WEAK
#define __WEAK __attribute__((weak))
#endif
//---------------------------------------------------------------
#ifndef LOBYTE
#define LOBYTE(w) ((BYTE)(((WORD)(w)) & 0xff))
#endif
#ifndef HIBYTE
#define HIBYTE(w) ((BYTE)((((WORD)(w)) >> 8) & 0xff))
#endif
#ifndef LOWORD
#define LOWORD(l) ((WORD)(((DWORD)(l)) & 0xffff))
#endif
#ifndef HIWORD
#define HIWORD(l) ((WORD)((((DWORD)(l)) >> 16) & 0xffff))
#endif
#define MAKEWORD(a, b) ((WORD)((BYTE)(a)) | (((WORD)((BYTE)(b))) << 8))
#define MAKEDWORD(a, b) ((DWORD)((WORD)(a)) | (((DWORD)((WORD)(b))) << 16))
#define MAKEDWORDF(a, b, c, d) ((DWORD)((BYTE)(a)) | (((DWORD)((BYTE)(b))) << 8) | (DWORD)((BYTE)(c)) << 16 | (((DWORD)((BYTE)(d))) << 24))
#define LOHFBYTE(b) ((BYTE)((b) & 0x0f))
#define HIHFBYTE(b) ((BYTE)(((b) >> 4) & 0x0f))
#define MAKEBYTE(a, b) ((BYTE)((BYTE)((a) & 0x0f)) | ((BYTE)(((BYTE)((b) & 0x0f)) << 4)))
//---------------------------------------------------------------
#define MOD_BIT_0 0x00000001
#define MOD_BIT_1 0x00000002
#define MOD_BIT_2 0x00000004
#define MOD_BIT_3 0x00000008
#define MOD_BIT_4 0x00000010
#define MOD_BIT_5 0x00000020
#define MOD_BIT_6 0x00000040
#define MOD_BIT_7 0x00000080
#define MOD_BIT_8 0x00000100
#define MOD_BIT_9 0x00000200
#define MOD_BIT_10 0x00000400
#define MOD_BIT_11 0x00000800
#define MOD_BIT_12 0x00001000
#define MOD_BIT_13 0x00002000
#define MOD_BIT_14 0x00004000
#define MOD_BIT_15 0x00008000
#define MOD_BIT_16 0x00010000
#define MOD_BIT_17 0x00020000
#define MOD_BIT_18 0x00040000
#define MOD_BIT_19 0x00080000
#define MOD_BIT_20 0x00100000
#define MOD_BIT_21 0x00200000
#define MOD_BIT_22 0x00400000
#define MOD_BIT_23 0x00800000
#define MOD_BIT_24 0x01000000
#define MOD_BIT_25 0x02000000
#define MOD_BIT_26 0x04000000
#define MOD_BIT_27 0x08000000
#define MOD_BIT_28 0x10000000
#define MOD_BIT_29 0x20000000
#define MOD_BIT_30 0x40000000
#define MOD_BIT_31 0x80000000
//---------------------------------------------------------------
#define MAKEIP(ip1,ip2,ip3,ip4) ((u32)( (((u32)(ip4&0xff))<<24) + (((u32)(ip3&0xff))<<16) + (((u32)(ip2&0xff))<<8) + (((u32)(ip1&0xff))<<0)))
#define GETIP1(ip) ((u8)(((u32)(ip)) >> 0) & 0xFF)
#define GETIP2(ip) ((u8)(((u32)(ip)) >> 8) & 0xFF)
#define GETIP3(ip) ((u8)(((u32)(ip)) >> 16) & 0xFF)
#define GETIP4(ip) ((u8)(((u32)(ip)) >> 24) & 0xFF)
//---------------------------------------------------------------
#ifndef PI
#define PI 3.1415926535897932
#endif
//---------------------------------------------------------------
typedef u8 (*SENSOR_FUN)(void);
//----------------------------------------------------------------------------------------------------
//---------------------------------------------------------------
#endif