ArduinoはPICより高価だが使い勝手は断然良い。

雨の今朝は通常出勤です。


Arduino UNO R3を2台使ってI2C Master Slave接続の検証です。

Masterから指令を送り、Slaveがこれを受けてプログラムを実行。

Slaveのプログラムが完了してからSlaveがMasterに信号を返送して終わると言うものです。ソースコードは以下の通りです。

Master側:

Wire.beginTransmission(slave_address);
Wire.write(shirei) ;
Wire.endTransmission(false); // ココがポイント
Wire.requestFrom(slave_address,1);
while (Wire.available()) {
signal_from_slave = Wire.read();
Serial.write(signal_from_slave);
}
Serial.println();
Wire.endTransmission();

Slave側:

void receiveEvent(int n)
{
shirei= 0;
for (int i=0; i < n; i++)
{
if(Wire.available())
{
shirei = Wire.read();
Serial.print(shirei,HEX);
Serial.print(" ");
}
Serial.println();
// 以下shirei値に応じた処理
}

void requestEvent()
{
Serial.println("recept request.");
if (shirei == 0) // shirei値に応じた返値設定
{
signal_from_slave = 0x00;
}
if (shirei == 1)
{
signal_from_slave = 0x01;
}
Wire.write(signal_from_slave);
}

void setup() {
Serial.begin(9600);
Wire.begin(address);
// マスタへ返値を送信する割込関数の設定
Wire.onRequest(requestEvent);
// マスタから指令を受信する割込関数の設定
Wire.onReceive(receiveEvent);
Serial.println("i2c slave test");
}

Master側のWire.endTransmission(false);のfalseオプションがミソで、これにより、クロックストレッチが設定されるものと思っています。

Arduino UNO R3は3,240円。一方PIC16F1829は370円と10倍近い値段の開きがあります。

でも、使いやすさや公開情報量の豊富さではPICを圧倒しています。


ただ、極めて残念なのは本チャンのパソコンでArduino UNO R3(Leonardも然り)が全く使えないことです。

依然としてノーパソでプログラムローディング等を行わざるを得ません。


今日は夕食が外食になりました。


肉丼定食です。
コンピュータ | - | -

iPhone7のiOSがバージョンアップ。電卓の不具合解消。

京急2100形羽田空港行エアポート急行と1000形1800番台アクセス急行成田空港行です。


食堂が取り壊され、倉庫スペースと貫通です。


天井裏はスケスケです。


更衣室の一部にデザイン壁紙が貼られました。


糖尿病食復活です。


バラストレギュレーター車です。


鹿島臨海鉄道KRD形5号機です。


キハ54系500番台流氷物語号の中間カプラーをボディマウントTNタイプに交換しました。


TOQiの製作を再開しました。


iPhone7のIOSがバージョンアップしました。

嬉しい事に電卓の不具合が解消されていました。
コンピュータ | - | -

遂に歳末・不退転の決意で挑みました。

もう年末で後が無いため、不退転の決意で挑みました。

詳しい人に来ていただき、あれこれ意見交換をした結果、やっとモジュールが動く様になり、動作検証をする運びとなりました。

気が付いたら年を跨いでいました。

難局をチームワークで乗り切ることになり、応援を頂いた皆様には感謝申し上げます。

PIC16F690用と記されたマイクロチップ社のサイトに記されたソースコードに致命的な欠陥がありました。

while(!BF)では処理が先に進まず、いくらCKP=0でストレッチオンにしていても、一気にSSPBUFへの二度読みは出来ないものでした。

また、PICチップとりわけ16FなどのF1ファミリに解説書はレジスタの説明しかなく、データシートの域を出ません。

肝心のソースコードも断片的で必要な所の記載がないなど今回の様に開発時間が限られている中での参考資料にはなりえないものでした。

未明にわたって動作検証を終え、何とか家に帰れることになった次第です。
続きを読む>>
コンピュータ | - | -

本社に戻るとドア鍵の不具合を発見。

一旦本社に戻りました。

結局途中での車中泊となりました。

1週間風呂に入らない状態が続くと体臭がし始めます。

濡れタオルで体を拭いて、下着類を替えました。

特に足の臭いが酷く、洗ったのちに靴ごとファブリーズを掛けました。

以前から電池残量警告を出していたドアロックが壊れてしまいました。


とりあえず応急措置をして、PIC16F690モジュールのトラブルシューティングを続けました。

しかしながら、不調個所が分からず、アドバイスを得る事にしました。

アドバイスを得たのち、あとはやるしかないと思い、そのまま寝ることにしました。
コンピュータ | - | -

代替チップを購入してプログラムするも全く動かず。

メインのPICチップであるPIC16F1829が入手できないため、同じ様な構成のPIC16F690を購入しました。

これら代替チップを購入し、マイクロチップ社の公式ページのソースコードをもってプログラミングをするも、全く動きませんでした。

詳しい人にアドバイスを得るべく、またも帰阪することになりました。

夕食が遅くなったので。SAでホルモンどんぶりです。
コンピュータ | - | -

どん底状態

正にどん底状態。

お偉いさんからドヤされ、周辺からの視線は刺す様な冷たさに変わっていました。

今日は出来る限りの事をして、代替チップ購入のため一旦帰阪することにしました。

このところ、夜なべの夕食はカロリーメイトばかりで栄養失調気味でしたので(事実ウェストサイズが激減していました)、夕食を多めにとりました。

泊まるあても無いため、車中泊です。

続きを読む>>
コンピュータ | - | -

悪夢の発生!−完成検査寸前でチップが集団自殺。

夜なべはついに3日目に。

自分の責任ながら、冷たい視線を浴びながらも何とか検査の日を迎えました。

しかしながら悪夢が発生しました!

誤接続による過電流が影響したのか、Arduino UNOを含むチップが集団自殺してしまいました。

Arduino UNOを急遽取り寄せるも、破損は多方面に波及していました。

正に万事休すです。
続きを読む>>
コンピュータ | - | -

夜なべ作業続行中。

不手際続きで、不信感を持たれつつのこの作業。

でもやり遂げるしかありません。
続きを読む>>
コンピュータ | - | -

今日から再び夜なべ仕事が続きます。

検証した機械一式を持って再びトライ。

それでも、なかなか上手くいきません。今日から再び夜なべ作業が続きます。
続きを読む>>
コンピュータ | - | -

モータードライバーを交換して対応。

注文していたKD5型DLが届きましたが、開封している暇がありませんでした。


検証を一通り済ませて帰宅。嬉しいクリスマスの宴を楽しみました。
続きを読む>>
コンピュータ | - | -

Arduino新環境を持ち帰って検証。

それでも不調が続くため、Arduino新環境を持ち帰って検証することになりました。

夕食は外食(スタミナガーリック定食)ながら、一旦帰宅します。
続きを読む>>
コンピュータ | - | -

止むを得ず、夜なべ仕事に突入。

久々のRUN&WALKです。


出社前、公園に立ち寄り。


思わぬところで事故渋滞にハマりました。


自販機がチェンジされていました。


事務所の改装工事を進めており、更衣室関係が大幅に変わっていました。


とりあえず簡単に昼食を済ませました。


用件を済ませて出発しましたが、やはり抜けがありました。
続きを読む>>
コンピュータ | - | -

一旦開発環境を持ち帰り。

埒が明かないため、一旦開発環境を持ち帰り、再検証することにしました。

単独テストではLEDが正常に点灯するのですが。


遅い夕食はビーフカレーです。
コンピュータ | - | -

事故停滞にハマる。

何時もの通り出勤です。その内にいつも通りにならなくなりますが。


昼食はパン2つです。


現地作業を終え、ココイチで夕食です。


高速道路が事故で停滞してしまいました。
続きを読む>>
コンピュータ | - | -

本日以降ブログ更新が遅れます。

今日もRUN&WALKしました。


ターンテーブルに設置したセンサーユニット一式です。

回転する性質上端子を共取りしなければならず、オペレートには十分な注意が必要です。

糖尿病食の昼食です


本日以降ブログ更新が遅れますが、ご了承願います。

明日の会議に備え、前乗りしました。

久々に大阪王将でラーメン定食を食しました。


西播テクノ内の科学技術支援センターです。
続きを読む>>
コンピュータ | - | -