| 
    ChibiOS
    19.1.4
    
   | 
 
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 | IOPORT1 0 | 
| First I/O port identifier.  More... | |
| #define | pal_lld_init() _pal_lld_init() | 
| Low level PAL subsystem initialization.  More... | |
| #define | pal_lld_readport(port) 0U | 
| Reads the physical I/O port states.  More... | |
| #define | pal_lld_readlatch(port) 0U | 
| Reads the output latch.  More... | |
| #define | pal_lld_writeport(port, bits) | 
| Writes a bits mask on a I/O port.  More... | |
| #define | pal_lld_setport(port, bits) | 
| Sets a bits mask on a I/O port.  More... | |
| #define | pal_lld_clearport(port, bits) | 
| Clears a bits mask on a I/O port.  More... | |
| #define | pal_lld_toggleport(port, bits) | 
| Toggles a bits mask on a I/O port.  More... | |
| #define | pal_lld_readgroup(port, mask, offset) 0U | 
| Reads a group of bits.  More... | |
| #define | pal_lld_writegroup(port, mask, offset, bits) | 
| Writes a group of bits.  More... | |
| #define | pal_lld_setgroupmode(port, mask, offset, mode) _pal_lld_setgroupmode(port, mask << offset, mode) | 
| Pads group mode setup.  More... | |
| #define | pal_lld_readpad(port, pad) PAL_LOW | 
| Reads a logical state from an I/O pad.  More... | |
| #define | pal_lld_writepad(port, pad, bit) | 
| Writes a logical state on an output pad.  More... | |
| #define | pal_lld_setpad(port, pad) | 
Sets a pad logical state to PAL_HIGH.  More... | |
| #define | pal_lld_clearpad(port, pad) | 
Clears a pad logical state to PAL_LOW.  More... | |
| #define | pal_lld_togglepad(port, pad) | 
| Toggles a pad logical state.  More... | |
| #define | pal_lld_setpadmode(port, pad, mode) | 
| Pad mode setup.  More... | |
| #define | pal_lld_get_pad_event(port, pad) &_pal_events[0]; (void)(port); (void)pad | 
| Returns a PAL event structure associated to a pad.  More... | |
| #define | pal_lld_get_line_event(line) &_pal_events[0]; (void)line | 
| Returns a PAL event structure associated to a line.  More... | |
Port related definitions  | |
| #define | PAL_IOPORTS_WIDTH 16U | 
| Width, in bits, of an I/O port.  More... | |
| #define | PAL_WHOLE_PORT ((ioportmask_t)0xFFFFU) | 
| Whole port mask.  More... | |
Line handling macros  | |
| #define | PAL_LINE(port, pad) ((ioline_t)((uint32_t)(port)) | ((uint32_t)(pad))) | 
| Forms a line identifier.  More... | |
| #define | PAL_PORT(line) ((stm32_gpio_t *)(((uint32_t)(line)) & 0xFFFFFFF0U)) | 
| Decodes a port identifier from a line identifier.  More... | |
| #define | PAL_PAD(line) ((uint32_t)((uint32_t)(line) & 0x0000000FU)) | 
| Decodes a pad identifier from a line identifier.  More... | |
| #define | PAL_NOLINE 0U | 
| Value identifying an invalid line.  More... | |
Typedefs | |
| typedef uint32_t | ioportmask_t | 
| Digital I/O port sized unsigned type.  More... | |
| typedef uint32_t | iomode_t | 
| Digital I/O modes.  More... | |
| typedef uint32_t | ioline_t | 
| Type of an I/O line.  More... | |
| typedef uint32_t | ioportid_t | 
| Port Identifier.  More... | |
| typedef uint32_t | iopadid_t | 
| Type of an pad identifier.  More... | |
Functions | |
| void | _pal_lld_init (void) | 
| STM32 I/O ports configuration.  More... | |
| void | _pal_lld_setgroupmode (ioportid_t port, ioportmask_t mask, iomode_t mode) | 
| Pads mode setup.  More... | |
PLATFORM PAL subsystem low level driver header.
Definition in file hal_pal_lld.h.