ENGLISH 简体中文 日本語 한국어  



   
 
キーワードまたは型番を入力    




アプリケーションノート 1097

白書2:1-Wire®パブリックドメインキットの使用

要約:このアプリケーションノートでは、1-Wireパブリックドメイン(PD)キットの使用方法について説明します。キットは、シリアルから1-WireへのラインドライバDS2480B、またはカスタム1-Wireインタフェースを使用して1-Wireマスタを構成するための、完全オープンソース、ポータブルCライブラリです。また、キットには数々の1-WireおよびiButton®デバイスをカバーする多数のアプリケーション例が含まれています。このアプリケーションノートでは、キットのファイルを組み合わせて、サポートおよび未サポートのオペレーティングシステムでアプリケーションを構成する方法について説明します。

はじめに

このアプリケーションノートでは、1-Wireパブリックドメイン(PD)キットの使用方法について説明します。キットはマキシムの1-Wireデバイスを使用するアプリケーションを作成する開発者を支援するために構築されました。また、キットは1-Wireネットワークとの通信方法を理解するための学習ツールでもあります。

このアプリケーションノートでは、キットのファイルを組み合わせてアプリケーションを構成する方法について説明します。また、異なるOSプラットフォームに対応する(それが未対応のOSプラットフォームの場合でも)カスタムアプリケーションを生成する方法についても示します。

1-Wire PDキットのソースコードは「C」で記述されています。この言語はもっとも一般的なプログラミング言語であり、また異なるオペレーティングシステムに対する移植性にも優れた言語であるため選択しました。アプリケーションノート155、「1-Wire®ソフトウェアリソースガイドデバイス説明」では、1-WireのPDキットおよびその他利用可能なソフトウェア開発キットについて説明しています。

API機能のグループ分類

1-Wire PDキットのAPIソフトウェア機能は、目的に応じてグループ(通常は個別ファイル)に分類されます。
  • Sessionグループは1-Wireの排他的な使用権を獲得および開放するため、その他のアプリケーションは通信を妨げることができません。
  • Linkグループは1-Wire通信機器の基本セットで、これにはリセット、ビットの読出し/書込み、EPROMプログラミングパルス、および給電が含まれています。これらのリンク機能はプラットフォームに依存しています。
  • Network機能グループはデバイスの検出と選択を行います。各1-Wireデバイスは、各選択に対して1-Wireネットワークアドレスを持ちます。
  • Transportグループはブロック通信およびメモリの読出し/書込みの基本機能を実行しますが、これには1-Wireデバイスに対するパケットの読出し/書込み機能が含まれます。
  • Fileグループには1-Wireファイル構造を使用するメモリレベル機能が含まれています(アプリケーションノート114、「1-Wire File Structure」)。Fileグループは複数のメモリページを備えた1-Wireデバイスで使用することができます。
  • Deviceグループは上記の機能グループを使用して1-Wireデバイス上の特定の動作を実行します。これらの動作には、SHAの動作、温度の読取り、電圧の読取り、およびスイッチ状態の設定などが含まれます。

ソースファイルの構成

1-Wire PDキットのプラットフォームの特定コードは、他のプラットフォームへの移植性を高めるために、いくつかのファイル(TODOテンプレート)で構成されています。これらのファイルは、ハードウェアに依存するAPIの最低位レベルを指します。これらのファイルが正しくコード化されていれば、残りのAPI (およびサンプルアプリケーション)は正常にコンパイルされ動作するはずです。

特定のプラットフォーム用APIの最低位レベルを構築するには、3つの一般的な方法があります。最初の方法は「general」、2つ目は「userial」と呼ばれています。一般的な構築方法では、開発者はLinkレベルの 1-Wireの基本通信機能を使用する必要があります。詳細はアプリケーションノート126、「ソフトウェアを介した1-Wire通信」を参照してください。userial構築方法は、RS-232シリアルポートでの使用に限定されるもので、開発者はマキシムのユニバーサルシリアル1-WireラインドライバマスタであるDS2480Bを使用することを前提としています。userialプラットフォームの構築で使用する唯一のソフトウェア機能は、シリアルボートの基本読込み/書出しです。詳細は、アプリケーションノート192、「DS2480Bシリアル1-Wireラインドライバの使用」を参照してください。マキシムでは、DS9097U-009DS9097U-S09DS9097U-E25DS1411-009、およびDS1411-S09など、DS2480Bをベースとした数種のPCシリアルアダプタを販売しています。

