avr-libc
2.0.0
Standard C library for AVR-GCC
|
AVR Libc Home Page |
AVR Libc Development Pages |
||||
Main Page |
User Manual |
Library Reference |
FAQ |
Example Projects |
最新版のドキュメント(英文)は、http://savannah.nongnu.org/projects/avr-libc/でお読みいただけます。(訳注:日本語版は、http://cega.jp/avr-libc-jp/でお読みいただけます。)
AVR Libcパッケージは、 Atmel AVR 8-bit RISC microcontrollers向けに標準 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ライブラリを参考にしています。IEEE Std 1003.1-1988("POSIX.1")などの標準規格に影響された追加や、AVR特有(プログラムスペース文字列インターフェースなど)の拡張があります。
特に明記していない限り、このライブラリ関数は、再入可能であることが保証されていません。特に、ローカル状態を格納する多くの関数(EEPROMアクセスルーチンのようなI/Oレジスタを操作する関数)は、再入不可であることが知られています。これらの関数が通常時と割込時の両方で使われると、未定義な動作をします。より詳細についてはFAQを参照ください。
つぎが、ライブラリにより現在サポートされるAVRデバイスのリストです。一部の新しいデバイスが実際にサポートされるかは、ライブラリをコンパイルする時に、デバイスをサポートするコンパイラとアセンブラの能力に依存しますので注意してください。
avr-libcは、つぎのライセンス条件が満たされていれば、自由に使用および再配布できます。(訳注:ライセンスの日本語訳は、Open Source Group JapanのBSDライセンスを参考にしてください。翻訳版もつぎのライセンス条件に基づき、自由に使用および、変更・再配布できます。)
Portions of avr-libc are Copyright (c) 1999-2016 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.