| |
 |
 |
|
|
|
|
|
|
led
LED(4) FreeBSD Kernel Interfaces Manual LED(4)
NAME
led -- API for manipulating LED's, lamps and other annunciators
SYNOPSIS
#include <dev/led/led.h>
typedef void led_t(void *priv, int onoff);
struct cdev *
led_create(led_t *func, void *priv, char const *name);
void
led_destroy(struct cdev *);
DESCRIPTION
The led driver provides generic support for handling LEDs, lamps and
other annunciators.
The hardware driver must supply a function to turn the annunciator on and
off and the device name of the annunciator relative to /dev/led/. The
priv argument is passed back to this on/off function and can be used how-
ever the hardware driver sees fit.
The lamp can be controlled by opening and writing ASCII strings to the
/dev/led/bla device.
In the following, we will use this special notation to indicate the
resulting output of the annunciator:
* The annunciator is on for 1/10th second.
_ The annunciator is off for 1/10th second.
State can be set directly, and since the change happens immediately, it
is possible to flash the annunciator with very short periods and synchro-
nize it with program events. It should be noted that there is a non-
trivial overhead, so this may not be usable for benchmarking or measuring
short intervals.
0 Turn the annunciator off immediately.
1 Turn the annunciator on immediately.
Flashing can be set with a given period. The pattern continues end-
lessly.
f _*
f1 _*
f2 __**
f3 ___***
...
f9 _________*********
Three high-level commands are available:
d%d Numbers. Each digit is blinked out at 1/10th second, zero
as ten pulses. Between digits a one second pause and after
the last digit a two second pause after which the sequence
is repeated.
s%s String. This gives full control over the annunciator.
Letters `A' ... `J' turn the annunciator on for from 1/10th
to one full second. Letters `a' ... `j' turn the annuncia-
tor off for 1/10th to one full second. Letters `u' and `U'
turn the annunciator off and on respectively when the next
UTC second starts. Unless terminated with a `.', the
sequence is immediately repeated.
m%s Morse.
`.' becomes `_*'
`-' becomes `_***'
` ' becomes `__'
`\n' becomes `____'
The sequence is repeated after a one second pause.
FILES
/dev/led/*
EXAMPLES
A `d12' flashes the lamp
*__________*_*______________________________
A `sAaAbBa' flashes
_*_**__*
/usr/games/morse -l "Soekris rocks" > /dev/led/error
SEE ALSO
morse(6)
HISTORY
The led driver first appeared in FreeBSD 5.2.
AUTHORS
This software was written by Poul-Henning Kamp <phkATFreeBSD.org>.
This manual page was written by Sergey A. Osokin <osaATFreeBSD.org> and
Poul-Henning Kamp <phkATFreeBSD.org>.
FreeBSD 6.2 May 29, 2005 FreeBSD 6.2
|
|
Copyright ©2006 TheBestISP.com |
|
|
|
 |
|