ChibiOS 21.11.4
hal_pal_lld.h File Reference

PLATFORM PAL subsystem low level driver header. More...

Go to the source code of this file.

Data Structures

struct  PALConfig
 Generic I/O ports static initializer. More...

Macros

#define PAL_NEW_INIT
#define IOPORT1   0
 First I/O port identifier.
#define pal_lld_init()
 Low level PAL subsystem initialization.
#define pal_lld_readport(port)
 Reads the physical I/O port states.
#define pal_lld_readlatch(port)
 Reads the output latch.
#define pal_lld_writeport(port, bits)
 Writes a bits mask on a I/O port.
#define pal_lld_setport(port, bits)
 Sets a bits mask on a I/O port.
#define pal_lld_clearport(port, bits)
 Clears a bits mask on a I/O port.
#define pal_lld_toggleport(port, bits)
 Toggles a bits mask on a I/O port.
#define pal_lld_readgroup(port, mask, offset)
 Reads a group of bits.
#define pal_lld_writegroup(port, mask, offset, bits)
 Writes a group of bits.
#define pal_lld_setgroupmode(port, mask, offset, mode)
 Pads group mode setup.
#define pal_lld_readpad(port, pad)
 Reads a logical state from an I/O pad.
#define pal_lld_writepad(port, pad, bit)
 Writes a logical state on an output pad.
#define pal_lld_setpad(port, pad)
 Sets a pad logical state to PAL_HIGH.
#define pal_lld_clearpad(port, pad)
 Clears a pad logical state to PAL_LOW.
#define pal_lld_togglepad(port, pad)
 Toggles a pad logical state.
#define pal_lld_setpadmode(port, pad, mode)
 Pad mode setup.
#define pal_lld_get_pad_event(port, pad)
 Returns a PAL event structure associated to a pad.
#define pal_lld_get_line_event(line)
 Returns a PAL event structure associated to a line.
Port related definitions
#define PAL_IOPORTS_WIDTH   16U
 Width, in bits, of an I/O port.
#define PAL_WHOLE_PORT   ((ioportmask_t)0xFFFFU)
 Whole port mask.
Line handling macros
#define PAL_LINE(port, pad)
 Forms a line identifier.
#define PAL_PORT(line)
 Decodes a port identifier from a line identifier.
#define PAL_PAD(line)
 Decodes a pad identifier from a line identifier.
#define PAL_NOLINE   0U
 Value identifying an invalid line.

Typedefs

typedef uint32_t ioportmask_t
 Digital I/O port sized unsigned type.
typedef uint32_t iomode_t
 Digital I/O modes.
typedef uint32_t ioline_t
 Type of an I/O line.
typedef uint32_t ioportid_t
 Port Identifier.
typedef uint32_t iopadid_t
 Type of an pad identifier.

Functions

void _pal_lld_init (void)
 STM32 I/O ports configuration.
void _pal_lld_setgroupmode (ioportid_t port, ioportmask_t mask, iomode_t mode)
 Pads mode setup.

Detailed Description

PLATFORM PAL subsystem low level driver header.

Definition in file hal_pal_lld.h.