NANO100_BSP V3.04.002
The Board Support Package for Nano100BN Series
Modules | Macros | Typedefs
Collaboration diagram for NANO100 I/O Routines:

Modules

 NANO100 Legacy Constants
 

Macros

#define M8(addr)   (*((vu8 *) (addr)))
 Get a 8-bit unsigned value from specified address. More...
 
#define M16(addr)   (*((vu16 *) (addr)))
 Get a 16-bit unsigned value from specified address. More...
 
#define M32(addr)   (*((vu32 *) (addr)))
 Get a 32-bit unsigned value from specified address. More...
 
#define outpw(port, value)   *((volatile unsigned int *)(port)) = value
 Set a 32-bit unsigned value to specified I/O port. More...
 
#define inpw(port)   (*((volatile unsigned int *)(port)))
 Get a 32-bit unsigned value from specified I/O port. More...
 
#define outps(port, value)   *((volatile unsigned short *)(port)) = value
 Set a 16-bit unsigned value to specified I/O port. More...
 
#define inps(port)   (*((volatile unsigned short *)(port)))
 Get a 16-bit unsigned value from specified I/O port. More...
 
#define outpb(port, value)   *((volatile unsigned char *)(port)) = value
 Set a 8-bit unsigned value to specified I/O port. More...
 
#define inpb(port)   (*((volatile unsigned char *)(port)))
 Get a 8-bit unsigned value from specified I/O port. More...
 
#define outp32(port, value)   *((volatile unsigned int *)(port)) = value
 Set a 32-bit unsigned value to specified I/O port. More...
 
#define inp32(port)   (*((volatile unsigned int *)(port)))
 Get a 32-bit unsigned value from specified I/O port. More...
 
#define outp16(port, value)   *((volatile unsigned short *)(port)) = value
 Set a 16-bit unsigned value to specified I/O port. More...
 
#define inp16(port)   (*((volatile unsigned short *)(port)))
 Get a 16-bit unsigned value from specified I/O port. More...
 
#define outp8(port, value)   *((volatile unsigned char *)(port)) = value
 Set a 8-bit unsigned value to specified I/O port. More...
 
#define inp8(port)   (*((volatile unsigned char *)(port)))
 Get a 8-bit unsigned value from specified I/O port. More...
 

Typedefs

typedef volatile unsigned char vu8
 Define 8-bit unsigned volatile data type. More...
 
typedef volatile unsigned short vu16
 Define 16-bit unsigned volatile data type. More...
 
typedef volatile unsigned long vu32
 Define 32-bit unsigned volatile data type. More...
 

Detailed Description

The Declaration of NANO100 I/O Routines

Macro Definition Documentation

◆ inp16

#define inp16 (   port)    (*((volatile unsigned short *)(port)))

Get a 16-bit unsigned value from specified I/O port.

Parameters
[in]portPort address to get 16-bit data from
Returns
16-bit unsigned value stored in specified I/O port
Note
The input port must be 16-bit aligned

Definition at line 11831 of file Nano100Series.h.

◆ inp32

#define inp32 (   port)    (*((volatile unsigned int *)(port)))

Get a 32-bit unsigned value from specified I/O port.

Parameters
[in]portPort address to get 32-bit data from
Returns
32-bit unsigned value stored in specified I/O port
Note
The input port must be 32-bit aligned

Definition at line 11814 of file Nano100Series.h.

◆ inp8

#define inp8 (   port)    (*((volatile unsigned char *)(port)))

Get a 8-bit unsigned value from specified I/O port.

Parameters
[in]portPort address to get 8-bit data from
Returns
8-bit unsigned value stored in specified I/O port

Definition at line 11846 of file Nano100Series.h.

◆ inpb

#define inpb (   port)    (*((volatile unsigned char *)(port)))

Get a 8-bit unsigned value from specified I/O port.

Parameters
[in]portPort address to get 8-bit data from
Returns
8-bit unsigned value stored in specified I/O port

Definition at line 11797 of file Nano100Series.h.

◆ inps

#define inps (   port)    (*((volatile unsigned short *)(port)))

Get a 16-bit unsigned value from specified I/O port.

