n_shinichi’s blog

日々の備忘録、 趣味のあれこれなど紹介 (すみません、メニュー、リンク、カテゴリー分けがうまくできてません、★記事一覧★で見てください...) NHK魔改造の夜ではDンソーのベテランアドバイザーってことで出ました♪

MENU

赤外線シリアルを作ってみよう。

赤外線通信、

 リモコン方式は双方向通信はけっこういじってみたけど

 Arduinoではうまくいかない。

 

 PSoCならたぶんなんてことないと思うのだけど。。。

  PSoCは後々フツーのことする時に残念になるのでそっちには戻りたくない。

 

で、ここはArduinoでなんとかしたいちょっと意地になってきた。

 

赤外線LEDはフツーにポートについてるだけのはず?なので

 ひとまずLチカ。 肉眼では全くわからないけど

 スマホのカメラと押すとちゃんとわかる。

 写真はいまいちだけど。

 

ここからはちょっと他人にはなんのこっちゃです・・・

通信は1kbps

 

青:ポートG0でシリアル1で出力 ”1”  と ”2” のところ

赤:つぶれて見えないけど38kHzの搬送波相当を割込みで作ったもの

 

データ 1 を出力してる時の最初の最初部分もっと拡大 1ms 1bit立ってる。

 

 

データ 1 が立つ瞬間付近さらに拡大

 計測結果にあるように赤い搬送波は38kHz に作り込んだ。

 dutyは20%

 

基本的には赤と青の信号のAND取った信号で赤外線LEDを叩けば
いいだけなんだけど・・・
躓き中。

Arduinoの動き? ESP32の動き? なんか原因不明の挙動する。

数百Hz程度までなら普通に青信号の出力を

pinModeのinput、outputの切り替えに赤い信号を使ってやれば

できるんだけど、、、なぜか不思議な動きになる。

 

何かがオーバーフローかウェイトが掛かる???みたいな感じで時々

 数秒止まる。 何が起きてるんだろう。。。

そういえば

  ESP32のデータシートをこれまでまじめに見たことない。

  Arduinoのライブラリも中身はよく知らずに使ってる。

 

pinMode をそんな高速で切り替えるなんて想定されてないよなぁ

 きっと・・・

 

明日、もーちょっと頑張ってみるかな。

ネットでは結構探したけどわからんかった。

M5StickC、外付けなしでポート操作でいけんか試す。。。

やっぱりそれができんともったいない。

 

あかんかったらしょうがないのでその赤と青のポートを外付けの
赤外線LEDを抵抗通して繋ぐ。。。かな。

それならマイコンの動作はもう関係ないので当たり前に

赤外線シリアルの格好にはなる。。。

 

これはちょっといけてないけど途中のメモ