|
ChibiOS/HAL
7.0.3
|
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.