slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
赤外線リモコンの信号受信 PowerPoint Presentation
Download Presentation
赤外線リモコンの信号受信

Loading in 2 Seconds...

play fullscreen
1 / 18

赤外線リモコンの信号受信 - PowerPoint PPT Presentation


  • 143 Views
  • Uploaded on

赤外線リモコンの信号受信. 前回に引き続き赤外線について学ぶ 今回は受信 新しい機能:インプットキャプチャ. 資料作成者 中村. 赤外線モジュールの仕様. 赤外線受信モジュールには「キャリア周波数」というものがある。 主に「40 kHz」、 「38 kHz」 。 今回使用するモジュールは「38 kHz」 。. High. Low. 受光モジュールの出力. 赤外線LEDの出力. High. Low. 受光モジュールの出力. ※ 出力が反転する. 赤外線 LED からHiを出力すると受信モジュールはLowを出力。

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '赤外線リモコンの信号受信' - dannon


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1
赤外線リモコンの信号受信
  • 前回に引き続き赤外線について学ぶ
  • 今回は受信
  • 新しい機能:インプットキャプチャ

資料作成者 中村

slide2
赤外線モジュールの仕様
  • 赤外線受信モジュールには「キャリア周波数」というものがある。
  • 主に「40kHz」、「38kHz」。
  • 今回使用するモジュールは「38kHz」。
slide3

High

Low

受光モジュールの出力

赤外線LEDの出力

High

Low

受光モジュールの出力

※ 出力が反転する

赤外線LEDからHiを出力すると受信モジュールはLowを出力。

逆に赤外線LEDからLowを出力すると受信モジュールはHiを出力。

slide4

リーダーパルス

0

1

0

1

0

この幅を計測する

受信信号の解析方法
  • 送られてくる信号の幅(時間)が計測できれば、その幅の違いで、1ビット・0ビットデータの区別ができる。
slide5
パルス幅を測る
  • パルス信号の始まりと終わりを検出するには、・ プログラム上で常に入力を監視してその変化を調べるポーリング方式・ ITUのインプットキャプチャ機能を利用してフラグの変化を監視する方法・ インプットキャプチャによる割り込み機能を利用した方法

などが考えられる。

slide6

入力信号

入力パルス

インプットキャプチャ機能
  • ITUの機能の1つ。
  • パルス幅や周期の測定ができる。

ITUのインプットキャプチャ機能を利用すると、パルスの立ち上がりと立下りを自動で検知し、そのときのTCNTの値を自動でGRAやGRBに書き込んでくれる機能などがあり便利です。

slide7

カウント値

FFFF

GRB

00

時間

計測時間

入力パルス

立下り

立上り

インプットキャプチャ機能
  • インプットキャプチャ/アウトプットコンペア端子(TIOCA、TIOCB)の入力エッジを検出して16TCNT の値を GR に転送することができる。検出エッジは立ち上がりエッジ/立ち下がりエッジ/両エッジから選択できる。

立上りを検出するか

立下りを検出するかは

レジスタで設定する。

入力信号

slide8

カウント値

IMFB1=1

FFFF

GRB

00

時間

入力パルス

計測時間

立下り

立上り

TNTC

00

1000 => GRB

インプットキャプチャ

パルス信号の始まりを検出してカウンタTCNTのカウントを開始し、パルス信号の終わりが検出された時のTCNTの値を読み取る。

slide9

リーダーパルス

0

1

0

1

※ストップビット

0

立下り

この幅を計測する

インプットキャプチャを使用した赤外線リモコン信号の解析インプットキャプチャを使用した赤外線リモコン信号の解析

信号の立下りを検出する

例:5ビットの信号の場合

※ ストップビットがないと最後の信号の立下りが検出できない

slide10
インプットキャプチャ

立下りで検出

カウント値

FFFF

GRB

00

時間

計測時間

16TNTC

00

XX ⇒ 0

YY

各パルス幅を測定するには

TNTCをクリアする必要がある