Parameters
[in]portPort address to get 16-bit data from
Returns
16-bit unsigned value stored in specified I/O port
Note
The input port must be 16-bit aligned

Definition at line 11782 of file Nano100Series.h.

◆ inpw

#define inpw (   port)    (*((volatile unsigned int *)(port)))

Get a 32-bit unsigned value from specified I/O port.

Parameters
[in]portPort address to get 32-bit data from
Returns
32-bit unsigned value stored in specified I/O port
Note
The input port must be 32-bit aligned

Definition at line 11765 of file Nano100Series.h.

◆ M16

#define M16 (   addr)    (*((vu16 *) (addr)))

Get a 16-bit unsigned value from specified address.

Parameters
[in]addrAddress to get 16-bit data from
Returns
16-bit unsigned value stored in specified address
Note
The input address must be 16-bit aligned

Definition at line 11740 of file Nano100Series.h.

◆ M32

#define M32 (   addr)    (*((vu32 *) (addr)))

Get a 32-bit unsigned value from specified address.

Parameters
[in]addrAddress to get 32-bit data from
Returns
32-bit unsigned value stored in specified address
Note
The input address must be 32-bit aligned

Definition at line 11748 of file Nano100Series.h.

◆ M8

#define M8 (   addr)    (*((vu8 *) (addr)))

Get a 8-bit unsigned value from specified address.

Parameters
[in]addrAddress to get 8-bit data from
Returns
8-bit unsigned value stored in specified address

Definition at line 11732 of file Nano100Series.h.

◆ outp16

#define outp16 (   port,
  value 
)    *((volatile unsigned short *)(port)) = value

Set a 16-bit unsigned value to specified I/O port.

Parameters
[in]portPort address to set 16-bit data
[in]valueValue to write to I/O port
Returns
None
Note
The output port must be 16-bit aligned

Definition at line 11823 of file Nano100Series.h.

◆ outp32

#define outp32 (   port,
  value 
)    *((volatile unsigned int *)(port)) = value

Set a 32-bit unsigned value to specified I/O port.

Parameters
[in]portPort address to set 32-bit data
[in]valueValue to write to I/O port
Returns
None
Note
The output port must be 32-bit aligned

Definition at line 11806 of file Nano100Series.h.

◆ outp8

#define outp8 (   port,
  value 
)    *((volatile unsigned char *)(port)) = value

Set a 8-bit unsigned value to specified I/O port.

Parameters
[in]portPort address to set 8-bit data
[in]valueValue to write to I/O port
Returns
None

Definition at line 11839 of file Nano100Series.h.

◆ outpb

#define outpb (   port,
  value 
)    *((volatile unsigned char *)(port)) = value

Set a 8-bit unsigned value to specified I/O port.

Parameters
[in]portPort address to set 8-bit data
[in]valueValue to write to I/O port
Returns
None

Definition at line 11790 of file Nano100Series.h.

◆ outps

#define outps (   port,
  value 
)    *((volatile unsigned short *)(port)) = value

Set a 16-bit unsigned value to specified I/O port.

Parameters
[in]portPort address to set 16-bit data
[in]valueValue to write to I/O port
Returns
None
Note
The output port must be 16-bit aligned

Definition at line 11774 of file Nano100Series.h.

◆ outpw

#define outpw (   port,
  value 
)    *((volatile unsigned int *)(port)) = value

Set a 32-bit unsigned value to specified I/O port.

Parameters
[in]portPort address to set 32-bit data
[in]valueValue to write to I/O port
Returns
None
Note
The output port must be 32-bit aligned

Definition at line 11757 of file Nano100Series.h.

Typedef Documentation

◆ vu16

typedef volatile unsigned short vu16

Define 16-bit unsigned volatile data type.

Definition at line 11724 of file Nano100Series.h.

◆ vu32

typedef volatile unsigned long vu32

Define 32-bit unsigned volatile data type.

Definition at line 11725 of file Nano100Series.h.

◆ vu8

typedef volatile unsigned char vu8

Define 8-bit unsigned volatile data type.

Definition at line 11723 of file Nano100Series.h.