3つ目の「その他」の使用分野では、標準1-Wire PDキットの基本APIを提供していますが、特定のシステムまたはアダプタ機能を利用することによってAPIの使用範囲が広がります。例として、DS9490Rなどの1-WireのUSBアダプタを使用するAPIの使用は、この分野がUSBポートおよびアダプタに内蔵された特別な機能を利用することが求められます。

図1はキットを最大限に活用する方法を決定する手順のフローチャートです。

Figure 1. Usage flowchart for the 1-Wire PD Kit.
図1. 1-Wire PDキットの使用法フローチャート

アプリケーションの作成方法

キットのファイルは複数のサブディレクトリにまとめられています。
  • \appsディレクトリにあるファイルは、\commonディレクトリにあるファイルとともに使用してポートまたはプラットフォームのアプリケーションのベースを形成することができます。
  • lib\generalおよびlib\userialにあるファイルは、前述した移植可能なソースファイルの2セットです。
  • アプリケーションをまとめた最後の部分はLinkファイルで、\lib\userial\linkまたは\lib\general\linkのいずれかにあります。リンクファイルが対象プラットフォームに存在しない場合は、キットで提供されているソースコードのテンプレートファイル(例:「userial」構成用のTODO.Cファイル)を完成させる必要があります。これらのリンクファイルは、1-WireのPDキットを動作させるために正確に記入する必要のあるポートとプラットフォーム機能を備えています。図2は、既存のLinkファイルにすべてのファイルを集めたものです。
Figure 2. Files needed to construct an application.
図2. アプリケーション構築に必要なファイル

表1はキットが現在サポートする数々のプラットフォームの一覧です。プラットフォームは1-Wireパブリックドメインキットのメインページからダウンロードできます。

表1. 1-Wire PDキットがサポートするソフトウェアプラットフォーム
Platform Compiler Library Port Interface Name
Win32® MS Visual C other USB DS9490 + WinUSB winusb32vc
Win32 MS Visual C other USB DS9490 + libusb libusbw32vc
Win32 MS Visual C userial COM DS2480B uwin32vc
Win32 GNU C userial COM DS2480B uwin32gnu
Win32 MS Visual C general LPT DS1410E* gpw32vc
Win32 MS Visual C other USB
COM
LPT
multiport multiw32vc
Win64 MS Visual C other USB DS9490 + WinUSB winusb64vc
Win64 MS Visual C other USB DS9490 + libusb libusbw64vc
Win64 MS Visual C userial COM DS2480B uwin64vc
Win64 MS Visual C general LPT DS1410E* gpw64vc
Win64 MS Visual C other USB
COM
LPT
multiport multiw64vc
Mac OS® X GNU C other USB DS9490 + libusb libusbmacosx
Mac OS X GNU C userial COM DS2480B umacosxgnu
Linux® GNU C other USB DS9490 + libusb libusblinux
Linux GNU C userial COM DS2480B ulinuxgnu
DS550 Keil® general Micro Active pullup pin gds550keil
DS550 Keil userial Micro DS2480B uds550keil
*DS1410Eは新規設計には推奨されていません。



1-WireはMaxim Integrated Products, Inc.の登録商標です。

iButtonはMaxim Integrated Products, Inc.の登録商標です。

Keil SoftwareはKeil Software, Inc.の登録商標です。

LinuxはLinus Torvaldsの登録商標です。

Mac OSはApple Inc.の登録商標です。

Win32はMicrosoft Corporationの登録商標です。


