スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Elecrowでプリント基板を作ってみた

基板を作る際は国内のプリント基板製造サービスを使っていたのだが、今回は2層の簡単な基板だったので試しにElecrowを使ってみた。

結論から言えば、試作なら十分問題なさそうだが、量産では注意が必要かもしれない。今回は同一設計の基板を2版分作った。下記はその比較写真。比較のため、初版、第二版共に変更が無かった基板の一部の拡大である。

初版の基板写真。レジストは黒色。オプションとしては Lead time -- Rush 24h, Shipped in 2-3 days を選択。春節後の混雑時期だったせいか、発注から到着までDHLで8日間だった。急ぎのオプションにしたのに Status が In Production のまま変わる気配がなかったので、Webにあるチャット機能で問い合わせたら今日中に発送しますの返事。問い合わせなかったらもう少し遅れたのかもしれない。価格は10枚で送料込み総額$52.07。実際は12枚届いた。

初版の基板品質はまぁまぁって感じ。特に問題になるような部分は見つからなかった。黒のレジストはパターンが見難くい。



二版の基板写真。レジストは赤にした。同じくオプションとして Lead time -- Rush 24h, Shipped in 2-3 days を選択。今回は配送業者の選択に OCS/ANA Express が選択可能だったのでこれにした。発注から到着まで5日間だった。今回は早い。価格は10枚で送料込み総額$49.73。実際は前回同様12枚届いた。

品質はちょっと?な感じ。初版も第二版もシルクのフォントを若干小さくしたり位置を変えただけで、写真部分のガーバーは全く同じ。にも関わらず、部品のシルクがランドに被っていた。試作ならいいけど、量産ではちょっと考えてしまうかも。



とは言え、この驚愕の価格と納期では、今後もお付き合いすることになるだろう。
スポンサーサイト

今更ながら銀河漂流バイファムのオープニングのZ80コードを読んでみる

当時私が高校生だったか、趣味でZ80を覚えたての頃にたまたま見たアニメのオープニングでZ80のニーモニックが一瞬映るのを見た。銀河漂流バイファムというアニメである。演出の都合上なのか、コードは絵を背景に鏡像反転して斜めに傾いていたし、表示も一瞬。当時は高解像度のビデオデッキも無ければ理解するスキルも未熟だったので、あれが何のコードなのかわからず終いだった。

最近amazonプライムビデオのタイトルを眺めていると、なんとあの銀河漂流バイファムがあるではないか。あのコードが何のコードかを30年以上経った今、読んでみた。

結論から言えば、「HLレジスタに格納された16bitデータを表示する処理」であった。

今は便利な時代である。まずは画像をキャプチャーし、フォトショで鏡像反転して更に水平に。なるほど。PS4HXと4HEXOという名前のルーチンがある。

PS4HXを呼ぶと、スペースの表示(出力)後にHLレジスタに格納されている16bitのHEXデータを表示するようだ。実際にどのハードウェアに表示するかは、PRNTSや2HEXO内で記述されており、このコードからはわからない。UARTか何かだろう。PS4HXはPrint Space 4 HeXの略だと思われる。内部では2HEXOと呼ばれる8bitのHEXデータ表示処理を呼んでおり、これを2回呼んで16bit表示にしている。

4HEXOを呼ぶと、スペースは表示されずに、HLレジスタに格納されている16bitのHEXデータのみを表示する。

コメントの内容もコードと合っている。お作法通り、これを呼ぶとAレジスタが破壊されるとまで記載されている。それでもAFをPUSHしているのは、フラグは保存したかったのだろう。アセンブルされたマシンコードも合っている。4HEXOは4 HEX Outの略なのだろうか。

今時アセンブラで書くかどうかは別にして、特に当時まだJTAG ICEなどがメジャーじゃなかった頃に組み込みシステムを開発する場合は、UART経由でデバッグ情報などを出力するために8bitや16bitのHEXデータ出力処理は大抵実装する基本処理であった。これらの一部を抜粋して、演出として使ったのだろう。

ダミーのコードかな?思っていたのだが、実際に動くコードであった。

Updateに失敗したAtmel JTAGICE3を復旧

