AVR Libc Home Page AVRs AVR Libc Development Pages
Main Page FAQ Library Reference Additional Documentation Example Projects

AVR Libc

1.4.3 (WinAVR 20060125添付)

Introduction

このドキュメントの最終バージョン(英語版オリジナル)は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 の章をお読みください。

Note:
ドキュメント・ライブラリ どちらでも、もしもバグを見つけた、もしくは改善のための有用な助言を思いついたと思われた場合は、それが忘れ去られないように是非 "bug tracker" をご利用ください。

ライブラリ一般情報

大まかには、ライブラリ実装でスタンダード化を達成実現することが目標になっています。これは一般的にはANSI X3.159-1989 やISO/IEC 9899:1990 ("ANSI-C") スタンダードで解説されているCライブラリを指します。ISO/IEC 9899:1999 ("C99")の一部や、 IEEE Std 1003.1-1988 ("POSIX.1")などのその他のスタンダードからもいくらか取り入れています。その他の拡張はもっぱらAVR独特なものです(プログラムスペース文字列インタフェースなど)

このライブラリの関数は、リエントラント可能を保証されていません。特に、ローカルな状態(グローバル変数のように1つしかない変数や状態など)を保存する関数、EEPROMアクセスルーチンなどIOレジスタを扱う関数などはリエントラントでないことが知られています。これらの関数がメインルーチンと割り込みルーチン両方で使われた場合、両者の挙動は予測できないものになります。

サポートされたデバイス

以下は現在このライブラリでサポートされているAVRデバイスのリストです。いくつかの最新デバイスのサポートは実際にはコンパイラ・アセンブラがそれらデバイスをサポートできるかどうかにかかっていることに注意してください。(※ライブラリだけ対応できてもだめ)

AT90S Type Devices:
ATmega Type Devices:

ATtiny Type Devices:

Misc Devices:

Note:
[1] アセンブラのみ対応。 これらはRAMによるスタックを持たないためC言語での直接のサポートはありません。しかしながら、C言語でプログラムすることは可能です。 FAQ をご参照ください。
Note:
[2] at94KデバイスはFPGAとAVRの組み合わせでできています。[TRoth-2002/11/12: 情報が不足しています。情報の提供をお待ちしております。]
Note:
[3] at76c711はAVRコアを使ったUSBブリッジチップです。

Automatically generated by Doxygen 1.4.1 on 23 Jan 2006.