blob: b34bb31fffcd34a0b229d4ebc4f82d29a15a80ae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
.. highlight:: cpp
.. _arduino-pinmode:
pinMode()
=========
.. contents:: Contents
:local:
Library Documentation
---------------------
.. doxygenfunction:: pinMode
.. doxygenenum:: WiringPinMode
Discussion
----------
pinMode() is usually called within :ref:`arduino-setup` in order to
configure a pin for a certain usage (although it may be called
anywhere).
Example
-------
::
int ledPin = 13; // LED connected to digital pin 13
void setup()
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}
void loop()
{
digitalWrite(ledPin, HIGH); // sets the LED on
delay(1000); // waits for a second
digitalWrite(ledPin, LOW); // sets the LED off
delay(1000); // waits for a second
}
Arduino Compatibility
---------------------
The libmaple implementation of pinMode() supports OUTPUT and INPUT
modes with a meaning identical to that of the Arduino function.
INPUT_ANALOG and PWM modes were added because the Maple does not
distinguish between analog and digital pins the same way the Arduino
does. Unlike the Arduino, you **must call pinMode**\ () to set up a pin
for these purposes before a call to, e.g., :ref:`arduino-analogRead`.
In practice, this should only add a few lines of pinMode() calls to
your :ref:`arduino-setup` function.
OUTPUT_OPEN_DRAIN, INPUT_PULLUP, INPUT_PULLDOWN, and PWM_OPEN_DRAIN
modes represent functionality not currently available on Arduino
boards.
See also
--------
- :ref:`arduino-constants`
- :ref:`arduino-digitalwrite`
- :ref:`arduino-digitalread`
- Maple :ref:`GPIO <gpio>` reference page
|