1
0
mirror of https://github.com/taigrr/arduinolibs synced 2025-01-18 04:33:12 -08:00
arduinolibs/doc/mainpage.dox
2012-05-21 13:01:20 +10:00

79 lines
3.4 KiB
Plaintext

/*
* Copyright (C) 2012 Southern Storm Software, Pty Ltd.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
/**
\file mainpage.dox
\mainpage
Utility libraries for enhanced use of standard Arduino main boards
and shields.
\section main_FreeTronics Freetronics LCD Shield
\li FreetronicsLCD class to manage the extended features of the Freetronics
LCD shield.
\li Form and Field classes to build simple property sheet UI's on LCD displays.
\li \ref lcd_hello_world "Hello World" example for the Freetronics LCD shield.
\li \ref lcd_form "Form" example for LCD displays.
\section main_BlinkLED BlinkLED Utility Library
\li BlinkLED class that simplifies the process of blinking a LED connected
to a output pin.
\li ChaseLEDs class that simplifies the process of performing a LED chase
over several output pins.
\li \ref blink_blink "Blink" example of using BlinkLED.
\li \ref blink_cylon "Cylon" example of using ChaseLEDs to simulate
the Cylon eye effect from Battlestar Galactica.
\li \ref blink_startrek "StarTrek" example for lighting a starship
Enterprise model kit.
\section main_I2C I2C Utility Library
\li I2CMaster abstract class that provides an improved API for implementing an
I2C master. The following two classes inherit from I2CMaster:
\li SoftI2C class that implements the master side of the I2C protocol
in software on any arbitrary pair of pins for DATA and CLOCK.
This class supports both 7-bit and 10-bit I2C addresses.
\li WireI2C class that uses the Arduino Wire library to implement the
master side of the I2C protocol. This class only supports 7-bit addresses
and runs on predefined DATA and CLOCK pins (A4 and A5 on most boards,
D20 and D21 for Arduino Mega).
\section main_RTC Realtime Clock Library
\li RTC class that acts as a base for all realtime clock implementations,
including support for configuring alarms and storing clock settings.
The default implementation simulates the time and date based on the value of
<tt>millis()</tt>.
\li DS1307RTC class that talks to the DS1307 realtime clock chip via I2C.
\li \ref alarm_clock "Wind-Up Alarm Clock" example that uses the DS1307
realtime clock and the FreetronicsLCD library to implement an alarm clock
where the internal battery is charged by hand-cranking a dynamo.
\section main_other Other
\li Melody plays a melody on a digital output pin using <tt>tone()</tt>.
\li \ref power_save "Power saving utility functions"
*/