Atmel Studio 7のアップデートをしたところ、JTAGICE3のファームウェアもアップデートしろとダイアログが出て来たので、ガイドに沿ってアップデートした。しかし、アップデートのプログレスバーが最後まで行ったところでまさかのアップデート失敗。LEDが赤と黄色に点滅(数秒周期)しながら、USBを挿抜しているような状態に陥った。JTAGICE3からUSBケーブルを抜き、挿し直してもLEDの点滅状態は変わらない。どうもアップデートモードのまま抜けられない状態になったようだ。

色々と調査したところ、下記の方法で復旧ができた。

■環境
 VMware Fusion 8.5.1(Mac) + Windows 10
 Atmel Studio 7.0.1188

■復旧手順
1.コマンドプロンプトで以下のディレクトリに移動
 C:\Program Files (x86)\Atmel\Studio\7.0\atbackend

2.以下のコマンドを実行する
 atfw.exe -t jtagice3 -a ..\tools\JTAGICE3\jtagice3_fw.zip

3.結果
 Found jtagice3:J302000XXXXX ←XXXXXは所有しているJTAGICEのシリアル番号末尾5桁
 Upgrading jtagice3:J302000XXXXX
 Upgrading MCU: [==========]
 Successful upgrade

めでたしめでたし。

結局ずっと個人の研究開発

結局元旦に東京へ戻ってから4日まで、基本的に自宅へ引きこもって個人の趣味としての研究開発をしていた。メカ設計関連の最終仕上げ。4日のみ、半日ほど床屋のために外出。

さて、明日から仕事始めだ…

設計した基板到着

最近は個人活動としての開発ネタが多い。回路とパターン(アートワーク)設計した基板が到着した。試作なので自分で部品実装しても良かったのだが、意外に部品点数が多く、時間節約のため部品実装も依頼。基板と部品実装はP板.comに依頼した。ステマじゃないが、ここは本当に良い仕事をする。パターン設計上の問題点は的確に指摘してくれてミスった基板は作らせないし、部品実装にしても細かい部品にも関わらずブリッジやテンプラは無さそうだ。

火入れの前に判明したミスがいくつかあった。SMDのパッドは問題なかったのだが、一部のライブラリでDIPのランド径が小さかった。まさかDIPのライブラリでミスると思わなかった。SMDは何度もサイズを確認したが、DIPはピッチだけ確認してノーマークだった。油断大敵。一応ハンダ付けは可能なので試作デバッグには支障が無い。うーん、でも改版決定。

些細な所ではVIAにレジストを被せるつもりが、P板から提供されているEagleのCAMファイルがデフォルトではVIAもレジストを避ける設定になっていたのに気付かずガーバーアウトしたため、VIAも銅箔が露出してしまった。調べてみると、VIAをレジストで覆うか否かは昔と今とでは考え方が逆になったようだ。確かに90年代に回路を書いていた時は、仕上がって来た基板のVIAは銅箔が露出していた。プローブをVIA経由で当てて信号を取っていたのを覚えている。

以前は、VIAはレジストを覆わないというのが標準だったらしい。VIAをレジストで覆うとVIAの穴の中にレジストが入り込み、VIAの中に泡ができた場合、その後のリフロー工程で泡が熱膨張してはじけ、レジストの残留物がVIAのスルーホールの金属を酸化させるのが理由だそうだ。現在は表面実装が主流となり、クリームハンダによるトラブルを防ぐ意味合いからVIAはレジストで覆うのが標準になったようだ。別記事で改めて書く予定だが、P板提供のEagle用CAMファイルを使ってガーバーアウトすると、レジスト出力時にVIAも出力するようになっている。これを外すだけで、VIAはレジストで覆われる設定になる(ガーバーファイルの内容は確認済)。

さて、デバッグ開始である。先ずは生基板の電源ショートチェック。今時のCADは当然DRCもあるし、基本的にVCCとGNDを接続するようなネットは吐けないので20年前とは違ってここでミスることは皆無だろう。ジャンパーのセッティングを確認し、いよいよ火入れ。電源ON後、1秒後も経たずに速攻OFF。CADのライブラリ作成時も何度も確認はするが、思い込みによるライブラリ作成ミスや、実装部品の誤実装は考えられる。徐々に電源ON時間を延ばしながら、異常発熱や異臭が無いのを確認。問題無さそうなので、改めて電源ON。JTAG ICEはあっさり認識。プログラムを焼いてみると、CPUも一発で動作。デバッグメッセージをシリアルコンソールに吐き始めた。まぁワンチップなので、一発で動いてもらわないと逆に困るのだが。

