Section 15. Input Capture

Similar documents
PIC10(L)F320/322 Product Brief

PIC24F Family Reference Manual, Section 9 Watchdog Timer (WDT)

AN1019 そのような配慮として 下記の基本的ガイドラインに沿って 可能な限り 環境条件または動作条件を制限する必要があります アプリケーションの温度を可能な限り下げる アプリケーションの電圧 ( または EEPROM の VCC 電圧 ) を可能な限り下げる 書き込みバイト数を可能な限り少なくす

ヒント 2: CWG を使ったハーフブリッジまたはフルブリッジ回路の駆動 ハーフブリッジまたはフルブリッジモータ回路を駆動するために多ピンマイクロコントローラは必ずしも必要ではありません PWM モジュールと CWG モジュールを組み合わせると 少ピンデバイスでも駆動できます 図 2: CWG によ

Manchester Decoder Using the CLC and NCO

a.fm

RI_JTAG.book

SMSC LAN8700 Datasheet

SMSC LAN8700 Datasheet

51814a0910.indd

PICF/LF1847 表 1: デバイス PICF/LF1847 ファミリの各製品 プログラムメモリフラッシュ ( ワード ) データ EEPROM ( バイト ) SRAM ( バイト ) I/O 10 ビット A/D (ch) タイマ 8/ ビット EUSART MSSP CCP/ ECCP

PIC24F Family Reference Manual Section 9 WDT

Microchip Capacitive Proximity Design Guide

開発ツール WINDOWS 2000 でのインストールに関する問題 MPLAB ICD 2 USB ドライバの読み込み時に問題が発生する場合 Microsoft Windows Update サイトのパッチが役立つかもしれません このパッチは Windows 2000 SP4 に更新したユーザに適用

AN2754 USB-to-I2C Bridging with USB7002, USB7050, USB7051, and USB7052 Hubs

ご注意 : この日本語版ドキュメントは 参考資料としてご使用の上 最新情報につきましては 必ず英語版オリジナルをご参照いただきますようお願いします PIC12F1822/16F182X 8/14/20 ピン 8 ビットフラッシュマイクロコントローラ製品概要 高性能 RISC CPU: 命令数は 49

DALI App. Note

B MPLAB XC HPA Renewal Instructions.book

USB.mif

TB3179 メモリ保護ユニット (MPU) の設定方法 はじめに メモリ保護ユニット (MPU) は Cortex -M7 コアがメモリ保護のために備えているオプションのコンポーネントです MPU はメモリマップを分割し それぞれにアクセス権とルールを設定します 本書では Cortex-M7 ベー

JPN_SENT 16 FRM.fm

00763b.book

a.fm

表 1: ファミリの各製品 デバイス (1) プログラムメモリ バイトワード SRAM ( バイト ) データメモリ データ EEPROM ( バイト ) ピン数 I/O 10 ビット A/D チャンネル コンパレータ CCP/ ECCP BOR/LVD CTMU MSSP EUSART タイマ 8

39734a_JP.fm

Section 36. Programmable Cyclic Redundancy Check (CRC)

Multi-Tool Design Advisory

TB3172 Cortex -M7 マイクロコントローラの XDMAC を使ってオーディオアプリケーションにピンポンバッファリングを実装する方法 はじめに オーディオシステムアプリケーションでは リアルタイムシステムに関する代表的なプロデューサ / コンシューマ問題が発生する可能性があります タイミ

スライド 1

00681a.fm

DS01202B_JP

Reduction of the High-Frequency Switching Noise in the MCP16301 High-Voltage Buck Converter

Sensorless Field Oriented Control (FOC) of an AC Induction (ACIM) Using Field Weakening

Cortex -M キャッシュコントローラを使って決定論的コード性能を達成する方法 TB3186 はじめに マイクロコントローラベース (MCU) の組み込みアプリケーションでは ソフトウェアは不揮発性メモリに保存して実行します この不揮発性メモリとは 通常はフラッシュメモリです フラッシュメモリは

Using L1 Cache on PIC32MZ Devices.recover.fm

DS70172A_JP

A.book

21942b_Japanese.book

dsPIC33E FRM - Section #. Title

A.book

Sample Rate Conversion Library for PIC32 User’s Guide

AN1817 Using a Hardware or Software CRC with Enhanced Core PIC16F1XXX in Class B Applications

MPLAB Code Configurator User’s Guide

Using RN4020 for Bluetooth Smart Communication.fm

SOPC Builder ペリフェラル 簡易ユーザ・ガイド - PIO (Parallel I/O)

-2 外からみたプロセッサ GND VCC CLK A0 A1 A2 A3 A4 A A6 A7 A8 A9 A10 A11 A12 A13 A14 A1 A16 A17 A18 A19 D0 D1 D2 D3 D4 D D6 D7 D8 D9 D10 D11 D12 D13 D14 D1 MEMR

39733a.fm

スライド 1

Pulse Oximeter Design Using Microchip’s Analog Devices and dsPIC Digital Signal Controllers (DSCs)

Microsoft Word - TC4013BP_BF_J_P9_060601_.doc

Microsoft Word - TC4017BP_BF_J_P10_060601_.doc

Section 8. Interrupts

スライド 1

QuartusII SOPC_Builderで利用できるGPIF-AVALONブリッジとは?

ハイサイド MOSFET の損失 どのような MOSFET でも 総損失は伝導損失とスイッチング損失の合計として求まります 低デューティでは コンバータスイッチング損失がハイサイド MOSFET の支配的な損失要因となる傾向にあります 降圧型コンバータのデューティサイクルは下式により表せます ハイサ

Microsoft Word - TC4011BP_BF_BFT_J_P8_060601_.doc

AN424 Modbus/TCP クイックスタートガイド CIE-H14

TB3177 MPLAB Harmony Configurator (MHC) を使った Hello World アプリケーションの作成 はじめに MPLAB Harmony は互換で相互運用可能なライブラリで構成されたソフトウェアフレームワークであり 周辺モジュールドライバ ミドルウェア システム

Notes and Points for TMPR454 Flash memory

Microsoft Word - TC4538BP_BF_J_2002_040917_.doc

DS01149C_JP

S1C17 Family Application Note S1C17 シリーズ PORT 多重割り込みアプリケーションノート Rev.1.0

Polycom RealConnect for Microsoft Office 365

dsPIC33E FRM - Section #. Title

2.RL78 での割り込み処理 ( 割り込み受け付け ) マスクが解除された (xxmk ビットが 0 の ) 割り込み要求信号は 2 つの用途で使用されます 一つ目は,CPU のスタンバイ状態の解除です この動作は, 割り込み優先順位とは全く無関係で, マスクされていない (xxmk=0 の )

PIC24F Reference Manual Sect.23

Real-Time Clock and Calendar (RTCC)

QNAP vsphere Client 用プラグイン : ユーザーガイド 2012 年 12 月更新 QNAP Systems, Inc. All Rights Reserved. 1

RL78/F13, F14 割り込み要因判別方法

CMOS リニアイメージセンサ用駆動回路 C CMOS リニアイメージセンサ S 等用 C は当社製 CMOSリニアイメージセンサ S 等用に開発された駆動回路です USB 2.0インターフェースを用いて C と PCを接続

実習内容 PIC18C242 のポート B に接続した LED を点滅させます ( 他の実習と同じ内容です ) 8 個の LED に表示される値が +3 ずつインクリメントします MPLAB を使って MPASM アセンブラのソース ファイルをアセンブルします MPLAB とソース ファイルは配布し

世界最高水準の 8/16 ビット PIC マイクロコントローラの伝統を継承し PIC32 ファミリ誕生は 32 ビットの性能と大容量のメモリで複雑化を続ける組み込みシステム設計の課題を解決します 高性能と大容量メモリ RTOS タッチパネル 複雑なアプリケーション向け MHz 1.56 DMIPS

USBドライバインストールマニュアル [Windows Vista/Windows 7]

b.fm

ポリシーマネージャ       Linux版                                 集中管理環境の新規構築

スライド 1

命令セットの構成例 a) 算術 演算命令 例 )ADD dest, source : dest dest + source SUB dest, source : dest dest - source AND dest, source : dest dest AND source SHR reg, c

Jan/25/2019 errata_c17m11_10 S1C17 マニュアル正誤表 項目 リセット保持時間 対象マニュアル発行 No. 項目ページ S1C17M10 テクニカルマニュアル システムリセットコントローラ (SRC) 特性 19-3 S1C17M20/M