XX

YY

※ レジスタで設定可能

GRB

slide11
インプットキャプチャ割込み
  • 考え方はタイマ割り込みと同じ
  • タイマ割り込み ⇒ GRとのコンペアマッチで割込み発生
  • インプットキャプチャ割り込み ⇒ 立上りエッジ or 立下りエッジ検出で    割込み発生
slide12
インプットキャプチャ割込み関数

main処理

割り込み発生(立下りエッジ検出)

割り込み関数

2

1.ITU1.GRBの値にTNTCの値が入る⇒ パルス幅

2.カウンタをクリア

  ⇒ TNTC=0

slide13
使用するレジスタ
  • 受光モジュールの接続端子はPA5なので、ITU1を使用する。また、ジェネラルレジスタ(GR)はGRBを使用する。
  • タイマ I/O コントロールレジスタ(TIOR)インプットキャプチャの設定、検出エッジの設定
  • タイマコントロールレジスタ(16TCR)内部タイマの設定、クリア条件の設定
  • タイマインタラプトステータスレジスタ B(TISRB)割込みの許可/禁止の設定
  • タイマスタートレジスタ(TSTR)タイマのスタート
i o tior

TIOR

-

IOB2

IOB1

IOB0

-

IOA2

IOA1

IOA0

設定

1

1

0

1

1

0

0

0

タイマ I/O コントロールレジスタ(TIOR)の設定

GRA、GRB をアウトプットコンペアレジスタとして使用するか、インプットキャプチャレジスタとして使用するかを選択します。

またその機能を選択します。

・立下りエッジでGRBのインプットキャプチャ

IOB2 = 1, IOB1 = 0, IOB0 = 1

16 tcr

TCR

-

CCLR1

CCLR0

CKEG1

CKEG0

TPSC2

TPSC1

TPSC0

設定

1

0

1

0

0

0

1

1

タイマコントロールレジスタ(16TCR)

16TCNT のカウンタクロックの選択、外部クロック選択時のエッジの選択およびカウンタクリア要因の選択を行います。

・GRBのインプットキャプチャで16TCNTをクリア

    CCLR1 = 0, CCLR0 = 1

・内部クロック: 1/8でカウント

TPSC2 = 0, TPSC1 = 1, TOSC0 = 1

・1/8 クロック = 16/8 MHz = 2MHz = 0.5us

⇒ 1カウント 0.5 us

b tisrb

TISRB

-

IMIEB2

IMIEB1

IMIEB0

-

IMFB2

IMFB1

IMFB0

設定

1

0

1

0

1

0

0

0

タイマインタラプトステータスレジスタ B(TISRB)

GRB のコンペアマッチ/インプットキャプチャの発生を示し、GRB のコンペアマッチ/インプットキャプチャ割り込み要求の許可/禁止を制御する。

IMIEBビットを1にして、GRBのインプットキャプチャによる割り込み発生を許可

今回はITU1を使用するので、IMIEB1が対応する。

割り込みが発生すると、IMFB1が1になる。

slide17

TSTR

-

-

-

-

-

STR2

STR1

STR0

設定

1

0

0

0

1

0

1

0

タイマスタートレジスタ(TSTR)

チャネル 0~2 の 16TCNT の動作/停止を選択します。

STR1 = 1でIUT1スタート

STR1 = 0でITU1ストップ

slide18
インプットキャプチャ動作設定

インプットキャプチャ

入力の選択

(1)TIORにより、GRをインプットキャプチャレジスタ

  に設定し、インプットキャプチャ信号の入力エッジを

  立上りエッジ/立下りエッジ/両エッジの3種類から

  選択する。※ただし、対応するポートのDDRを0に

  クリアした状態でTIORの設定を行うこと。

(2)TSTRのSTRビットを1にセットして、16TCNTの

  カウント動作を開始する。

カウント動作開始

<インプットキャプチャ動作>

※今回対応するポートはDDRのビット5。初期状態は0。