n_shinichi’s blog

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

MENU

M5StickCでの赤外線シリアル・・・やってみれば実は簡単...  覚えメモ

やってみれば実は思った以上に簡単だった。

 いろいろ勘違いがあってちょいと手間取ったけど。

 

写真は数値を赤外線LEDで送信し(TX)、送信したデータを受信(RX)、

エコーバックしてる時のもの。

 

送信LED,受信フィルタICは先回と同じ。

 

●結線

送信回路  

回路って程のモノじゃないけど
・フツーのシリアル信号をポートG0から出力

・ポートG25は38kHz(duty約20%)

LEDと抵抗200Ωを直列に繋いだものの両端を差し込んでるだけ。

 この辺は抵抗値、duty比変えたら通信距離はたぶん

 けっこう変えれると思う。10mくらいは簡単なんじゃないかな。

論理積としての動作で先日のオシロ波形のように

シリアル信号(L)部は38kHzでの搬送波に乗るかっこうになる。

 

受信回路は

 これまた先日のリモコン38kHz用フィルタICをポートG26に繋いだだけ。

 

 

やろうとすること自体は難しくない...

できるんだったらけっこういろいろ使い道もあるんじゃないかなと

思うのだけど検索しても全然見つけられない。

 

シリアル通信ラインの間にマイコン通して38kHzとAND取るのは

いくつかあったけど、マイコン自体の信号をマイコンで38kHzの

搬送波も作ってAND取って送信して・・・38kHz変調を掛ける...

 

赤外線リモコンの受信ICでフィルタ処理して普通のシリアル信号に

戻して使い、シリアル信号の無線化ってのは見つけられなかった。

 

無線通信、

微小電力で近距離、通信速度はそんなに必要ないってニーズは

あんまりないってことかな。。

 

 ESP32とかのESPNOW、BLEなんかかなり省電力だもんな...

  ばったもんBLEイヤホンのマイコンが書き換えとか
  できるならいいんだけどな

マイクロロボとかでは電池小さい。

 マイコンも省電力にしたい・・・ビット数少なく、遅いマイコンになる

 電波モノ無線は厳しい。

 

で。。。省電力で扱いやすいのが赤外線モノ

 IrDAモノはちょっと面倒 そんなに通信速度いらないなら

 赤外線リモコン関係のICとか安い。そこそこ小さい。

 それでいい感じにできるかなと試し始めた。

 

赤外線リモコン通信そのもの使うのを試すのは

 以前紹介したけど連続した通信でもってさらに双方向通信だと

 なんかうまくいかない。数Hz程度しかできなくてなんか不安定で

 原因がすぐにわからんかった。

 

なので、、、、

 単純にシリアル通信を赤外線リモコンのハード仕様で

 使うのが後々も楽かな? と方針変更。

 

でもって後で動画にある内容

ハードは最初の通りでスケッチはこんな感じ。

ちゃんと整理してない、エラー処理とかなんもしてない。

ビット演算とかで負荷少なくできるけどなんもしてない。

4800bpsまで通信は一応できるけど

波形見ると余裕ない感じなので2400bpsで動かしてる。

 

 

 

受信があったら

・データを読み込み

 

200ms毎に

・電池電圧を表示

・送信したデータ表示

・最後に受信しているデータ表示

 

1秒毎に

・カウントアップ

・カウント値を1秒毎に送信

・電池電圧を測定


そのスケッチだと自分で送信したデータが受信できてれば

表示することになります。

送信出力にこれだと2ピン使ってるのでホントは

内部的に論理積とってやれば1ピンで済むのでいいのだけど
ぱっとできんかった・・・のでまたそこは別途考えよう