今回基板を小型化するため、標準のCR類のサイズに1005を採用した。それもあり、以前の記事にも書いたリワーク用のツール類を奮発して導入した。保険を掛けると事故が起きない法則通り、今の所出番は無し。素直に喜ぶべきなのであろう。

さて、次はいよいよI/Oの確認とプログラミングの仕上げに入る。後方では先日購入した3Dプリンタがこれまた色々と試作検討部品を印刷中。今週末もGWも休暇を繋げて長めの休暇となっているが、基本的に開発のため引きこもり。季節も良くなり、オープンにしてのドライブに誘惑されているが、頑張って開発を一気に進める。

theme : 電子工作
genre : コンピュータ

ステーションタイプはんだごて、はんだ除去、SMDリワーク HAKKO FM-206 購入

あくまでも個人の活動として、自宅にて1005の様な極小チップ部品を使う本格的な回路開発やデバッグを行い始めた。先日ガーバーアウトして、今月には基板及び部品実装が完了して手元に届く。もはや従来持っていたハンダゴテやピストンタイプの吸取器(吸引機)では対応できなくなったため、本格的なステーションタイプのハンダゴテを購入した。購入したものはHAKKOのステーションタイプFM-206。はんだごてに20万円近い投資をするのは気合いが必要だったが、プロとして道具には投資をすべきだろうと判断した。基本的に設計が完璧であればリワークなど必要ないのだが、道具が無い時に限って設計ミスが見つかり、部品の交換が必要になったりする。今までの経験上、対応可能なツールを持っていると意外に出番が少なかったりで、保険の意味も含めて購入した。

FM-206には標準ではんだこて FM-2027 の他、直熱式のSMDリワークツールのホットツイーザー(パラレルリムーバー) FM-2022、熱風式の同じくSMDリワークツールのホットエアー FM-2029(ブロア)を標準装備。更にオプションであるDIPのはんだ除去ができる吸取器(吸引機)FM-2024 も購入。こて先やノズルは全て別売りで非常に多彩なラインナップがあり、今回のデバッグに使えそうな物をいくつか購入した。

通常はメーカーの開発部や製造工場のリワーク部署にある道具なのだが、個人宅の机の上に置くと存在感があり過ぎる。



簡単にインプレッション。先ずは全体的に起動が異常に速い。当然温度調整ができるのだが、300℃にこて先が到達するのに15秒程度。

はんだごては当然温度設定可能。プリセットで3種類を設定できて即座に切替られる。鉛フリーはんだもストレス無し。使い勝手も軽くて非常に使い易い。

パラレルリムーバーは使った事はなく、今回生まれて初めて使った。使ってみるとこれが実に素晴らしい。1005は勿論、2012クラスの大型のチップ部品まで簡単に外せる。従来ならはんだごて二刀流で気合いで外していたのだが、そんな苦労はもう要らない。しかも幅広のこて先を使うと、SOPや放熱端子付きのチップ型3端子レギュレーターも簡単に外せる。練習がてら、壊れた基板の部品を外して練習していたのだが、楽しくて載っている部品を全て外したくなるくらい快適であった。

ホットエアーは44pin程度のQFPなら問題ないが、大型のQFPを外すにはちょっと厳しい感じがする。標準搭載されているツールの中では一番コツを要求されるかもしれない。以前、大型のブロアを使ったことがあったが、ノズルの形状がQFPのピンに沿う様な四角形をしていたが、このホットエアーのノズルは丸形。まだコツを掴めてないのか、練習でQFPを外すのが苦労した。機能としては、温度は勿論、エアーの流量も当然変えられる。QFPを交換する様なシチュエーションは流石に無いだろうが、万が一の時には役立つだろう。

はんだ吸取器も快適。ステーション型のはんだ吸取器はポンプがグリップ側本体に内蔵されないため、軽くて振動が少ないので非常に良い。気持ち良いくらいにDIPのはんだが瞬殺で除去できる。



FM-206本体には3ch分のツールが接続可能。液晶パネルを見ながらボタンとダイヤルで各種パラメーターを設定できる。



