浜松市にいる組み込みおやじ-電子工作、回路設計、ファーム TIPS

このブログはビーコンの代表である菅原が、電気電子、電子工作、組み込みソフトウェアなどで、自分が苦労したところや面白い発見などを記事にしていきます。電子工作やマイコンに親しむ人が少しでも増えたらという思いでつづります。
やっぱり、電子工作が好きなんですよ。
アルファプロジェクトのボードでマイコン交換
0
    ただいま、アルファプロジェクトのボード AP-SH2-6A (SH7269)ボードで開発をしています。
    このボードは 電源が5Vのボードです。ところが誤って10Vをかけてしまい、あえなく動かなくなりました。

    仕様を確認すると、アルファプロジェクトのAP-SH2-6Aは 5V±5%しか許していません。

    壊れたので仕方がない、買い換えるかなと考えていましたが、1枚税別で24000円なので、ちと痛いということもあり、部品の交換で済むかチャレンジしてみることとしました。

    で、もう一度、過電圧をかけてみて、どうなるか見てみたのですが、
    電源に過電圧をかけると3.3Vの出力が 3.6V程度にまであがっているのが測定できました。
    マイコンが3.6Vになって死んだのかもしれません。あるいは USB関連のポートから逝ってしまったのかもしれません。

    そんな実験をしていたら、 5V→3.3VのICを壊してしまいました。とほほほ

    5Vと3.3Vの電源を切り離して、3.3Vを供給。ここで JTAGを接続してもマイコンと接続できません。
    マイコンが死んでいることは確実でしょう。

    FlashROMやSDRAMも可電圧をかけたことで、壊れてしまっているかもしれませんが、取り合えず
    SH7269マイコンと先ほどこわしてしまった 電源ICを交換しなければなりません。

    ◆マイコン交換編
    まず マイコンを取り外します。
    0.5mmピッチの256pinなので、これだけでかいICを取り外したことはありません。
    今回はハンダこてを使わずに、ヒートガンで熱を加えて、ハンダを溶かしてICをとることとしました。
    まずは、マイコン周りをスコッチテープで覆い保護します。
    これはヒートガンからの熱風でマイコン以外の部品のハンダも溶けるため、ちょっとしたことで位置がずれてしまいます。これを防ぐために行います。
    つぎに、マイコンのピンにハンダを山盛りにします。

    これでヒートガンで熱を加える人と、ICを持ち上げてずらす人で二人一組の作業となります。

    ここでは、時間をかけてじっくりと待ちます。
    熱を加えるとパターンの銅箔ももろくなるので、力を加えるのは厳禁。ゆっくり慎重にICを持ち上げていきます。



    この作業は写真が取れていませんが、なんとか、マイコンを取り外すことができました。パターンも全部無事でした。
    ここで、ハンダ吸い取りをきちんと行い。基板をきれいにします。

    次に、マイコンを乗せます。このくらいになると、ちょっとずれると別の辺が大きくずれるということになるので、ルーペや顕微鏡できっちりと位置を合わせて、テープで固定します。


    次にこのようにマイコンのPINをハンダで山盛りにします。
    1ピン1ピン丁寧にハンダ付けする人もいるようですが、私の師匠のやり方を踏襲することとします。


    大きめのC型の小手先のハンダこてで、重力と表面張力を利用して余分な半田を取ります。
    鉛フリーハンダを使いますが、小手先の温度はいつもより高めに設定します。
    ハンダは酸化しやすいので、新しいハンダを供給しつつ、余分なハンダをすばやく取ります。
    時間をおくと、酸化してへんな粘りが出てきて、きれいに余分ハンダが取れません。

    3.3Vラインに直接3.3Vを加えて、デバッガを接続したところ接続成功となりました。
    ところがプログラムを動かしてみてもうまく動きません。
    よくピンをルーペで見てみると、ブリッジになっているところを発見しました。
    ブリッジしたところの余分ハンダを除去したところ、アプリケーションが正常動作するようになりました。
    このとき3.3Vでの消費電流は100mA以下であることを確認しました。
    この時点では 5V→3.3VのレギュレータICが破損しているため、5Vと3.3Vの二電源を供給しています。
    さらに、5V単一電源の供給で済むように、3.3Vのレギュレータを何とかしたいと思います。

    ◆電源IC編

    次は

    5V→3.3VのコンバータICは
    XC9223B082AR。TOREX のICで仕様を見るとかなり高性能です。
    ところが残念なことに少量で販売しているところが見当たりません。

    かといって、そのままのパターンでドンピシャのICはあるかもしれないけど、探す時間がありません。
    先ほど3.3Vで直接動作したときに、電流も100mA程度というこてとで、三端子レギュレータで5V→3.3Vを実現することとしました。

    まずは XC9223B082ARを外します。これは 3.3→1.2でも使っているので、間違えないように注意します。
    マルツ電波で物色して ROHM の BA33BC0T を選定。これは LDOタイプです。
    この足に入力、出力にそれぞれ 0.1uFのコンデンサをつけ、また、出力端子から入力端子に向けて保護ダイオードを配線します。

    アルファプロジェクトのボードを見て、 5VとGNDのところに足をはめて、次に3.3V出力は先ほどのXC9223の出力にハンダ付けします。


    ここで5Vを加えます。見事にLEDが点滅して正常に動作していることがわかります。
    しばらく動作していますが、三端子レギュレータのBA33BC0T はほんのり暖かくなる程度で大丈夫と判断しました。

    もちろん、過電圧をかけたボードで、今回のプロジェクトでは使わないけれど破損しているところがあるかもしれません。なので使うべきではないでしょう。
    しかし、このボードは社内で開発・評価するものでお客さまに納品するものではないものということで、交換してみました。
    24000円かかるところが ChipOneStopでのマイコンの入手で 3000円少々+1時間程度の作業時間で済みました。

    JUGEMテーマ:電子工作

     
    | ビーコン菅原 | Renesas SHマイコン | 23:27 | comments(0) | trackbacks(0) |
    SH-2A マルチタスクとレジスタバンク
    0
       こんにちは、ビーコンの菅原です。

      SH-2Aで、ちょっと戸惑ったところがあったのでメモ。

      ルネサスの SH-2Aコアのシリーズは組み込みプロセッサとしては最強なのではと個人的には思っております。
      ひょっとしたら使い慣れていているだけかもしれませんけど。

      SH-2A には、レジスタバンクが15枚あります。レジスタバンクとはZ80などにあった裏レジに近いものですが、これが贅沢にも 15枚もあります。

      これを割り込みがかかったときに、レジスタバンクを自動的に切り替えることにより、レジスタの内容をそっくりそのまま保存することができます。
      通常、割り込み処理では、最初にレジスタの退避、最後にレジスタの復元を行います。
      これが処理能力が高いプロセッサはレジスタの数が多いので、退避時間が馬鹿になりません。さらに SDRAMなどの遅いRAMだと、キャッシュがヒットしなければイチからアクセスしなくてはならないので、復元はともかくレジスタ退避にはとても時間がかかります。
      この面倒な退避、復元の時間がなくなるので、割り込みの応答がかなり高速化し、応答時間のばらつきも少なくなります。

      15枚あるということは、多重割り込み15段までOKということになりますが、割り込み優先レベルが0〜15まであるので、すべての割り込み優先レベルで順番に多重割り込みをかけたときに対応ということになりますね。


      当然コンパイラも対応していないといけないのですが、ルネサスのSH用コンパイラだと #pragma interrupt の末尾に(resbank)をつけてあげます。

      #pragma interrupt funcInterrupt (resbank)

      で、マイコンの設定でレジスタバンクを使う設定にします。

      INTC.IBNR.BIT.BE = 0x01;

      前置きが長くなりましたが、このレジスタバンクはFILO(先入れ後出し)方式です。
      自動的にレジスタを順番に退避するので、プログラマが意識する必要はあません。


      ただし、マルチタスクだと、割り込みがかかったあと、復帰するときに、同じところに戻ってくるとは限らないので、正しく復帰できないことも発生します。

      マニュアルでレジスタバンクを操作できない限り、この機能をマルチタスクで使うことはできません。

      最初にレジスタバンクのことを聞いたときには、15個までのタスクが超高速でタスクスイッチできるのではと期待しましたが、そういうことは無理です。

      --追記 2013年4月17日
      ルネサスのuITRONはレジスタバングに対応しているとのご指摘をいただきました。
      ツイートを掲載します。


      | ビーコン菅原 | Renesas SHマイコン | 12:33 | comments(0) | trackbacks(0) |
      USB Boot Mode で認識しない
      0
        おはようございます。
        ビーコンの菅原です。


        SHマイコンのブートモードではまったので、メモ。

        アルファプロジェクトの AP-SH2A-2A 基板を入手しました。
        アルファさんの基板は四層基板だし、アートワークもきれいで安心ですね。

        ここに使われている SH7286はUSBがついています。USBがついているMPUはUSBからプログラムのダウンロードができます。最近はホント、便利になりました。

        アルファプロジェクトからも FlashWriterEXが付属していて、シリアル経由でダウンロードできますが、やっぱりUSBで書き込みをしたいということで、ルネサスの FDTを使用。

        ここまでは良かったのですが、SH7286を USB ブートモードにして接続してもFDTがどうもSH7286を識しません。

        いろいろ試行錯誤したところ AP-SH2A-2Aボードを接続したときに「自動」でドライバを探させたために、違うドライバを持ってきたからです。

        fdt5.png

        認識されたデバイス名がRenesas USB1653 USB Boot Mode Device とあります。ルネサスだしいいかなと思っていましたが、違うようです。
        fdt1.png

        ドライバの更新で

        C:\Program Files\Renesas\FDT4.05\Drivers\for_32bit\Hmse_USB
        のフォルダを指定します

        fdt6.png
        すると先ほどとは違い、GENERIC Boot USB Direct という表記になりました。

        この状態で接続したところ

        fdt7.png
        先ほどまではブランクだった選択欄に、きちんとリストアップしています。


        fdt8.png
        R5F7286と認識しています。

        あとは、そのままファイルを選択してイレース後ダウンロードでうまくいきました。。
        | ビーコン菅原 | Renesas SHマイコン | 07:39 | comments(1) | trackbacks(0) |
             12
        3456789
        10111213141516
        17181920212223
        24252627282930
        << September 2017 >>
        + RECOMMEND
        + RECOMMEND
        + SELECTED ENTRIES
        + RECENT COMMENTS
        + RECENT TRACKBACK
        + CATEGORIES
        + ARCHIVES
        + つぶやき
        + MOBILE
        qrcode
        + LINKS
        + PROFILE