AVR Libc Home Page | AVR Libc Development Pages | ||||
Main Page | User Manual | Library Reference | FAQ | Alphabetical Index | Example Projects |
最新版のドキュメント(英文)は、いつもhttp://savannah.nongnu.org/projects/avr-libc/から読めます。(訳注:この日本語版は、http://cega.jp/avr-libc-jp/から読めます。)
AVR Libcパッケージは、Atmel AVR 8-bit RISC microcontroller向けの標準 Cライブラリ のサブセットを提供します。さらに、ライブラリは、多くのアプリケーションで必要となる基本的なスタートアップコードを提供します。
このドキュメントには、ライブラリにより提供されるインターフェースやルーチンを単純に記載する以上の豊富な情報があります。私たちは、このドキュメントが新しいAVR開発者に、自由に入手できる開発ツール(binutilsやgcc avr-libc他)を使用して、迅速に理解するために十分な情報を提供できることを望んでいます。
この文章に書かれていない問題で引っかかることに気づいたなら、avr-gccメーリングリストにメッセージを送りたくなるかもしれません。このメーリングリストには、avr-libcの開発者に加えてAVR binutilsやgccポートの多くの開発者も購読しているので、だいたいの問題を解決してもらうことができます。http://lists.nongnu.org/mailman/listinfo/avr-gcc-listからメーリングリストに参加できます。メーリングリストへ投稿する前に、この文章のよくある質問と回答の章を読んでください。
全体的に、このライブラリを実装する中で、標準規格にできるだけこだわることを目標としています。一般に、ANSI X3.159-1989やISO/IEC 9899:1990("ANSI-C")標準ならびに、これらの後継であるISO/IEC9899:1999("C99")の要素に記述されているCライブラリを参照しています。さらに、AVR特有(プログラムスペース文字列インターフェースのような)の拡張については、IEEE Std 1003.1-1988("POSIX.1")のような他の標準に影響を受けています。
特に明記しない限り、このライブラリ関数は、再入可能であることが保証されていません。特に、ローカル状態を格納する多くの関数(EEPROMアクセスルーチンのようなI/Oレジスタの操作をする関数)は、再入不可であることが知られています。これらの関数が通常と割込の両方で使われると、未定義な動作をします。より詳細な議論についてはFAQを見てください。
以下は、ライブラリによって現在サポートされるAVRデバイスのリストです。いくつかの新しいデバイスを実際に対応するのは、ライブラリをコンパイルするときに、これらのデバイスをサポートするコンパイラとアセンブラの能力に依存することに注意してください。
avr-libcは、以下の許可条件が満たされるならば、自由に使用でき、再配布することができます。(訳注:ライセンスの日本語訳は、Open Source Group JapanのBSDライセンスを参考にしてください。翻訳版も以下の許可条件に基づき、自由に使用でき、変更・再配布することができます。)
Portions of avr-libc are Copyright (c) 1999-2010 Werner Boellmann, Dean Camera, Pieter Conradie, Brian Dean, Keith Gudger, Wouter van Gulik, Bjoern Haase, Steinar Haugen, Peter Jansen, Reinhard Jessich, Magnus Johansson, Harald Kipp, Carlos Lamas, Cliff Lawson, Artur Lipowski, Marek Michalkiewicz, Todd C. Miller, Rich Neswold, Colin O'Flynn, Bob Paddock, Andrey Pashchenko, Reiner Patommel, Florin-Viorel Petrov, Alexander Popov, Michael Rickman, Theodore A. Roth, Juergen Schilling, Philip Soeberg, Anatoly Sokolov, Nils Kristian Strom, Michael Stumpf, Stefan Swanepoel, Helmut Wallner, Eric B. Weddington, Joerg Wunsch, Dmitry Xmelkov, Atmel Corporation, egnite Software GmbH, 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.