FreeBSD Manual Pages
LED(4) BSD 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_state(led_t *func, void *priv, char const *name, int state); 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 re- sulting 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 se- quence 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 <phk@FreeBSD.org>. This manual page was written by Sergey A. Osokin <osa@FreeBSD.org> and Poul-Henning Kamp <phk@FreeBSD.org>. BSD April 24, 2007 BSD
NAME | SYNOPSIS | DESCRIPTION | FILES | EXAMPLES | SEE ALSO | HISTORY | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=led&sektion=4&manpath=FreeBSD+8.2-RELEASE>