2008/10/01 These Files are under construction. これ以下のファイルは1.4.3から1.6.5への書き換え最中です。
リンクが乱れていると思われます。ご了承下さい。
AVR Libc Home Page | ![]() |
AVR Libc Development Pages | |||
Main Page | User Manual | Library Reference | FAQ | Example Projects |
このドキュメントの最終バージョン(英語版オリジナル)はhttp://savannah.nongnu.org/projects/avr-libc/ から得ることができます。
AVR Libcパッケージは、Atmel AVR 8bitRISCマイクロコントローラ用の、標準Cライブラリのサブセットを提供します。さらに、このライブラリはほとんどのアプリケーションに必要な基本的なスタートアップコードも提供します。
このドキュメントには単なるライブラリが提供するルーチンやインタフェースの説明にとどまらない価値があります。我々は、このドキュメントが新しいAVR開発者に、これらのフリーの開発ツール( binutils, gcc avr-libc等)を速やかに習得するのに役立つ充分な情報を与えてくれることを望んでいます。
もしもあなたが行き詰まった問題で、本ドキュメントがお役に立てなかった場合は、avr-gcc maling listに投稿してください。AVR-LibC開発者に加えて、多くのavr-binutils/gccの開発者はavr-libcの開発者リストにも名を連ねていますので、あなたは問題を解決できると思います。 http://lists.nongnu.org/mailman/listinfo/avr-gcc-listでこのMLに参加申請することもできます。投稿をする前に、このドキュメントの Frequently Asked Questions の章をお読みください。
大まかには、ライブラリ実装で最善のスタンダード化を確立することが目標になっています。スタンダードとは、一般的にはANSI X3.159-1989 とISO/IEC 9899:1990 ("ANSI-C") スタンダードで解説されているCライブラリを指します。ISO/IEC 9899:1999 ("C99")の一部や、 IEEE Std 1003.1-1988 ("POSIX.1")などのその他のスタンダードからもいくらか取り入れています。その他の拡張はもっぱらAVR独特なものです(プログラムスペース文字列インタフェースなど)
これらのライブラリ関数は、リエントラント可能を保証されていません。ローカルな状態を保存する関数はリエントラントではないのと同様に、EEPROMアクセスルーチンなどIOレジスタを扱う関数などはリエントラントではありません。これらの関数がメインルーチンと割り込みルーチン両方で使われた場合、両者の挙動は予測できないものになります。
以下は現在このライブラリでサポートされているAVRデバイスのリストです。いくつかの最新デバイスのサポートは実際にはコンパイラ・アセンブラがそれらデバイスをサポートできるかどうかにかかっていることに注意してください。(※ライブラリだけ対応できてもだめ)
avr-libc は以下のライセンス条件に合致しているなら、自由に使用・再配布することができます。
avr-libc can be freely used and redistributed,
provided the following license conditions
are met.
Portions of avr-libc are Copyright (c) 1999-2007 Keith Gudger, Bjoern Haase, Steinar Haugen, Peter Jansen, Reinhard Jessich, Magnus Johansson, Artur Lipowski, Marek Michalkiewicz, Colin O'Flynn, Bob Paddock, Reiner Patommel, Michael Rickman, Theodore A. Roth, Juergen Schilling, Philip Soeberg, Anatoly Sokolov, Nils Kristian Strom, Michael Stumpf, Stefan Swanepoel, Eric B. Weddington, Joerg Wunsch, Dmitry Xmelkov, The Regents of the University of California. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.