RL78開発環境移行ガイド R8C/M16C, H8S/H8SXからRL78への移行(統合開発環境編)(High-performance Embedded Workshop→CS+)

41380b_table0907.indd

DS00937A_JP

XC8 quick start guide.fm

OpenLAB Data Store Release Notes

PIC24F Family Reference Manual Section 8 Interrupts

このダイナミックリンクライブラリ GaugeC48.dll は 8CH から 48CH 用の DigitalGaugeCounterDG3000 シリーズ共通の DLL です この説明書は GaugeC48.dll を使ったアプリケーションを作成するためのものです 開発環境は MicrosoftVi

まず,13 行目の HardwareTimer Timer(1); は,HardwareTimer というクラスを利用するという宣言である. この宣言によって Timer というインスタンスが生成される.Timer(1) の 1 は,OpenCM に 4 個用意されているタイマのうち,1 番のタイマ

PowerPoint プレゼンテーション

Microsoft Word - Ladder Tool 使çfl¨ã…žã…‰ã…¥ã‡¢ã…«ã…©ã…•ã…¼ã†ªã†Š_ docx

本書は INpMac v2.20(intime 5.2 INplc 3 Windows7/8/8.1に対応 ) の内容を元に記載しています Microsoft Windows Visual Studio は 米国 Microsoft Corporation の米国及びその他の国における登録商標です

PIC18F23K20/24K20/25K20/26K20/43K20/44K20/45K20/46K20 Data Sheet


AN1428, LCD Biasing and Contrast Control Methods

Microsoft Word - ESX_Restore_R15.docx

Office 365監査ログ連携機能アクティブ化手順書

Section 23. Serial Peripheral Interface (SPI)

Microsoft Windows Internet Explorer は 米国 Microsoft Corporation の 米国およびその他の国における登録商標または商標です Linux は Linus Torvalds 氏の日本およびその他の国における登録商標または商標です Red Hat

Microsoft PowerPoint - RL78G14_動画マニュアル_タイマRD.ppt [互換モード]

: mxt641td-at/mxt641td-ab 1.0 maxtouch 640 maxtouch 32 X ( ) 20 Y ( ) ( 16:10) ( = 5.5 mm ) ( 16 ) AEC-Q100 Automotive SPICE 3 CISPR-25 Out-C

a.mif

MAC アドレス変更ツール MAC アドレスチェンジャー ユーザーズマニュアル User's Manual エレコム株式会社

Transcription:

注意 : この日本語版文書は参考資料としてご利用ください 最新情報は必ずオリジナルの英語版をご参照願います セクション 15. 入力キャプチャ ハイライト 本セクションには下記の主要項目を記載しています 15.1 はじめに... 15-2 15.2 入力キャプチャレジスタ... 15-4 15.3 タイマの選択... 15-8 15.4 入力キャプチャの有効化... 15-8 15.5 入力キャプチャイベントモード... 15-9 15.6 キャプチャバッファ動作... 15-14 15.7 入力キャプチャ割り込み... 15-15 15.8 省電力モード時の動作... 15-17 15.9 デバッグモード時の入力キャプチャ動作... 15-18 15.10 I/O ピンの制御... 15-18 15.11 設計のヒント... 15-18 15.12 関連アプリケーションノート... 15-19 15.13 改訂履歴... 15-20 15 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-1