基本的に本体にはこて先は含まれてないため、全て別売りで購入。こて先は1500〜2000円、ホットエアーのノズルは4000円、吸取器は6000円、パラレルリムーバーのこて先は他と比べて高く8000円程度。こて先だけでホビー用のはんだこてが買えそうな勢いだが、全てのこて先にはヒーターが内蔵されているため仕方がないのかもしれない。



これらが活用されないことを祈りつつ、基板が到着するのを待つとする。

theme : 電子工作
genre : コンピュータ

Atmel Studio 6.1 + Windows 8.1 / JTAGICE3 が接続できない→解決

Windows XP上でAtmel Studio 6.1を使用して開発をしていたが、流石にそろそろWindows 8.1に載せ変えようと思いWindows 8.1を購入。ついでにVMwareも5から6へバージョンアップした。

ここで一つ問題が発生。Windows XP上では問題無かったAtmel Sudio 6.1だが、JTAGICE3を使ってDevice Programmingを行うと、"Unable to connect to tool JTAGICE3"のダイアログが出て書けない。USBとしてはきちんと認識している。

調査したところ、Windows 8.1ではUSBドライバを最新版にバージョンアップしないと上記エラーが出て書き込みが出来ないようだ。下記サイトからAtmelUSBをダウンロードしてインストールしたところ、無事書き込みができるようになった。

https://gallery.atmel.com/Products/Details/004ccabd-e18e-431a-8557-83deaea23341

theme : プログラミング
genre : コンピュータ

MacOS + VMware 6 + Widnows 8.1 + Atmel Studio 6.1

基本的にAVR関連の開発はMac上で行っているため、Windows上で動作するツールはVMwareでWindowsを走らせて動かしている。従来の構成は、VMware 5 + Windows XP + Atmel Studio 6.1を使用していた。Windowsの画面でMacOSのDockが消えない不具合があったり、何と言っても動作が緩慢なのが不満だった。

今回、VMwareを6にバージョンアップし、WindowsもXPからWindows 8.1に変えた所、体感できるくらいに早くなった。ビルドが早くなったのは非常に助かった。

Windows 8.1の操作体系には閉口するが、こんなことならもっと早く載せ変えていれば良かった…

theme : プログラミング
genre : コンピュータ

さようなら Arduino、こんにちは Atmel Studio

趣味としてArduinoを使って色々と試作をしていたが、プロプライエタリな環境が欲しくなり、ArduinoからAtmel Studioに環境を移行した。お手軽なオートマ車から、マニュアルのレーシングカーに乗り換えた、というのが第一印象だろうか。

仕事ではハイエンドなSoCを触ることが多いのだが、8bitクラスCPUとなると縁がなく、取り敢えずArduinoを使っていた。Arduinoは使っているCPUが何であるかとか、操作するペリフェラルの知識すらそれほど必要としなくても何となくプログラミングが出来てしまう程お手軽であった。しかしその反面、統合環境のエディタやデバッガが貧弱だったりもする(もしかしてエクステンションがある?私が知らないだけ?)。AtmelのAVRシリーズを調査して驚いたのが、その豊富なラインナップである。価格も調査してみると、入手性も良く、高性能で低価格なデバイスがチョイスできる。

環境の変更は、どうしても学習コストが掛かってしまう。出来れば避けたかったのだが、乗り越えてしまえば得られる物も多い。この数週間は、AVRのリファレンスマニュアルやAtmel Studio、ASFのマニュアルを通勤中や帰宅後もひたすら読み、実際に触ってみた。ようやく本格的に開発のフェーズに入れるようになった。

特筆すべきは、わずか1万円でJTAG ICEで普通にデバッグできてしまうことだろうか。勿論Flashのライティングも可能である。ICEと言えば、私が就職した頃のフルICEは100〜300万円が普通であった。それがJTAG ICEになって30〜40万円前後で買えるにようなり、今では趣味で1万円で買える時代である。

趣味でさえ、組込機器の開発でLEDやprintfでデバッグする時代は終了していた…

theme : プログラミング
genre : コンピュータ

プロフィール

hashiken

Author:hashiken
基本的に自分で作る、直す、メンテする。東京と安曇野の二重生活。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
Photoscope∀
different version
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
検索フォーム
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。