Artifact 4d971f894b31e7f49a50ff75bf0891958e58e434:
Wiki page
[
piio] by
schelte
2018-03-31 07:59:20.
0000: 44 20 32 30 31 38 2d 30 33 2d 33 31 54 30 37 3a D 2018-03-31T07:
0010: 35 39 3a 32 30 2e 38 32 35 0a 4c 20 70 69 69 6f 59:20.825.L piio
0020: 0a 50 20 63 62 39 39 65 61 66 32 66 62 65 63 36 .P cb99eaf2fbec6
0030: 35 30 33 65 33 66 62 34 36 63 37 64 33 63 61 31 503e3fb46c7d3ca1
0040: 33 63 32 33 34 61 34 61 36 31 66 0a 55 20 73 63 3c234a4a61f.U sc
0050: 68 65 6c 74 65 0a 57 20 32 31 36 35 0a 3c 68 31 helte.W 2165.<h1
0060: 3e 54 68 65 20 70 69 69 6f 20 63 6f 6d 6d 61 6e >The piio comman
0070: 64 3c 2f 68 31 3e 0d 0a 0d 0a 3c 68 72 3e 0d 0a d</h1>....<hr>..
0080: 0d 0a 3c 68 32 3e 53 79 6e 6f 70 73 69 73 3c 2f ..<h2>Synopsis</
0090: 68 32 3e 0d 0a 0d 0a 3c 62 3e 70 69 69 6f 3c 2f h2>....<b>piio</
00a0: 62 3e 20 3c 69 3e 73 75 62 63 6f 6d 6d 61 6e 64 b> <i>subcommand
00b0: 3c 2f 69 3e 20 3f 3c 69 3e 61 72 67 20 2e 2e 2e </i> ?<i>arg ...
00c0: 3c 2f 69 3e 3f 0d 0a 0d 0a 3c 68 72 3e 0d 0a 0d </i>?....<hr>...
00d0: 0a 3c 68 32 3e 44 65 73 63 72 69 70 74 69 6f 6e .<h2>Description
00e0: 3c 2f 68 32 3e 0d 0a 0d 0a 54 68 65 20 3c 62 3e </h2>....The <b>
00f0: 70 69 69 6f 3c 2f 62 3e 20 63 6f 6d 6d 61 6e 64 piio</b> command
0100: 20 6c 65 74 73 20 79 6f 75 20 6d 61 6e 69 70 75 lets you manipu
0110: 6c 61 74 65 20 74 68 65 20 52 61 73 70 62 65 72 late the Raspber
0120: 72 79 20 50 69 20 67 70 69 6f 20 70 69 6e 73 2e ry Pi gpio pins.
0130: 20 54 68 65 20 6c 65 67 61 6c 20 76 61 6c 75 65 The legal value
0140: 73 20 6f 66 20 3c 69 3e 73 75 62 63 6f 6d 6d 61 s of <i>subcomma
0150: 6e 64 3c 2f 69 3e 20 61 72 65 20 6c 69 73 74 65 nd</i> are liste
0160: 64 20 62 65 6c 6f 77 2e 20 4e 6f 74 65 20 74 68 d below. Note th
0170: 61 74 20 79 6f 75 20 63 61 6e 20 61 62 62 72 65 at you can abbre
0180: 76 69 61 74 65 20 74 68 65 20 3c 69 3e 73 75 62 viate the <i>sub
0190: 63 6f 6d 6d 61 6e 64 3c 2f 69 3e 73 2e 0d 0a 0d command</i>s....
01a0: 0a 3c 64 6c 3e 0d 0a 3c 64 74 3e 3c 62 3e 70 69 .<dl>..<dt><b>pi
01b0: 69 6f 20 65 76 65 6e 74 3c 2f 62 3e 20 3c 69 3e io event</b> <i>
01c0: 67 70 69 6f 70 69 6e 3c 2f 69 3e 20 3c 69 3e 65 gpiopin</i> <i>e
01d0: 64 67 65 3c 69 3e 20 3f 3c 69 3e 73 63 72 69 70 dge<i> ?<i>scrip
01e0: 74 3c 69 3e 3f 0d 0a 3c 64 64 3e 41 72 72 61 6e t<i>?..<dd>Arran
01f0: 67 65 20 66 6f 72 20 74 68 65 20 54 63 6c 20 73 ge for the Tcl s
0200: 63 72 69 70 74 20 3c 69 3e 73 63 72 69 70 74 3c cript <i>script<
0210: 2f 69 3e 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 /i> to be called
0220: 20 77 68 65 6e 65 76 65 72 20 74 68 65 20 6c 65 whenever the le
0230: 76 65 6c 20 63 68 61 6e 67 65 20 73 70 65 63 69 vel change speci
0240: 66 69 65 64 20 62 79 20 3c 69 3e 65 64 67 65 3c fied by <i>edge<
0250: 2f 69 3e 20 28 3c 62 3e 72 69 73 69 6e 67 3c 2f /i> (<b>rising</
0260: 62 3e 20 6f 72 20 3c 62 3e 66 61 6c 6c 69 6e 67 b> or <b>falling
0270: 3c 2f 62 3e 29 20 69 73 20 64 65 74 65 63 74 65 </b>) is detecte
0280: 64 20 6f 6e 20 74 68 65 20 69 6e 70 75 74 20 70 d on the input p
0290: 6f 72 74 2e 20 49 66 20 3c 69 3e 73 63 72 69 70 ort. If <i>scrip
02a0: 74 3c 2f 69 3e 20 69 73 20 74 68 65 20 65 6d 70 t</i> is the emp
02b0: 74 79 20 73 74 72 69 6e 67 2c 20 74 68 65 20 63 ty string, the c
02c0: 75 72 72 65 6e 74 20 20 68 61 6e 64 6c 65 72 20 urrent handler
02d0: 69 73 20 64 65 6c 65 74 65 64 2e 20 49 66 20 3c is deleted. If <
02e0: 69 3e 73 63 72 69 70 74 3c 2f 69 3e 20 69 73 20 i>script</i> is
02f0: 6f 6d 69 74 74 65 64 2c 20 74 68 65 20 63 75 72 omitted, the cur
0300: 72 65 6e 74 6c 79 20 69 6e 73 74 61 6c 6c 65 64 rently installed
0310: 20 73 63 72 69 70 74 20 69 73 20 72 65 74 75 72 script is retur
0320: 6e 65 64 20 28 6f 72 20 61 6e 20 65 6d 70 74 79 ned (or an empty
0330: 20 73 74 72 69 6e 67 20 69 66 20 6e 6f 20 73 75 string if no su
0340: 63 68 20 68 61 6e 64 6c 65 72 20 69 73 20 69 6e ch handler is in
0350: 73 74 61 6c 6c 65 64 29 2e 0d 0a 3c 64 74 3e 3c stalled)...<dt><
0360: 62 3e 70 69 69 6f 20 66 75 6e 63 74 69 6f 6e 3c b>piio function<
0370: 2f 62 3e 20 3f 3c 69 3e 67 70 69 6f 70 69 6e 3c /b> ?<i>gpiopin<
0380: 2f 69 3e 3f 20 3f 3c 69 3e 66 75 6e 63 74 69 6f /i>? ?<i>functio
0390: 6e 3c 2f 69 3e 3f 0d 0a 3c 64 64 3e 4f 62 74 61 n</i>?..<dd>Obta
03a0: 69 6e 20 6f 72 20 63 6f 6e 66 69 67 75 72 65 20 in or configure
03b0: 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 6f 66 20 the function of
03c0: 61 20 3c 69 3e 67 70 69 6f 70 69 6e 3c 2f 69 3e a <i>gpiopin</i>
03d0: 2e 20 57 68 65 6e 20 62 6f 74 68 20 3c 69 3e 67 . When both <i>g
03e0: 70 69 6f 70 69 6e 3c 2f 69 3e 20 61 6e 64 20 3c piopin</i> and <
03f0: 69 3e 66 75 6e 63 74 69 6f 6e 3c 2f 69 3e 20 61 i>function</i> a
0400: 72 65 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 re specified, th
0410: 65 20 66 75 6e 63 74 69 6f 6e 20 6f 66 20 74 68 e function of th
0420: 65 20 67 70 69 6f 20 70 69 6e 20 69 73 20 63 6f e gpio pin is co
0430: 6e 66 69 67 75 72 65 64 2e 20 57 68 65 6e 20 6f nfigured. When o
0440: 6e 6c 79 20 61 20 3c 69 3e 67 70 69 6f 70 69 6e nly a <i>gpiopin
0450: 3c 2f 69 3e 20 69 73 20 73 70 65 63 69 66 69 65 </i> is specifie
0460: 64 2c 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 d, the current f
0470: 75 6e 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 70 unction of the p
0480: 69 6e 20 69 73 20 72 65 74 75 72 6e 65 64 2e 20 in is returned.
0490: 57 69 74 68 6f 75 74 20 61 72 67 75 6d 65 6e 74 Without argument
04a0: 73 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 s a list of all
04b0: 70 69 6e 20 66 75 6e 63 74 69 6f 6e 73 20 69 73 pin functions is
04c0: 20 72 65 74 75 72 6e 65 64 2e 20 54 68 65 20 3c returned. The <
04d0: 69 3e 67 70 69 6f 70 69 6e 3c 2f 69 3e 20 6d 75 i>gpiopin</i> mu
04e0: 73 74 20 62 65 20 73 70 65 63 69 66 69 65 64 20 st be specified
04f0: 61 73 20 61 20 6e 75 6d 62 65 72 20 62 65 74 77 as a number betw
0500: 65 65 6e 20 30 20 61 6e 64 20 35 33 2e 20 56 61 een 0 and 53. Va
0510: 6c 69 64 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 lid functions ar
0520: 65 3a 20 3c 62 3e 69 6e 70 75 74 3c 2f 62 3e 2c e: <b>input</b>,
0530: 20 3c 62 3e 6f 75 74 70 75 74 3c 2f 62 3e 2c 20 <b>output</b>,
0540: 3c 62 3e 61 6c 74 66 75 6e 63 30 3c 2f 62 3e 2c <b>altfunc0</b>,
0550: 20 3c 62 3e 61 6c 74 66 75 6e 63 31 3c 2f 62 3e <b>altfunc1</b>
0560: 2c 20 3c 62 3e 61 6c 74 66 75 6e 63 32 3c 2f 62 , <b>altfunc2</b
0570: 3e 2c 20 3c 62 3e 61 6c 74 66 75 6e 63 33 3c 2f >, <b>altfunc3</
0580: 62 3e 2c 20 3c 62 3e 61 6c 74 66 75 6e 63 34 3c b>, <b>altfunc4<
0590: 2f 62 3e 2c 20 6f 72 20 3c 62 3e 61 6c 74 66 75 /b>, or <b>altfu
05a0: 6e 63 35 3c 2f 62 3e 2e 20 43 68 65 63 6b 20 74 nc5</b>. Check t
05b0: 68 65 20 42 43 4d 32 38 33 35 20 64 6f 63 75 6d he BCM2835 docum
05c0: 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 entation for the
05d0: 20 61 76 61 69 6c 61 62 6c 65 20 61 6c 74 65 72 available alter
05e0: 6e 61 74 65 20 66 75 6e 63 74 69 6f 6e 73 20 66 nate functions f
05f0: 6f 72 20 65 61 63 68 20 70 69 6e 2e 0d 0a 3c 64 or each pin...<d
0600: 74 3e 3c 62 3e 70 69 69 6f 20 69 6e 70 75 74 3c t><b>piio input<
0610: 2f 62 3e 20 3c 69 3e 67 70 69 6f 70 69 6e 3c 2f /b> <i>gpiopin</
0620: 69 3e 0d 0a 3c 64 64 3e 52 65 61 64 73 20 74 68 i>..<dd>Reads th
0630: 65 20 63 75 72 72 65 6e 74 20 73 74 61 74 65 20 e current state
0640: 6f 66 20 74 68 65 20 67 70 69 6f 20 70 69 6e 2e of the gpio pin.
0650: 20 52 65 74 75 72 6e 73 20 30 20 66 6f 72 20 6c Returns 0 for l
0660: 6f 77 20 61 6e 64 20 31 20 66 6f 72 20 61 20 68 ow and 1 for a h
0670: 69 67 68 20 6c 6f 67 69 63 61 6c 20 6c 65 76 65 igh logical leve
0680: 6c 2e 0d 0a 3c 64 74 3e 3c 62 3e 70 69 69 6f 20 l...<dt><b>piio
0690: 6f 75 74 70 75 74 3c 2f 62 3e 20 3c 69 3e 67 70 output</b> <i>gp
06a0: 69 6f 70 69 6e 3c 2f 69 3e 20 3c 69 3e 73 74 61 iopin</i> <i>sta
06b0: 74 65 3c 2f 69 3e 0d 0a 3c 64 64 3e 53 65 74 20 te</i>..<dd>Set
06c0: 74 68 65 20 73 74 61 74 65 20 6f 66 20 61 20 67 the state of a g
06d0: 70 69 6f 20 6f 75 74 70 75 74 20 70 69 6e 2e 20 pio output pin.
06e0: 54 68 65 20 73 74 61 74 65 20 6d 75 73 74 20 62 The state must b
06f0: 65 20 73 70 65 63 69 66 69 65 64 20 61 73 20 61 e specified as a
0700: 6e 20 69 6e 74 65 67 65 72 2c 20 77 68 65 72 65 n integer, where
0710: 20 30 20 73 65 74 73 20 74 68 65 20 6f 75 74 70 0 sets the outp
0720: 75 74 20 6c 6f 77 20 61 6e 64 20 61 6e 79 20 6f ut low and any o
0730: 74 68 65 72 20 76 61 6c 75 65 20 73 65 74 73 20 ther value sets
0740: 69 74 20 68 69 67 68 2e 0d 0a 3c 64 74 3e 3c 62 it high...<dt><b
0750: 3e 70 69 69 6f 20 70 75 6c 6c 3c 2f 62 3e 20 3c >piio pull</b> <
0760: 69 3e 64 69 72 65 63 74 69 6f 6e 3c 2f 69 3e 20 i>direction</i>
0770: 3c 69 3e 67 70 69 6f 70 69 6e 3c 2f 69 3e 20 3f <i>gpiopin</i> ?
0780: 3c 69 3e 67 70 69 6f 70 69 6e 3c 2f 69 3e 20 3c <i>gpiopin</i> <
0790: 69 3e 2e 2e 2e 3c 2f 69 3e 3f 0d 0a 3c 64 64 3e i>...</i>?..<dd>
07a0: 43 6f 6e 74 72 6f 6c 20 77 65 61 6b 20 70 75 6c Control weak pul
07b0: 6c 2d 75 70 20 6f 72 20 2d 64 6f 77 6e 20 66 6f l-up or -down fo
07c0: 72 20 61 6e 20 69 6e 70 75 74 20 70 6f 72 74 2e r an input port.
07d0: 20 56 61 6c 69 64 20 76 61 6c 75 65 73 20 66 6f Valid values fo
07e0: 72 20 3c 69 3e 64 69 72 65 63 74 69 6f 6e 3c 2f r <i>direction</
07f0: 69 3e 20 61 72 65 3a 20 75 70 2c 20 64 6f 77 6e i> are: up, down
0800: 2c 20 6e 6f 6e 65 2e 0d 0a 3c 64 74 3e 3c 62 3e , none...<dt><b>
0810: 70 69 69 6f 20 75 73 6c 65 65 70 3c 2f 62 3e 20 piio usleep</b>
0820: 3c 69 3e 75 73 65 63 3c 2f 69 3e 0d 0a 3c 64 64 <i>usec</i>..<dd
0830: 3e 57 68 65 6e 20 64 65 61 6c 69 6e 67 20 77 69 >When dealing wi
0840: 74 68 20 68 61 72 64 77 61 72 65 20 69 74 20 6d th hardware it m
0850: 61 79 20 62 65 20 75 73 65 66 75 6c 20 74 6f 20 ay be useful to
0860: 62 65 20 61 62 6c 65 20 74 6f 20 64 65 6c 61 79 be able to delay
0870: 20 73 68 6f 72 74 20 61 6d 6f 75 6e 74 73 20 6f short amounts o
0880: 66 20 74 69 6d 65 2e 20 54 68 69 73 20 63 6f 6d f time. This com
0890: 6d 61 6e 64 20 77 69 6c 6c 20 62 6c 6f 63 6b 20 mand will block
08a0: 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 65 for the specifie
08b0: 64 20 6e 75 6d 62 65 72 20 6f 66 20 6d 69 63 72 d number of micr
08c0: 6f 73 65 63 6f 6e 64 73 2e 0d 0a 3c 2f 64 6c 3e oseconds...</dl>
08d0: 0d 0a 0a 5a 20 61 36 31 32 35 37 37 34 66 33 61 ...Z a6125774f3a
08e0: 34 34 65 30 39 65 62 64 61 36 34 64 36 63 36 34 44e09ebda64d6c64
08f0: 33 32 36 30 31 0a 32601.