PIC32 ファミリリファレンスマニュアル ファミリリファレンスマニュアルの本セクションは デバイスデータシートの補足を目的としています 本書の内容は PIC32 ファミリの一部のデバイスには対応していません 本書の内容がお客様のご使用になるデバイスに対応しているかどうかは 最新デバイスデータシート内の 入力キャプチャ の冒頭に記載している注意書きでご確認ください デバイスデータシートとファミリリファレンスマニュアルの各セクションは マイクロチップ社のウェブサイト (http://www.microchip.com) からダウンロードできます 15.1 はじめに 本書では入力キャプチャモジュールとその動作モードについて説明します 入力キャプチャモジュールは入力ピンでイベントが発生した時にタイムベースからタイマ値をキャプチャします タイムベースは 2 つあり いずれか 1 つを選択できます 入力キャプチャ機能は周波数 ( 周期 ) およびパルス計測が必要なアプリケーションに役立ちます 図 15-1 に 入力キャプチャモジュールの概略ブロック図を示します PIC32 ファミリの各デバイスは 1 つまたは複数の入力キャプチャモジュールを備えます 入力キャプチャモジュールの実装数については 各デバイスのデータシートを参照してください 全ての入力キャプチャモジュールは機能的に同じです 本書内のピン 制御 / ステータスビット レジスタの名前に含まれる添え字 x はタイマモジュールの番号を表します 入力キャプチャモジュールは下記の動作モードを備え それらの選択には ICxCON レジスタを使います ICx ピンの立ち下がりエッジ毎にタイマ値をキャプチャする ICx ピンの立ち下がりエッジ毎にタイマ値をキャプチャする ICx ピンの立ち上がりエッジ 4 回毎にタイマ値をキャプチャする ICx ピンの立ち上がりエッジ 16 回毎にタイマ値をキャプチャする ICx ピンの立ち上がり / 立ち下がり両方のエッジ毎にタイマ値をキャプチャする 指定した極性のエッジでタイマ値のキャプチャを開始し 後続の全てのエッジ毎にタイマ値をキャプチャする入力キャプチャモジュールは 4 段の先入れ先出し (FIFO) バッファを備えます このため CPU 割り込みを生成するために必要なキャプチャイベントの回数 (1 ~ 4 回 ) をユーザアプリケーションで選択できます 入力キャプチャモジュールは デバイスのスリープまたはアイドルモード中にキャプチャ入力の立ち上がりエッジで CPU 割り込みを生成するよう設定する事もできます DS61122F_JP - p. 15-2 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ 図 15-1: 入力キャプチャモジュールのブロック図 ICx Input Timer3 Timer2 ICTMR C32 FIFO Control ICxBUF<31:16> ICxBUF<15:0> 0 1 Prescaler 1, 4, 16 Edge Detect ICM<2:0> ICM<2:0> FEDGE ICxCON ICBNE ICOV ICI<1:0> Interrupt Event Generation Data Space Interface Interrupt Peripheral Data Bus 15 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-3

PIC32 ファミリリファレンスマニュアル 15.2 入力キャプチャレジスタ PIC32 が実装する各入力キャプチャモジュールには下記の特殊機能レジスタ (SFR) が割り当てられています ICXCON: 入力キャプチャ X 制御レジスタ (1,2,3) ICXCON2: 入力キャプチャ X バッファレジスタ各入力キャプチャモジュールには 割り込み制御用に下記のビットも割り当てられます 割り込みイネーブル制御ビット (ICxIE) 割り込みフラグステータスビット (ICxIF) 割り込み優先度制御ビット (ICxIP) 割り込み副優先度制御ビット (ICxIS) 表 15-1 に 入力キャプチャに関連するレジスタの要約を示します この表の後に各レジスタの詳細な説明を記載しています 表 15-1: アドレスオフセット 入力キャプチャ SFR の要約 レジスタ名 Bit 31/23/15/7 Bit 30/22/14/6 Bit 29/21/13/5 Bit 28/20/12/4 Bit 27/19/11/3 Bit 26/18/10/2 Bit 25/17/9/1 Bit 24/16/8/0 0x00 ICxCON (1,2,3) 31:24 23:16 15:8 ON FRZ SIDL FEDGE C32 7:0 ICTMR ICI<1:0> ICOV ICBNE ICM<2:0> 0x10 ICxBUF 31:24 ICxBUF<31:24> 23:16 ICxBUF<23:16> 15:8 ICxBUF<15:8> 7:0 ICxBUF<7:0> 凡例 : = 未実装 0 として読み出し アドレスオフセット値は 16 進数で表記 Note 1: このレジスタに対応するクリアレジスタのアドレスは 0x4 バイトオフセットしています クリアレジスタは 対応するレジスタの名前の後に CLR を追加した名前を持ちます ( 例 : ICxCONCLR) クリアレジスタの任意のビットに 1 を書き込むと 対応するレジスタの対応するビットがクリアされます クリアレジスタからの読み出しは無視されます 2: このレジスタに対応するセットレジスタのアドレスは 0x8 バイトオフセットしています セットレジスタは 対応するレジスタの名前の後に SET を追加した名前を持ちます ( 例 : ICxCONSET) セットレジスタの任意のビットに 1 を書き込むと 対応するレジスタの対応するビットがセットされます セットレジスタからの読み出しは無視されます 3: このレジスタに対応する反転レジスタのアドレスは 0xC バイトオフセットしています 反転レジスタは 対応するレジスタの名前の後に INV を追加した名前を持ちます ( 例 : ICxCONINV) 反転レジスタの任意のビットに 1 を書 き込むと 対応するレジスタの対応するビットが反転します 反転レジスタからの読み出しは無視されます DS61122F_JP - p. 15-4 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ レジスタ 15-1: ICXCON: 入力キャプチャ X 制御レジスタ (1,2,3) U-0 U-0 U-0 U-0 U-0 U-0 U-0 U-0 bit 31 bit 24 U-0 U-0 U-0 U-0 U-0 U-0 U-0 U-0 bit 23 bit 16 R/W-0 R/W-0 R/W-0 U-0 U-0 U-0 R/W-0 R/W-0 ON FRZ SIDL FEDGE C32 bit 15 bit 8 R/W-0 R/W-0 R/W-0 R-0 R-0 R/W-0 R/W-0 R/W-0 ICTMR ICI<1:0> ICOV ICBNE ICM<2:0> bit 7 bit 0 凡例 : R = 読み出し可能ビット W = 書き込み可能ビット P = 書き込み可能ビット r = 予約済みビット U= 未実装ビット n = POR 時のビット値 ( 0 1 または x= ビットは未知 ) bit 31-16 bit 15 bit 14 bit 13 bit 12-10 未実装 : 0 として読み出し ON: 入力キャプチャモジュールイネーブルビット 1 = モジュールを有効にする 0 = モジュールを無効にしてリセットする ( クロックと割り込み生成は無効になり SFR の変更が可能 ) PBCLK 分周比を 1:1 にしている場合 周辺モジュールの ON ビットをクリアした命令の直後の SYSCLK サイクルでは そのモジュールの SFR に対する読み / 書きをユーザソフトウェアで実行しないでください FRZ: デバッグモード中フリーズ制御ビット 1 = デバッグモード中にモジュールの動作をフリーズする 0 = デバッグモード中にモジュールの動作をフリーズしない FRZ はデバッグ例外モード中にのみ書き込めます 通常モードでは このビットは 0 に固定されます SIDL: アイドル時停止制御ビット 1 =CPU アイドルモード時に停止する 0 =CPU アイドルモード時も動作を続ける 未実装 : 0 として読み出し Note 1: このレジスタに対応するクリアレジスタ (ICxCONCLR) のアドレスは 0x4 バイトオフセットしています クリアレジスタの任意のビットに 1 を書き込むと 対応するレジスタの対応するビットがクリアされます クリアレジスタからの読み出しは無視されます 2: このレジスタに対応するセットレジスタ (ICxCONSET) のアドレスは 0x8 バイトオフセットしています セットレジスタの任意のビットに 1 を書き込むと 対応するレジスタの対応するビットがセットされます セットレジスタからの読み出しは無視されます 3: このレジスタに対応する反転レジスタ (ICxCONINV) のアドレスは 0xC バイトオフセットしています 反転レジスタの任意のビットに 1 を書き込むと 対応するレジスタの対応するビットが反転します 反転レジスタからの読み出しは無視されます 15 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-5

PIC32 ファミリリファレンスマニュアル レジスタ 15-1: ICXCON: 入力キャプチャ X 制御レジスタ (1,2,3) ( 続き ) bit 9 FEDGE: キャプチャ開始エッジ選択ビット ( モード 6 (ICM<2:0> = 110) 時にのみ使用 ) 1 = 最初に立ち上がりエッジをキャプチャする 0 = 最初に立ち下がりエッジをキャプチャする bit 8 C32: 32 ビットキャプチャ選択ビット 1=32ビットタイマリソースをキャプチャする 0=16ビットタイマリソースをキャプチャする bit 7 ICTMR: タイマ選択ビット (C32 (ICxCON<8>) = 1 の場合はタイマの選択に影響しません ) 0 = Timer3 をキャプチャのカウンタ源に使う 1 = Timer2 をキャプチャのカウンタ源に使う bit 6-5 ICI<1:0>: 割り込み制御ビット 11 = キャプチャイベント 4 回毎に割り込む 10 = キャプチャイベント 3 回毎に割り込み 01 = キャプチャイベント 2 回毎に割り込む 00 = キャプチャイベント毎に割り込む bit 4 ICOV: 入力キャプチャオーバーフローステータスフラグビット ( 読み出し専用 ) 1 = 入力キャプチャオーバーフローが発生した 0 = 入力キャプチャオーバーフローは発生していない bit 3 ICBNE: 入力キャプチャバッファ非エンプティステータスビット ( 読み出し専用 ) 1 = 入力キャプチャバッファはエンプティではない ( 少なくとも 1 つのキャプチャ値を読み出せる ) 0 = 入力キャプチャバッファはエンプティである bit 2-0 ICM<2:0>: 入力キャプチャモード選択ビット 111 = 割り込み専用モード ( スリープまたはアイドルモード中にのみサポート ) 110 = 単純キャプチャイベントモード - 指定極性のエッジを先頭に後続の全てのエッジ毎 101 = プリスケールキャプチャイベントモード 立ち上がりエッジ 6 回毎 100 = プリスケールキャプチャイベントモード 立ち上がりエッジ 4 回毎 011 = 単純キャプチャイベントモード 立ち上がりエッジ毎 010 = 単純キャプチャイベントモード 立ち下がりエッジ毎 001 = エッジ検出モード - 全エッジ ( 立ち上がり / 立ち下がり両エッジ ) 毎 000 = キャプチャ無効モード Note 1: このレジスタに対応するクリアレジスタ (ICxCONCLR) のアドレスは 0x4 バイトオフセットしています クリアレジスタの任意のビットに 1 を書き込むと 対応するレジスタの対応するビットがクリアされます クリアレジスタからの読み出しは無視されます 2: このレジスタに対応するセットレジスタ (ICxCONSET) のアドレスは 0x8 バイトオフセットしています セットレジスタの任意のビットに 1 を書き込むと 対応するレジスタの対応するビットがセットされます セットレジスタからの読み出しは無視されます 3: このレジスタに対応する反転レジスタ (ICxCONINV) のアドレスは 0xC バイトオフセットしています 反転レジスタの任意のビットに 1 を書き込むと 対応するレジスタの対応するビットが反転します 反転レジスタからの読み出しは無視されます DS61122F_JP - p. 15-6 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ レジスタ 15-2: ICXCON2: 入力キャプチャ X バッファレジスタ R-0 R-0 R-0 R-0 R-0 R-0 R-0 R-0 ICxBUF<31:24> bit 31 bit 24 R-0 R-0 R-0 R-0 R-0 R-0 R-0 R-0 ICxBUF<23:16> bit 23 bit 16 R-0 R-0 R-0 R-0 R-0 R-0 R-0 R-0 ICxBUF<15:8> bit 15 bit 8 R-0 R-0 R-0 R-0 R-0 R-0 R-0 R-0 ICxBUF<7:0> bit 7 bit 0 凡例 : R = 読み出し可能ビット W = 書き込み可能ビット P = 書き込み可能ビット r = 予約済みビット U= 未実装ビット n = POR 時のビット値 ( 0 1 または x= ビットは未知 ) bit 31-0 ICxBUF<31:0>: バッファレジスタビット入力タイマカウントの現在のキャプチャ値 15 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-7

PIC32 ファミリリファレンスマニュアル 15.3 タイマの選択 PIC32 ファミリの各デバイスは 1 つまたは複数の入力キャプチャモジュールを備えます 各モジュールのタイムベースには 2 つある 16 ビットタイマのいずれか 1 つ または 2 つの 16 ビットタイマを組み合わせた 32 ビットタイマを選択できます 選択可能なタイマについては 各デバイスのデータシートを参照してください 16 ビットキャプチャモードの場合 キャプチャ用に Timer3 を選択するには ICTMR (ICxCON<7>) を 0 に設定し Timer2 を選択するには 1 に設定します 32 ビットキャプチャをサポートするよう構成されている入力キャプチャモジュールでは キャプチャ用に 32 ビットタイマリソースを使えます C32 (ICxCON<8>) を 1 に設定すると 32 ビットタイマリソースをキャプチャします 32 ビットタイマリソースは 既存の 16 ビットタイマ入力を使ってモジュールに入力されます 図 15-2 示すように Timer2 は下位 16 ビットを提供し Timer3 は上位 16 ビットを提供します タイマのクロックは 内部周辺モジュール用クロック源または TxCK ピンに接続した同期外部クロック源を使って構成できます 図 15-2: 32 ビットタイマのブロック図 Timer3 Timer2 ICTMR = Don t Care C32 = 1 Value = 1 0 1 FIFO Control ICxBUF<31:16> ICxBUF<15:0> 15.4 入力キャプチャの有効化 設定を終えた入力キャプチャモジュールは ON ビット (ICxCON<15>) をセットする事により有効にします このビットをクリアするとモジュールはリセットします モジュールのリセットは下記を行います オーバーフローフラグをクリアする FIFO をエンプティ状態にリセットする 割り込み生成用イベントカウンタをリセットする プリスケールカウントをリセットするレジスタの読み / 書きは ON ビット (ICxCON<15>) の状態に関係なく可能です DS61122F_JP - p. 15-8 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ 15.5 入力キャプチャイベントモード ICx ピンでイベントが発生すると 入力キャプチャモジュールは選択されているタイムベースレジスタの値をキャプチャします 入力キャプチャモジュールは下記のモードに設定できます 単純キャプチャイベントモード : - ICx ピンの立ち下がりエッジ毎にタイマ値をキャプチャする - ICx ピンの立ち上がりエッジ毎にタイマ値をキャプチャする - ICx ピンの立ち上がり / 立ち下がり両方のエッジ毎にタイマ値をキャプチャする ( 指定極性のエッジでキャプチャを開始 ) プリスケールキャプチャイベントモード : - ICx ピンの立ち上がりエッジ 4 回毎にタイマ値をキャプチャする - ICx ピンの立ち上がりエッジ 16 回毎にタイマ値をキャプチャする エッジ検出モード (15.5.3 エッジ検出 ( ホールセンサ ) モード 参照 ) 割り込み専用モード (15.5.4 割り込み専用モード 参照 ) これらの入力キャプチャモードは 適切な入力キャプチャモードビット ICM<2:0>(ICxCON<2:0>) をセットする事により設定します 入力キャプチャモジュールを無効 (ICM<2:0> = 000) にすると 入力キャプチャロジックは入力されるキャプチャエッジを無視し キャプチャイベントも割り込みも生成しなくなります モジュールを無効にしても FIFO は読み出し可能です モジュールを他のモードに戻すと動作が再開します キャプチャ無効モード中にキャプチャ入力の状態が変化しても キャプチャ無効モード終了時にキャプチャイベントは発生しません キャプチャ無効モード中もプリスケーラロジックは動作し続けます 15.5.1 単純キャプチャイベントモード 入力キャプチャモジュールは 選択したモードで定義されているエッジ ( 立ち上がり 立ち下がり 両方 ) に基づいてタイマカウント値をキャプチャします 表 15-2 に このモードの設定を示します 単純キャプチャイベントモードではプリスケーラを使いません 単純キャプチャイベントモードの概略タイミング図を図 15-3 図 15-4 図 15-5 に示します 表 15-2: 入力キャプチャモードの設定 ICM<2:0> の設定 キャプチャのトリガ条件 Note 1: 001 立ち上がりエッジ 010 立ち下がりエッジ 110 立ち上がり / 立ち下がり両エッジ (1) このキャプチャは FEDGE ビット (ICxCON<9>) が指定する極性のエッジで始まります 入力キャプチャロジックは キャプチャピン信号の立ち上がりまたは立ち下がりエッジを検出し 周辺モジュール用クロックに同期してタイマの値をキャプチャします 立ち上がりまたは立ち下がりエッジが発生すると 入力キャプチャモジュールロジックは現在のタイムベース値をキャプチャバッファに書き込み 割り込み生成ロジックに信号を送ります キャプチャ入力は周辺モジュール用クロックに同期する必要があるため モジュールはキャプチャイベントの 2 ~ 3 TPB ( 周辺モジュール用クロックサイクル ) 後に有効なタイマカウント値をキャプチャします 15 入力キャプチャ割り込みイベントは ICI<1:0> ビット (ICxCON<6:5>) の設定に従って キャプチャイベント 1 ~ 4 回毎に生成されます 詳細は 15.7 入力キャプチャ割り込み を参照してください キャプチャピンは周辺モジュール用クロックに基づいてサンプリングされるため キャプチャパルスには周辺モジュール用クロック周期よりも長い HIGH および LOW 時間が必要です 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-9

PIC32 ファミリリファレンスマニュアル 図 15-3 は 単純キャプチャモード ( 立ち上がりエッジ毎にキャプチャ : CM<2:0> ビット (ICxCON<2:0>) = 011 イベント 4 回毎に割り込み生成 : ICI<1:0> ビット (ICxCON<6:5>) = 00) に設定した入力キャプチャモジュールにおける 2 回のキャプチャイベントを示しています 最初のキャプチャイベントはタイマ値 n の時に発生していますが 同期遅延により キャプチャバッファにはタイマ値 n + 2 が格納されます 2 回目のキャプチャイベントはタイマ値 m の時に発生しています この場合 同期遅延に加えて伝播遅延が生じ キャプチャバッファには m + 3 が格納される事に注意してください 割り込みイベントは毎回のキャプチャイベントで生成されます 図 15-3: 単純キャプチャイベントのタイミング図 ( 立ち上がりエッジ毎にキャプチャ ) Peripheral Clock Timer Count n n + 1 n + 2 m m + 1 m + 2 m + 3 m + 4 m + 5 ICx Input Capture Data n + 2 m + 3 Capture Interrupt (1) Note 1: このキャプチャイベントフラグはユーザソフトウェアでクリアする必要があります 図 15-4 は 単純キャプチャモード ( 立ち下がりエッジ毎にキャプチャ : CM<2:0> ビット (ICxCON<2:0>) = 010 イベント毎に割り込み生成 : ICI<1:0> ビット (ICxCON<6:5>) = 00 ) に設定した入力キャプチャモジュールにおける 1 回のキャプチャイベントを示しています この例では タイマ周波数を周辺モジュール用クロック周波数よりも低くしています タイマ値 n の時にキャプチャイベントが発生すると キャプチャバッファには値 n が格納され 割り込みイベントが生成されます 図 15-4: 単純キャプチャイベントのタイミング図 ( 立ち下がりエッジ毎にキャプチャ ) Peripheral Clock Timer Count n n + 1 ICx Input Capture Data n Capture Interrupt (1) Note 1: このキャプチャイベントフラグはユーザソフトウェアでクリアする必要があります DS61122F_JP - p. 15-10 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ 図 15-5 は 単純キャプチャモード ( 立ち上がりエッジ毎にキャプチャ : ICM<2:0> ビット (ICxCON<2:0>) = 110 立ち下がりエッジでキャプチャ開始 : FEDGE ビット (ICxCON<9>) = 0 イベント 2 回毎に割り込み生成 : ICI<1:0> ビット (ICxCON<6:5>) = 01 ) に設定した入力キャプチャモジュールにおける 2 回のキャプチャイベントを示しています 最初の立ち下がりエッジはタイマ値 n の時に発生し キャプチャバッファには値 n + 2 が格納されます 次の立ち上がりエッジはタイマ値 m の時に発生し キャプチャバッファには値 m + 2 が格納され 割り込みが生成されます 図 15-5: 単純キャプチャイベントのタイミング図 ( 全エッジ毎にキャプチャ 立ち下がりエッジで開始 ) Peripheral Clock Timer Count n n + 1 n + 2 m m + 1 m + 2 m + 3 m + 4 ICx Input Capture Data n + 2 m + 2 Capture Interrupts (1) Note 1: このキャプチャイベントフラグはユーザソフトウェアでクリアする必要があります 15.5.2 プリスケールキャプチャイベントモード プリスケールキャプチャイベントモードの場合 入力キャプチャモジュールは立ち上がりエッジ 4 回毎または 16 回毎にキャプチャイベントをトリガします 表 15-3 に プリスケールキャプチャイベントモードの設定を示します 表 15-3: プリスケールキャプチャイベントモードの設定 ICM<2:0> の設定 トリガ 1 回あたりの立ち上がりエッジ数 100 4 101 16 プリスケーラキャプチャカウンタは キャプチャ入力の立ち上がりエッジ毎にインクリメントします モードの選択に応じ プリスケーラカウンタの値が 4 または 16 に一致すると カウンタは 有効な キャプチャイベント信号を出力します 有効なキャプチャイベント信号は周辺モジュール用クロックに同期され 同期後のキャプチャイベント信号がタイマカウントキャプチャをトリガします キャプチャ入力は周辺モジュール用クロックに同期する必要があるため モジュールはキャプチャイベントの 2 ~ 3 TPB ( 周辺モジュール用クロックサイクル ) 後に有効なタイマカウント値をキャプチャします 入力キャプチャ割り込みは ICI<1:0> ビット (ICxCON<6:5>) の設定に従って キャプチャイベント 1 ~ 4 回毎に生成されます 詳細は 15.7 入力キャプチャ割り込み を参照してください 15 プリスケーラキャプチャイベントモードへ切り換える前に ユーザソフトウェアでキャプチャモジュールを無効にする (ON ビット ICxCON<15> をクリアする ) 事を推奨します 他の動作モードから直接プリスケーラキャプチャイベントモードに切り変えた場合 プリスケーラはリセットされず 不用意なキャプチャイベントが発生する可能性があります 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-11

PIC32 ファミリリファレンスマニュアル プリスケーラカウンタは下記のイベント発生時にクリアされます 入力キャプチャモジュールの無効化 (ON = 0 (ICxCON<15>)) 入力キャプチャモジュールのリセットキャプチャピンは内部フリップフロップをトリガするため 入力キャプチャパルスの HIGH および LOW 時間は周辺モジュール用クロック周期に制限されません 入力キャプチャの電気的仕様の詳細は 各デバイスデータシート内の 電気的特性 を参照してください 図 15-6 に プリスケーラキャプチャイベントモード時の入力キャプチャモジュールにおけるキャプチャイベントを示します プリスケーラは キャプチャ入力の立ち上がりエッジ 4 回毎にタイマ値をキャプチャし (ICM<2:0> ビット (ICxCON<2:0>) = 100) キャプチャイベント毎に割り込みを生成する (ICI<1:0> ビット (ICxCON<6:5>) = 00 ) よう設定されています タイマ値 n でキャプチャ入力の 4 回目の立ち上がりエッジが発生し プリスケーラ出力が同期されます 同期遅延により キャプチャバッファにはタイマ値 n + 2 が格納されます また キャプチャイベントによる割り込み信号が生成されます 図 15-6: プリスケーラキャプチャイベントのタイミング図 Tpb Peripheral Clock Timer Count n n + 1 n + 2 n + 3 n + 4 Capture Input Prescaler Count 1 2 3 4 Prescaler Output Capture Data n + 2 Capture Interrupt (1) Note 1: このキャプチャイベントフラグはユーザソフトウェアでクリアする必要があります 15.5.3 エッジ検出 ( ホールセンサ ) モード エッジ検出モードの場合 入力キャプチャモジュールはキャプチャ入力の全てのエッジ ( 立ち上がり / 立ち下がり両エッジ ) 毎にタイマカウント値をキャプチャします エッジ検出モードを選択するには ICM<2:0> ビット (ICxCON<2:0>) を 001 に設定します このモードはキャプチャプリスケーラを使わず 入力キャプチャオーバーフロービット ICOV (ICxCON<4>) を更新しません また 割り込み制御ビット ICI<1:0> (ICxCON<6:5>) を無視し タイマカウントをキャプチャするたびに割り込みイベントを生成します 概略タイミング図を図 15-7 に示します 単純キャプチャイベントモードと同様に 入力キャプチャロジックはキャプチャ入力信号の立ち上がりエッジと立ち下がりエッジを検出し 周辺モジュール用クロックに同期してタイマ値をキャプチャします 立ち上がりまたは立ち下がりエッジが発生すると 入力キャプチャモジュールはキャプチャバッファにタイムベース値を書き込みます キャプチャ入力は周辺モジュール用クロックに同期する必要があるため モジュールはキャプチャイベントの 2 ~ 3 TPB ( 周辺モジュール用クロックサイクル ) 後に有効なタイマカウント値をキャプチャします キャプチャピンは周辺モジュール用クロックに基づいてサンプリングされるため キャプチャパルスには周辺モジュール用クロック周期よりも長い HIGH および LOW 時間が必要です DS61122F_JP - p. 15-12 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ 図 15-7 に エッジ検出モード (ICM<2:0> = 001 (ICxCON<2:0)) 時の入力キャプチャモジュールにおける 3 回のキャプチャイベントを示します キャプチャ入力の状態遷移はタイマ値 n n + 2 n + 4 で発生していますが 同期および伝播遅延により キャプチャバッファにはタイマ値 n + 2 n + 4 n + 6 が格納されます また データキャプチャイベントのたびに割り込み信号が生成されます 図 15-7: エッジ検出キャプチャイベントのタイミング図 Note 1: このキャプチャイベントフラグはユーザソフトウェアでクリアする必要があります 2: PIC32MX3XX と PIC32MX4XX では 割り込み 3 をクリアするだけで割り込み 1 および 2 もクリアされます その他の PIC32 デバイスの場合 各割り込みは永続的であるため ネスティングされている最大深さの割り込みまで別々にクリアする必要があります 15.5.4 割り込み専用モード 割り込み専用モードはデバイス動作時には機能せず スリープまたはアイドル中にのみ動作します 入力キャプチャモジュールを割り込み専用モード (ICM<2:0> = 111) に設定すると 入力キャプチャモジュールはスリープまたはアイドルモード時に割り込みピンとして機能します 入力キャプチャの立ち上がりエッジで割り込みがトリガされ デバイスは復帰します タイマ値はキャプチャされず FIFO バッファも更新されません タイマ値はキャプチャされないため タイマ選択ビット ICTMR (ICxCON<7>) は無視されます 従ってタイマ源を設定する必要はありません 復帰割り込みは最初の立ち上がりエッジで生成されるため このモードではプリスケーラを使いません 従って ICI<1:0> ビット (ICxCON<6:5>) は無視されます デバイスがスリープまたはアイドルモードを終了すると 割り込み信号は無効になります このモードは もっぱら外部復帰要因としてのみ使います キャプチャピンは内部フリップフロップをトリガするため 入力キャプチャパルスの HIGH および LOW 時間は周辺モジュール用クロック周期に制限されません 入力キャプチャの詳細な電気的仕様については 各デバイスデータシート内の 電気的特性 を参照してください 15 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-13

PIC32 ファミリリファレンスマニュアル 15.6 キャプチャバッファ動作 各入力キャプチャモジュールは個別の 4 段 FIFO バッファを備えます ユーザアプリケーションはバッファレジスタ (ICxBUF) を介してバッファにアクセスできます ICxBUF は入力キャプチャロジックにより書き込まれ ユーザアプリケーションのみが読み出せます ICxBUF への書き込みは無視されます FIFO バッファの状態は下記の 2 つのステータスフラグにより示されます ICBNE (ICxCON<3>) 入力キャプチャバッファ非エンプティ ICOV (ICxCON<4>) 入力キャプチャオーバーフロー入力キャプチャモジュールを無効化 / リセット (ON ビット (ICxCON<15>) = 0) するとステータスフラグはクリアされ バッファはエンプティ状態にクリアされます ICBNE フラグは最初の入力キャプチャイベントでセットされ FIFO から全てのキャプチャイベントが読み出されるまでセットされたままになります 例えばキャプチャイベントが 3 回発生した場合 ICBNE フラグをクリアするにはキャプチャ FIFO バッファを 3 回読み出す必要があります キャプチャイベントが 4 回発生した場合は 4 回読み出す必要があります FIFO バッファを読み出すたびに読み出しポインタが調整され 残りのエントリは FIFO 内で次に利用可能な先頭位置に向かって移動します 32 ビットキャプチャモードで 16 ビットずつ読み出す場合 上位 16 ビットを最後に読み出す必要があります FIFO 読み出しポインタは最上位バイト (MSB) の読み出し時に進みます 4 回のキャプチャイベントが発生して FIFO バッファがフル状態である場合 FIFO バッファを読み出す前に 5 回目のキャプチャイベントが発生するとオーバーフロー条件が発生し ICOV ビット (ICxCON<4>) が論理 1 にセットされます 5 回目のキャプチャイベントは書き込まれず 割り込みキャプチャエラー割り込みが生成されます 後続のキャプチャイベントが発生しても オーバーフロー条件をクリアするまで FIFO の内容は変更されません 一部の PIC32 マイクロコントローラは ICxE 割り込みをサポートしません 詳細は各デバイスのデータシートを参照してください オーバーフロー条件は下記のいずれかの方法によりクリアされます モジュールを無効にする (ON ビット (ICxCON<15>) = 0) ICBNE ビット (ICxCON<3>) = 0 になるまでキャプチャバッファを読み出す デバイスをリセットする ICI<1:0> = 00 または ICM<2:0> = 001 に設定した場合 バッファオーバーフローが発生した後も割り込みは発生し続け ICOV ビットはクリアされたままです 入力キャプチャモジュールを無効にした後ある時点で再度有効にした場合 FIFO バッファの内容は不確定であり 読み出し結果は予測できません キャプチャイベントを一度も受け取っていない状態で FIFO を読み出した場合の結果も予測できません DS61122F_JP - p. 15-14 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ 15.7 入力キャプチャ割り込み 入力キャプチャモジュールは キャプチャイベントが指定回数発生する毎に割り込みイベント信号を生成できます キャプチャイベントとは FIFO へのタイマ値の書き込み として定義されます 割り込みイベントをトリガするために必要なキャプチャイベントの回数は ICI<1:0> 制御ビット (ICxCON<6:5>) で設定します ICBNE ビット (ICxCON<3>) が 0 にクリアされると 割り込み用イベントカウントもクリアされます これにより 割り込み用イベントカウントを FIFO 内の実際のエントリ数に一致させる事ができます 例として ICI<1:0> = 01 ( キャプチャイベント 2 回毎に割り込む ) の場合 下記のようなシーケンスが考えられます 1. モジュールを有効にする : 割り込み用イベントカウント = 0 2. キャプチャイベント : FIFO 内に 1 つのエントリ 割り込み用イベントカウント = 1 3. FIFO を読み出す : FIFO はエンプティ 割り込み用イベントカウント = 0 4. キャプチャイベント : FIFO 内に 1 つのエントリ 割り込み用イベントカウント = 1 5. キャプチャイベント : FIFO 内に 2 つのエントリ 割り込み用イベントカウント = 2 6. 割り込みを生成 : 割り込み用イベントカント = 0 7. キャプチャイベント : FIFO 内に 3 つのエントリ 割り込み用イベントカウント = 1 8. FIFO 内の 3 つのエントリを読み出す : FIFO はエンプティ 割り込み用イベントカウント = 0 9. キャプチャイベント : FIFO 内に 1 つのエントリ 割り込み用イベントカウント = 1 10. FIFO を読み出す :FIFO はエンプティ 割り込み用イベントカウント = 0 最初のキャプチャイベント とは OFF モードからモード変更した後または ICBNE が 0 にクリアされた後最初に発生するキャプチャイベントとして定義します ICI<1:0> が 00 以外または ICM<2:0> が 001 以外である場合 オーバーフローが発生すると入力キャプチャモジュールは入力キャプチャイベントの生成を止め かわりに入力キャプチャエラーイベントを生成します この割り込みはオーバーフロー条件がクリアされるまで持続します ( オーバーフロー条件のクリア方法については 15.6 キャプチャバッファ動作 を参照してください ) 一部の PIC32 マイクロコントローラは ICxE 割り込みをサポートしません 詳細は各デバイスのデータシートを参照してください アプリケーションによっては デバイスに対して指示を出すために 入力キャプチャピンを補助的な外部割り込み要因として使う事がしばしばあります ICI<1:0> = 00またはICM<2:0> = 001 の場合 割り込みイベントは FIFO のオーバーフローに関係なく発生します オーバーフローが発生しても後続の割り込みイベントは抑止されないため キャプチャバッファに対してダミー読み出しを実行してイベントをクリアする ( オーバーフローを防ぐ ) 必要はありません この場合も ICOV フラグ (ICxCON<4>) はオーバーフロー条件が発生するとセットされたままになります 図 15-8 に 立ち上がりエッジ毎にタイマ値をキャプチャし (ICM<2:0> = 011) キャプチャ 4 回毎に割り込み生成する (ICI<1:0> = 11) よう設定した入力キャプチャモジュールにおける 5 回のキャプチャイベントを示します 4 回目のキャプチャはタイマ値 n + 8 をキャプチャし 割り込みイベントをトリガしている事に注意してください 図 15-8: 割り込みイベント (ICXCON.ICM<2:0> = 011 ICXCON.ICI<1:0> = 11) Peripheral Clock Timer Count n + 1 n + 2 n + 3 n + 4 n + 5 n + 6 n + 7 n + 8 n + 9 n + 10 n + 11 Capture Input 15 Capture Data n + 2 n + 4 n + 6 n + 8 n + 10 Capture Interrupt (1) Note 1: このキャプチャイベントフラグはユーザソフトウェアでクリアする必要があります 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-15

PIC32 ファミリリファレンスマニュアル 15.7.1 割り込み制御ビット 各入力キャプチャモジュールには割り込みステータスフラグビット (ICxIF) 割り込みエラーステータスビット (ICxE) 割り込みイネーブルビット (ICxIE) 割り込み優先度制御ビット (ICxIP) 割り込み副優先度制御ビット (ICxIS) が割り当てられています 周辺モジュール割り込みの詳細はセクション 8. 割り込み (DS61108) 内の 8.2 制御レジスタ を参照してください 15.7.2 割り込みの永続性 入力キャプチャ割り込みは 割り込みを発生させた条件をクリアしない限り持続します 加えて その条件をクリアしない限り 割り込みは即座に再発生します 表 15-4 に 割り込みの生成条件と持続条件の一覧を示します 一部の PIC32 マイクロコントローラは ICxE 割り込みまたは永続的割り込みをサポートしません 詳細は各デバイスのデータシートを参照してください 表 15-4: 割り込みの持続条件 ICxCON 生成条件持続条件 ICI<1:0> = 11 ICI<1:0> = 10 ICI<1:0> = 01 ICI<1:0> = 00 またはエッジ検出モード (ICxCON レジスタ ( レジスタ 15-1) 内の ICM<2:0> ビット参照 ) ICOV = 1 キャプチャイベント 4 回毎に割り込む キャプチャイベント 3 回毎に割り込む キャプチャイベント 2 回毎に割り込む キャプチャイベント毎に割り込む FIFO がフル状態で次のキャプチャイベントが発生すると割り込む FIFO 内のエントリ数が 4 であれば割り込みはアクティブ FIFO 内のエントリ数が 3 であれば割り込みはアクティブ FIFO 内のエントリ数が 2 であれば割り込みはアクティブ FIFO 内のエントリ数が 1 であれば割り込みはアクティブ エラー条件フラグ (ICxCON.ICOV) がクリアされるまで割り込みはアクティブ DS61122F_JP - p. 15-16 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ 15.8 省電力モード時の動作 15.8.1 スリープモード時の入力キャプチャ動作 デバイスがスリープモードに移行すると周辺モジュール用クロックは停止します スリープモードでは 入力キャプチャモジュールは外部割り込み要因としてのみ機能できます このモード ( 割り込み専用モード ) は ICM<2:0> 制御ビット (ICxCON<2:0>) を 111 に設定すると有効になります このモードでは キャプチャピンの立ち上がりエッジでデバイスがスリープから復帰します 対応するモジュール割り込みイネーブルビットがセットされており かつモジュールの優先度が必要な条件を満たしていれば割り込みが生成されます 詳細は 15.5.4 割り込み専用モード を参照してください 入力キャプチャモジュールを ICM<2:0> = 111 以外のモードに設定した状態でデバイスがスリープモードに移行した場合 外部ピンで立ち上がりまたは立ち下がりエッジが発生しても スリープからの復帰は発生しません 15.8.2 アイドルモード時の入力キャプチャ動作 デバイスがアイドルモードに移行しても周辺モジュール用クロック源は動作し続けますが CPU はコード実行を停止します アイドル時停止制御ビット SIDL (ICxCON<13>) により アイドルモード時にモジュールが停止するのか動作を継続するのかが決まります SIDL = 0 に設定するとモジュールはアイドルモード中も動作し続けます 割り込み専用モード (ICM<2:0> = 111) は SIDL = 0 であればアイドルモード中に割り込みを生成できます このモードはプロセッサの動作中に割り込みを生成しません 詳細は 15.5.4 割り込み専用モード を参照してください SIDL = 1 に設定した場合 デバイスがアイドルモードに移行するとモジュールは停止します この場合 モジュールはスリープモード時と同様に機能します 詳細は 15.5.4 割り込み専用モード を参照してください 15.8.3 スリープまたはアイドルモードからのデバイスの復帰 割り込み専用モードを有効にしている場合 スリープまたはアイドルモード中の入力キャプチャイベントはデバイス復帰または割り込み ( 有効な場合 ) を生成できます 詳細は 15.5.4 割り込み専用モード を参照してください 15 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-17

PIC32 ファミリリファレンスマニュアル 15.9 デバッグモード時の入力キャプチャ動作 FRZ ビット (ICxCON<14>) により デバッグモードで CPU がデバッグ例外コードを実行している時 ( アプリケーションは停止 ) に入力キャプチャモジュールが動作するかどうかが決まります FRZ を 0 に設定した場合 デバッグモード時にアプリケーションが停止しても入力キャプチャモジュールは動作し続けます FRZ を 1 に設定した場合 デバッグモード時にアプリケーションが停止すると入力キャプチャモジュールは動作をフリーズします ( モジュールの現在の状態を一切変更しません ) CPU が実行を再開するとモジュールも動作を再開します FRZ ビットは CPU がデバッグ例外モードで実行中である時にのみ読み書き可能です 他のモードでは FRZ は 0 として読み出されます デバッグモード中に FRZ ビットを変更しても 現在実行中のデバッグ例外モードには影響しません 新しい設定は 現在のデバッグモードを終了した後に再度デバッグモードに移行するまで効力を持ちません デバッグ例外モード中 デバッグモードに移行した時 FRZ ビットはモジュールの状態を読み出します 15.9.1 フリーズ時 (FRZ = 1) のキャプチャ動作 フリーズ中のキャプチャ動作はモジュールに対する変更を生じません エッジ検出ロジックは フリーズ中に発生した状態遷移がフリーズ終了後不用意に検出されてしまう事を防ぎます プリスケーラロジックはデバッグモード中もフリーズしません 15.10 I/O ピンの制御 15.11 設計のヒント フリーズ中にエミュレータは入力キャプチャ FIFO を読み出せますが ユーザアプリケーションから見た FIFO ステータスフラグは変わりません 入力キャプチャモジュールを有効にする際 I/O ピンの入出力方向が対応する TRIS ビットで 入力 に設定されている事をユーザアプリケーションで確認する必要があります 入力キャプチャモジュールを有効にしただけではピンの方向は設定されません さらに その入力ピンに多重化されている他の周辺モジュールは全て無効にする必要があります 質問 1: 回答 : 入力キャプチャモジュールを使ってデバイスをスリープモードから復帰できますか はい できます 入力キャプチャモジュールの ICM<2:0> ビット (ICxCON<2:0>) を 111 に設定し 対応するモジュール割り込みイネーブルビットをセットする (ICIE = 1) と キャプチャピンの立ち上がりエッジでデバイスをスリープから復帰させる事ができます 詳細は 15.5.4 割り込み専用モード を参照してください DS61122F_JP - p. 15-18 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ 15.12 関連アプリケーションノート 本セクションに関連するアプリケーションノートの一覧を次に示します 一部のアプリケーションノートは PIC32 デバイスファミリ向けではありません ただし 概念は共通しており 変更が必要であったり制限事項が存在するものの利用が可能です 入力キャプチャモジュールに関連する最新のアプリケーションノートは以下の通りです タイトル CCP モジュールの使用超音波距離計測の実装 アプリケーションノート番号 AN594 AN597 PIC32 ファミリデバイス関連のアプリケーションノートとサンプルコードはマイクロチップ社のウェブサイト (www.microchip.com) でご覧になれます 15 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-19

PIC32 ファミリリファレンスマニュアル 15.13 改訂履歴 リビジョン A (2007 年 10 月 ) 本書の初版 リビジョン B (2007 年 10 月 ) 機密扱いのステータスを解除して内容を更新 リビジョン C (2008 年 4 月 ) ステータスを Preliminary に改訂 U-0 を r-x に改訂 ビット名から x を削除 リビジョン D (2008 年 6 月 ) レジスタ 5-1/15-3/15-4/15-5/15-6/15-7/15-8/15-9 の Note を改訂 予約済みビットを Maintain as から Write に変更 ON ビット (ICxCON レジスタ ) に Note を追加 リビジョン E (2009 年 10 月 ) このリビジョンでの変更内容は以下の通りです 文章および体裁の変更等 本書全体の細部を修正 下記の図を更新 : - 単純キャプチャイベントのタイミング図 ( 立ち上がりエッジ毎にキャプチャ ) ( 図 15-3) - 単純キャプチャイベントのタイミング図 ( 立ち下がりエッジ毎にキャプチャ ) ( 図 15-4) - 単純キャプチャイベントのタイミング図 ( 全エッジ毎にキャプチャ 立ち下がりエッジで開始 ) ( 図 15-5) - プリスケーラキャプチャイベントのタイミング図 ( 図 15-6) - エッジ検出キャプチャイベントのタイミング図 ( 図 15-7) - 割り込みイベント (ICXCON.ICM<2:0> = 011 ICXCON.ICI<1:0> = 11) ( 図 15-8) 15.1 はじめに の網掛け注釈を更新 15.2 入力キャプチャレジスタ の網掛け注釈を削除 割り込みレジスタの要約 ( 表 15-1) を下記のように更新 : - クリア セット 反転レジスタに関する全ての記述を削除 - アドレスオフセット 列を追加 - クリア セット 反転レジスタに関する Note 1 2 3 を追加 ICxCON レジスタ ( レジスタ 15-1) に クリア / セット / 反転レジスタに関する Note1 2 3 を追加 IFS0 IEC0 IPC1 IPC2 IPC3 IPC4 IPC5 レジスタを削除 ICxCON: 入力キャプチャ x 制御レジスタ ( レジスタ 15-1) 内の ICM<2:0> = 111 のビット定義を更新 15.3 タイマの選択 の第 1 段落を更新し タイムベース用に使うタイマの形成方法について明確化 15.5.1 単純キャプチャイベントモード の第 1 段落の内容を削除し 表 15-2 に記載 15.5.2 プリスケールキャプチャイベントモード の第 1 段落の内容を削除し 表 15-3 に記載 15.5.4 割り込み専用モード の 3 つの段落全てを更新 15.6 キャプチャバッファ動作 に網掛け注釈を追加し 第 6 段落を更新 15.7 入力キャプチャ割り込み 内のキャプチャイベントシーケンスを更新 15.7.1 割り込み制御ビット に割り込みエラーステータスビット (ICxE) に関する記述を追加 15.7.2 割り込みの永続性 を追加 15.8.2 アイドルモード時の入力キャプチャ動作 の第 2 段落を更新して割り込み専用モード時の動作を明確化 DS61122F_JP - p. 15-20 2013 Microchip Technology Inc.

セクション 15. 入力キャプチャ リビジョン E (2009 年 10 月 ) ( 続き ) 15.8.3 スリープまたはアイドルモードからのデバイスの復帰 を更新して割り込み専用モード時の動作を明確化 15.9.1 フリーズ時 (FRZ = 1) のキャプチャ動作 の第 1 段落を更新し 第 2 段落を削除 15.9.2 デバッグモード時のキャプチャバッファの動作 を削除 リビジョン F (2010 年 11 月 ) このリビジョンでの変更内容は以下の通りです 表現および体裁の変更等 本書全体の細部を修正 ビット名 ICFEDGE を FEDGE に変更 ビット名 ICC32 を C32 に変更 15.6 キャプチャバッファ動作 の箇条書きの下に割り込みに関する新しい注釈ボックスを追加 15 入力キャプチャ 2013 Microchip Technology Inc. DS61122F_JP - p. 15-21

PIC32 ファミリリファレンスマニュアル NOTE: DS61122F_JP - p. 15-22 2013 Microchip Technology Inc.

マイクロチップ社製デバイスのコード保護機能に関して次の点にご注意ください マイクロチップ社製品は 該当するマイクロチップ社データシートに記載の仕様を満たしています マイクロチップ社では 通常の条件ならびに仕様に従って使用した場合 マイクロチップ社製品のセキュリティレベルは 現在市場に流通している同種製品の中でも最も高度であると考えています しかし コード保護機能を解除するための不正かつ違法な方法が存在する事もまた事実です 弊社の理解ではこうした手法は マイクロチップ社データシートにある動作仕様書以外の方法でマイクロチップ社製品を使用する事になります このような行為は知的所有権の侵害に該当する可能性が非常に高いと言えます マイクロチップ社は コードの保全性に懸念を抱くお客様と連携し 対応策に取り組んでいきます マイクロチップ社を含む全ての半導体メーカーで 自社のコードのセキュリティを完全に保証できる企業はありません コード保護機能とは マイクロチップ社が製品を 解読不能 として保証するものではありません コード保護機能は常に進歩しています マイクロチップ社では 常に製品のコード保護機能の改善に取り組んでいます マイクロチップ社のコード保護機能の侵害は デジタルミレニアム著作権法に違反します そのような行為によってソフトウェアまたはその他の著作物に不正なアクセスを受けた場合は デジタルミレニアム著作権法の定めるところにより損害賠償訴訟を起こす権利が 本書に記載されているデバイスアプリケーション等に関する情報は ユーザの便宜のためにのみ提供されているものであり 更新によって無効とされる事があります お客様のアプリケーションが仕様を満たす事を保証する責任は お客様にあります マイクロチップ社は 明示的 暗黙的 書面 口頭 法定のいずれであるかを問わず 本書に記載されている情報に関して 状態 品質 性能 商品性 特定目的への適合性をはじめとする いかなる類の表明も保証も行いません マイクロチップ社は 本書の情報およびその使用に起因する一切の責任を否認します マイクロチップ社の明示的な書面による承認なしに 生命維持装置あるいは生命安全用途にマイクロチップ社の製品を使用する事は全て購入者のリスクとし また購入者はこれによって発生したあらゆる損害 クレーム 訴訟 費用に関して マイクロチップ社は擁護され 免責され 損害をうけない事に同意するものとします 暗黙的あるいは明示的を問わず マイクロチップ社が知的財産権を保有しているライセンスは一切譲渡されません 商標マイクロチップ社の名称とMicrochipロゴ dspic FlashFlex KEELOQ KEELOQ ロゴ MPLAB PIC PICmicro PICSTART PIC 32 ロゴ rfpic SST SST ロゴ SuperFlash UNI/O は 米国およびその他の国におけるマイクロチップ テクノロジー社の登録商標です FilterLab Hampshire HI-TECH C Linear Active Thermistor MTP SEEVAL Embedded Control Solutions Company は 米国におけるマイクロチップ テクノロジー社の登録商標です Silicon Storage Technology は その他の国におけるマイクロチップ テクノロジー社の登録商標です Analog-for-the-Digital Age Application Maestro BodyCom chipkit chipkit ロゴ CodeGuard dspicdem dspicdem.net dspicworks dsspeak ECAN ECONOMONITOR FanSense HI-TIDE In-Circuit Serial Programming ICSP Mindi MiWi MPASM MPF MPLAB 認証ロゴ MPLIB MPLINK mtouch Omniscient Code Generation PICC PICC-18 PICDEM PICDEM.net PICkit PICtail REAL ICE rflab Select Mode SQI Serial Quad I/O Total Endurance TSHARC UniWinDriver WiperLock ZENA Z-Scale は 米国およびその他の国におけるマイクロチップ テクノロジー社の登録商標です SQTP は 米国におけるマイクロチップ テクノロジー社のサービスマークです GestICとULPPは その他の国におけるMicrochip Technology Germany II GmbH & Co. & KG ( マイクロチップ テクノロジー社の子会社 ) の登録商標です その他 本書に記載されている商標は各社に帰属します 2012, Microchip Technology Incorporated, Printed in the U.S.A., All Rights Reserved. ISBN: 978-1-62076-563-0 QUALITY MANAGEMENT SYSTEM CERTIFIED BY DNV == ISO/TS 16949 == マイクロチップ社では Chandler および Tempe ( アリゾナ州 ) Gresham ( オレゴン州 ) の本部 設計部およびウェハー製造工場そしてカリフォルニア州とインドのデザインセンターが ISO/TS- 16949:2009 認証を取得しています マイクロチップ社の品質システムプロセスおよび手順は PIC MCU および dspic DSC KEELOQ コードホッピングデバイス シリアル EEPROM マイクロペリフェラル 不揮発性メモリ アナログ製品に採用されています さらに 開発システムの設計と製造に関するマイクロチップ社の品質システムは ISO 9001:2000 認証を取得しています 2013 Microchip Technology Inc. DS61122F_JP - p. 15-23

各国の営業所とサービス 北米本社 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel:480-792-7200 Fax:480-792-7277 技術サポート : http://www.microchip.com/ support URL: www.microchip.com アトランタ Duluth, GA Tel:678-957-9614 Fax:678-957-1455 ボストン Westborough, MA Tel:774-760-0087 Fax:774-760-0088 シカゴ Itasca, IL Tel:630-285-0071 Fax:630-285-0075 クリーブランド Independence, OH Tel:216-447-0464 Fax:216-447-0643 ダラス Addison, TX Tel:972-818-7423 Fax:972-818-2924 デトロイト Farmington Hills, MI Tel:248-538-2250 Fax:248-538-2260 インディアナポリス Noblesville, IN Tel:317-773-8323 Fax:317-773-5453 ロサンゼルス Mission Viejo, CA Tel:949-462-9523 Fax:949-462-9608 サンタクララ Santa Clara, CA Tel:408-961-6444 Fax:408-961-6445 トロント Mississauga, Ontario, Canada Tel:905-673-0699 Fax:905-673-6509 アジア / 太平洋アジア太平洋支社 Suites 3707-14, 37th Floor Tower 6, The Gateway Harbour City, Kowloon Hong Kong Tel:852-2401-1200 Fax:852-2401-3431 オーストラリア - シドニー Tel:61-2-9868-6733 Fax:61-2-9868-6755 中国 - 北京 Tel:86-10-8569-7000 Fax:86-10-8528-2104 中国 - 成都 Tel:86-28-8665-5511 Fax:86-28-8665-7889 中国 - 重慶 Tel:86-23-8980-9588 Fax:86-23-8980-9500 中国 - 杭州 Tel:86-571-2819-3187 Fax:86-571-2819-3189 中国 - 香港 SAR Tel:852-2943-5100 Fax:852-2401-3431 中国 - 南京 Tel:86-25-8473-2460 Fax:86-25-8473-2470 中国 - 青島 Tel:86-532-8502-7355 Fax:86-532-8502-7205 中国 - 上海 Tel:86-21-5407-5533 Fax:86-21-5407-5066 中国 - 瀋陽 Tel:86-24-2334-2829 Fax:86-24-2334-2393 中国 - 深圳 Tel:86-755-8864-2200 Fax:86-755-8203-1760 中国 - 武漢 Tel:86-27-5980-5300 Fax:86-27-5980-5118 中国 - 西安 Tel:86-29-8833-7252 Fax:86-29-8833-7256 中国 - 厦門 Tel:86-592-2388138 Fax:86-592-2388130 中国 - 珠海 Tel:86-756-3210040 Fax:86-756-3210049 アジア / 太平洋インド - バンガロール Tel:91-80-3090-4444 Fax:91-80-3090-4123 インド - ニューデリー Tel:91-11-4160-8631 Fax:91-11-4160-8632 インド - プネ Tel:91-20-2566-1512 Fax:91-20-2566-1513 日本 - 大阪 Tel:81-6-6152-7160 Fax:81-6-6152-9310 日本 - 東京 Tel:81-3-6880-3770 Fax:81-3-6880-3771 韓国 - 大邱 Tel:82-53-744-4301 Fax:82-53-744-4302 韓国 - ソウル Tel:82-2-554-7200 Fax:82-2-558-5932 または 82-2-558-5934 マレーシア - クアラルンプール Tel:60-3-6201-9857 Fax:60-3-6201-9859 マレーシア - ペナン Tel:60-4-227-8870 Fax:60-4-227-4068 フィリピン - マニラ Tel:63-2-634-9065 Fax:63-2-634-9069 シンガポール Tel:65-6334-8870 Fax:65-6334-8850 台湾 - 新竹 Tel:886-3-5778-366 Fax:886-3-5770-955 台湾 - 高雄 Tel:886-7-213-7828 Fax:886-7-330-9305 台湾 - 台北 Tel:886-2-2508-8600 Fax:886-2-2508-0102 タイ - バンコク Tel:66-2-694-1351 Fax:66-2-694-1350 ヨーロッパオーストリア - ヴェルス Tel:43-7242-2244-39 Fax:43-7242-2244-393 デンマーク - コペンハーゲン Tel:45-4450-2828 Fax:45-4485-2829 フランス - パリ Tel:33-1-69-53-63-20 Fax:33-1-69-30-90-79 ドイツ - ミュンヘン Tel:49-89-627-144-0 Fax:49-89-627-144-44 イタリア - ミラノ Tel:39-0331-742611 Fax:39-0331-466781 オランダ - ドリューネン Tel:31-416-690399 Fax:31-416-690340 スペイン - マドリッド Tel:34-91-708-08-90 Fax:34-91-708-08-91 イギリス - ウォーキンガム Tel:44-118-921-5869 Fax:44-118-921-5820 11/29/12 DS61122F_JP - p. 15-24 2013 Microchip Technology Inc.