Embedded Port Pins Library - main file. More...
Go to the source code of this file.
Macros | |
#define | EPPL_NP (-255L) |
Non-Pin value. More... | |
#define | EPPL_PINCNT ( EPPL_port_PORTSIZE * EPPL_port_PORTCNT ) |
Maximum number of pins. More... | |
#define | EPPL_DEFPP(port, pin) ( (port)*EPPL_port_PORTSIZE + (pin) ) |
Macro for port pin definition. More... | |
#define | EPPL_PORTNR(px) (((px) % EPPL_PINCNT) / EPPL_port_PORTSIZE) |
Get port number from pin identifier. More... | |
#define | EPPL_PINNR(px) ((px)%EPPL_port_PORTSIZE) |
Get pin number from pin identifier. More... | |
#define | EPPL_SC(px, conf) ( ((px) < 0) ? (px) : ( (px) + ( (conf) * EPPL_PINCNT ) ) ) |
Set Configuration macro. More... | |
#define | EPPL_GC(px) ( ( (px) / EPPL_PINCNT) % (EPPL_port_CONFSIZE) ) |
Get Configuration macro. More... | |
#define | EPPL_SR(px, from, to) ( ((px) < 0) ? (px) : ( ((from) << (EPPL_configBits)) | (to) ) * (EPPL_PINCNT) + (px)) |
Set Reinit macro. More... | |
#define | EPPL_GRfrom(px) ( (((px) / EPPL_PINCNT) >> EPPL_configBits) % EPPL_avr8_CONFSIZE ) |
Get Reinit from. | |
#define | EPPL_GRto(px) EPPL_GC(px) |
Get Reinit to. | |
#define | EPPL_COUNTARGS(args...) xEPPL_COUNTARGS(args, EPPL_COUNTARGS_RSEQ) |
Macro for counting number of parameters. More... | |
#define | EPPL_ActivePinCountInSet(pins...) EPPL_GETSUBSET(EPPL_checkPinDefined, 0, EPPL_extractOne, +, pins) |
Get active pins count in set given. More... | |
#define | EPPL_PinCountInSet(pins...) EPPL_COUNTARGS(pins) |
Get pins count in set given, including inactive ones. More... | |
#define | EPPL_PROCESSEVERYPIN(macro, op, pins...) EPPL_LC(EPPL_PROCESSEVERYPIN, EPPL_COUNTARGS(pins))(macro, op, pins) |
Macro for processing every single listed pin. More... | |
#define | EPPL_PROCESSEVERYARG(macro, op, args...) EPPL_PROCESSEVERYPIN(macro, op, args) |
Macro for processing every single argument. More... | |
#define | EPPL_REPEATONEVERYPIN(macro, pins...) |
Macro for repeating code on listed pins. More... | |
#define | EPPL_REPEATONEVERYARG(macro, args...) |
Macro for repeating code on listed arguments. More... | |
#define | eppl_init(default, pinconfigs...) |
Macro for port initialization. More... | |
#define | eppl_reinitFromISR(pinconfigs...) |
Macro that changes port configuration form interrupt procedure. More... | |
#define | eppl_reinit(pinconfigs...) |
Macro that changes port configuration. More... | |
#define | eppl_mapIn(pins...) ( EPPL_REPEAT(EPPL_port_PORTCNT, EPPL_port_generateMapInFromOnePort, pins) (uint8_t)0 ) |
Map in function. More... | |
#define | eppl_mapOutFromISR(mode, value, pins...) do{ EPPL_REPEAT(EPPL_port_PORTCNT, EPPL_port_generateMapOutToOnePort, mode, value, pins) }while(0) |
Value output mapping from ISR. More... | |
#define | eppl_mapOut(mode, value, pins...) |
Value output mapping. More... | |
Typedefs | |
typedef signed long | eppl_pin_t |
Definition of type that can store pin information. More... | |
Embedded Port Pins Library - main file.
There should not be any target-dependent definitions.