関連製品  APP 1097: Jun 19, 2008
DS1411-009 シリアルポートiButtonホルダ フルデータシート
(PDF, 148kB)
DS1411-S09 シリアルポートiButtonホルダ フルデータシート
(PDF, 148kB)
DS18S20 1-Wire寄生電力ディジタルサーモメータ フルデータシート
(PDF, 188kB)
無料
サンプル
DS18S20-PAR 寄生電源ディジタルサーモメータ フルデータシート
(PDF, 264kB)
DS1920 温度用iButton® フルデータシート
(PDF, 496kB)
DS1963S SHA iButton
DS1971 256ビットEEPROM iButton® フルデータシート
(PDF, 264kB)
無料
サンプル
DS1973 4Kb EEPROM iButton® フルデータシート
(PDF, 88kB)
無料
サンプル
DS1982 1KbアドオンリーiButton® フルデータシート
(PDF, 492kB)
無料
サンプル
DS1985 16KbアドオンリーiButton® フルデータシート
(PDF, 500kB)
無料
サンプル
DS1986 64KbアドオンリーiButton® フルデータシート
(PDF, 780kB)
DS1990A シリアルナンバーiButton フルデータシート
(PDF, 140kB)
無料
サンプル
DS1992 1Kb/4KbメモリiButton® フルデータシート
(PDF, 364kB)
無料
サンプル
DS1993 1Kb/4KbメモリiButton® フルデータシート
(PDF, 364kB)
無料
サンプル
DS1995 16KビットメモリiButton® フルデータシート
(PDF, 48kB)
DS1996 64kビットメモリiButton® フルデータシート
(PDF, 348kB)
DS2401 シリコンシリアルナンバー フルデータシート
(PDF, 288kB)
無料
サンプル
DS2405 アドレス指定可能なスイッチ フルデータシート
(PDF, 436kB)
DS2406 1Kbメモリ付き、デュアル、アドレス指定可能なスイッチ フルデータシート
(PDF, 264kB)
無料
サンプル
DS2431 1024ビット、1-Wire EEPROM フルデータシート
(PDF, 712kB)
無料
サンプル
DS2432 SHA-1エンジン内蔵、1Kb保護1-Wire EEPROM 要約版データシート
(PDF, 164kB, English only)
DS2433 4Kb、1-Wire EEPROM フルデータシート
(PDF, 568kB)
無料
サンプル
DS2438 スマートバッテリモニタ フルデータシート
(PDF, 376kB)
無料
サンプル
DS2450 1-WireクワッドA/Dコンバータ フルデータシート
(PDF, 360kB)
無料
サンプル
DS2480B シリアルから1-Wireへのラインドライバ フルデータシート
(PDF, 344kB)
無料
サンプル
DS2490 USBから1-Wireへの変換チップ フルデータシート
(PDF, 1.3MB)
DS2502 1Kbアドオンリーメモリ フルデータシート
(PDF, 540kB)
無料
サンプル
DS2505 16Kbアドオンリーメモリ フルデータシート
(PDF, 320kB)
無料
サンプル
DS2506 64Kbアドオンリーメモリ フルデータシート
(PDF, 900kB)
DS9097U-009 ユニバーサル1-Wire COMポートアダプタ フルデータシート
(PDF, 43kB)
DS9097U-E25 ユニバーサル1-Wire COMポートアダプタ フルデータシート
(PDF, 43kB)
DS9097U-S09 ユニバーサル1-Wire COMポートアダプタ フルデータシート
(PDF, 43kB)

自動アップデート
お客様が関心のある分野でアプリケーションノートが新規に掲載された際に自動通知Eメールの受信を希望する場合は、EE-Mail™にご登録ください。


We Want Your Feedback!



フィードバックをお寄せください。
内容に満足されましたか、あるいは満足されていませんか?もっと良いページにできると思いますか?あるいは、単なるコメントでも結構です。フィードバックをお待ちしています。—マキシムはお客様からいただく訂正、提案を元に改善していきます。 このページを評価し、フィードバックを送信する。

 

ダウンロード、PDFフォーマットダウンロード、PDFフォーマット(190kB)
 AN1097, AN 1097, APP1097, Appnote1097, Appnote 1097

        •         •         •     プライバシーポリシー     •     法的お知らせ

    Copyright © 2009 by Maxim Integrated Products