You are viewing an older revision! See the latest version
PortInOut
The PortInOut interface is used to read and write an underlying GPIO port as one value. This is much faster than BusInOut as you can write a port in one go, but much less flexible as you are constrained by the port and bit layout of the underlying GPIO ports.
A mask can be supplied so only certain bits of a port are used, allowing other bits to be used for other interfaces.
Hello World!¶
// Toggle all four LEDs #include "mbed.h" // LED1 = P1.18 LED2 = P1.20 LED3 = P1.21 LED4 = P1.23 #define LED_MASK 0x00B40000 PortInOut ledport(Port1, LED_MASK); int main() { int v = ledport; ledport.output(); while(1) { ledport = LED_MASK; wait(1); ledport = 0; wait(1); } }
API¶
Import library
Public Member Functions |
|
PortInOut (PortName port, int mask=0xFFFFFFFF) | |
Create an
PortInOut
, connected to the specified port.
|
|
void | write (int value) |
Write the value to the output port.
|
|
int | read () |
Read the value currently output on the port.
|
|
void | output () |
Set as an output.
|
|
void | input () |
Set as an input.
|
|
void | mode (PinMode mode) |
Set the input pin mode.
|
|
PortInOut & | operator= (int value) |
A shorthand for
write()
|
|
operator int () | |
A shorthand for
read()
|