そう簡単に行くまいよ、とは思っていたが、想像以上に大変だった。
もう二度とPICの3桁番号は使わない。
今回あまり考えずにPIC16F687を使ってみたんだけど、本当に大変だった。

とりあえず基板と部品が手に入った。
基板はコロナウィルスの影響でElecrowがどうなるかなと思っていたんだけど、別に普通に届いた。
深センから直輸入の箱とか梱包材は速攻で捨てたけど。
IMG_5240

で豆粒以下の表面実装部品を何とかかんとかハンダ。
ちょっと基板側ランドサイズを間違えてたりして苦労したけどなんとか無理やり取り付けた。
IMG_E5241

OSR-CDIの表面実装化なんて絶対にしない。かなりキツイ。
コンデンサや抵抗、ダイオードなんかは全部2012サイズ(2ミリx1.2ミリ)で統一してたけど、飛んでいくと探す気にもならないサイズ。

Pickit3は基板のホールに直接ピンを指す形。ハンダはしていない。
IMG_E5242

ま、ここまでは良いのよ、ここまでは。

とりあえず点灯させてみる。
IMG_5250
うーん、なんか変だ。

PIC16F1705で作ったバーグラフ付きのバキュームメーターは全然楽勝だったんだけど、こいつは本当に駄目。
同じ事をしても、変な動きをするばかり。

もう本当に投げ捨てようかと思った位。
4桁番号のPICは本当に良く出来ているんだなぁと思う。

例えば
void DIG_U1()   {RA0=1;RA2=1;RC0=1;RC1=1;RC2=1;RA1=0;}
void DIG_U1()   {RA0=1;RA1=0;RA2=1;RC0=1;RC1=1;RC2=1;}
この,鉢△LEDが点灯したりしなかったりする違いが出る。
こんなもん、わかるか
勿論PORTAにビット操作しても駄目。
想像を絶する問題。
こういう問題が沢山あった。
昔の人は苦労したんだなぁ・・・。
途中、余りにもうまくいかないので、7セグの神様にお布施に行く。
IMG_5249
20K程お布施して帰って来た。
くそ!!!天気も良いのになんてこった!!

めげずに頑張って、なんだかんだとワークアラウンドを繰り返し、何とか表示に成功。
IMG_5271

この後、電圧や水温センサーを読み取るアナログ入力部分を書いたけど、こちらもトラップ沢山。
知らない人がみれば、なんでこんなコード書いているんだ?と思う不思議なコードを山程書いた。
解せぬ。

しかし、なんとかソフトウェアで全て解決できた。
良かった!

後はNTCサーミスタの計算を改めてやってみたら、分圧抵抗1KΩだとうまく無く、100Ωに付け替えないと駄目な事が分かった位。
利用するサーミスタはスズキの型番で「34850-82011」。
これと同じサーミスタは実はスンゴイ多くの車種で使われている。
ちょっと調べただけでこれだけのメーカーで採用されてた。
CHRYSLER/ DAIHATSU/ DENSO/ FORD/ GENERAL MOTORS/ HOLDEN/ HONDA/ HYUNDAI/ ISUZU/ KIA/ LEXUS/ MAAZDA/ MITSUBISHI/ MOTORCRAFT/ SWE/ OPEL/ PIAGGIO/ SUBARU/ TOYOTA/ VAUXHALL
http://www.facet.eu/en/products/thermal-management/thermo-switches-and-water-temperature-sensors/

この後の工程は、3Dプリンターでステーを作成して取り付けること。
その為にはまずウルフのメーター外して分解せんとね。

つづく