Darkside(リンクエラー修正しました)

2019年11月09日の記事

2019年11月9日(土) 20:31

I2C共用断念

 I2Cアクセスしないときは、しっかり入力に切り替える。
 だが、不安定は解消しない。

 そこで、I2Cアクセスが重複しないよう、運用回避する。
 だが、なぜか不安定は解消しない。

 このままでは埒が空かないので、諦めてI2Cバスの共用を止める決断を下す。
 I2Cバスの共用は、すべてのPICでLCDとすべてのセンサーを共用できるメリットがある。だが、実のところ共用するセンサーは少ない。
1)加速度センサーを、サスアーム制御PICと Jetson Nano で共用する。
2)電流電圧センサーを、前照灯PICと受信機PICで共用する。
3)LCDを、すべてのPICで共用する。

 このうち、1)に関してはI2Cレベル変換基板を介しているため、オープンドレイン出力になっているはずだ。また、Jetson Nano もハードウェアI2Cなので、やはりオープンドレイン出力になっているはず。つまり、センサーの共用は問題ないはず。

 次に2)だが、前照灯PICは電流しかモニターしない。いっぽう受信機PICは、電圧しかモニターしない。電圧検出を既存の手法みたいに分圧抵抗とPIC内蔵AD変換で行えば、センサーを読む必要は無くなる。消費電流が、コンマ数ミリアンペア増えるだけだ。
 するとセンサーは前照灯PICだけしか使用しないで済み、1対1接続にできる。

 最後の3)だが、LCDを使うのはあくまでデバッグあるいはPICプログラム修正時のみである。となれば、使い勝手が悪くても仕方ない。
 PIC個別にI2Cピンを引き出し、使用時にLCDを繋ぎ替えるようにするしかないだろう。

 既存のLCD接続端子は、1)に同居している。しおのため、サスアーム制御PICは、現状そのままのようにLCDを使える。それ以外の4つのPICは、I2Cピンを2ピンソケットで引き出しておく。
 他に電源が必要だから、LCDの4ピンソケットの隣に電源用2ピンソケットを増設。

 バッテリー電圧は10KΩ×2で半分にし、受信機PICで読み取る。

 更に、プルアップ抵抗も適切に追加せねばならない。
 I2Cレベル変換基板の5V側に、取り付ける。電源も、取り出せるようにする。

 LCDは電源をここに挿し、I2C線はPICごとの2ピンヘッダーに差し替えて利用する。ただしそのままではコネクターが合わないし、PICによってI2Cプルアップの有無が異なる。プルアップの有無を選択可能な、変換コネクターも製作せねばならない。

written by higashino [Sタンク 1/16] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL
Darkside(リンクエラー修正しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4