DIO
The DIO (General Purpose IO) can be input or output as desired under the control of the firmware.
Also commonly referred to as GPIO, but referred to as DIO throughout this manual.
The following can be done with general purpose IO:
Digital input (H or L level readout)
Pull-up (50kΩ, typ) can be set.
Digital output (H or L level output)
The maximum value of the supply or suction current (3 mA at 3 V typ).
Interrupt (rising or falling)
The rise and fall cannot be detected simultaneously.
It is also available in sleep mode.
About port numbers
There are 20 DIOs, numbered 0 to 19. These are called in order DIO0 ... DIO19. The following APIs allow you to specify the DIO number directly.
About negative logic
For TWELITE wireless microcontrollers, the port state at power-on reset is at the High (Vcc) level, so in principle TWELITE NET sets the High (Vcc) level to 0 and the Lo (GND) level to 1.
State at start-up
On power-up, all ports are initialised in the following state
Input
Pull-up enabled
Input
To change a port to an input, call vPortAsInput()
.
To read the status of a port, call bPortRead()
.
Output
To change the port to an output, call vPortAsOutput(c)
. Also, to set the value of a port, call vPortSetLo()
, vPortSetHi()
, or vPortSet_TrueAsLo()
.
t is recommended to set the output setpoint of the port before setting the output. This is because when observing the voltage of the port from the outside, it may behave, for example, to drop to GND for a moment and then return to the Vcc level.
Pull-up
You can stop the pull-up by calling vPortDisablePullup()
.
Stopping pull-ups saves power in the following cases
External is Lo level at input port
Setting the Lo level on the output port
However, on ports where pull-ups have been stopped, care should be taken to use
Nothing connected to the input port (or equivalent)
Extra current consumption may occur
Stop pull-ups on ports that do not require configuration
Extra current consumption may occur
When the input port is used as an interrupt wakeup pin
An external pull-up is mandatory when connecting buttons etc.
最終更新