2016年1月 のアーカイブ

PICの開発環境

PICの開発環境です。

とりあえず、プラットフォームは以下の通り。
OS:Windows10 64Bit Home

PICの統合開発環境
MPLAB-X IDE 3.15
コンパイラ、Hi-Tech C

コンパイラが、Hi-Techなのは、MPLAB時代からのものなので。
もちろん、XC8でも大丈夫ですが、環境に合わせて変更する必要があるので、そのままにしています。
なるべくコンパイラ特有の箇所は省いて書いて行こうかなと思ってます。

これからオリジナルのソフトを組んでみようと言う方は、上記の点に注意して下さい。

201601.23追記
基板と部品そろいました。
組み立てに入る前に、もうすこしソフトを進めます。

LED CIRCLE部品

基盤作成は、順調なので部品調達。

・電源部
 ・7805または相当品
  5V1A仕様のモノですが、500mAもあれば十分かなとも思う。
  一応、相当品でもピン配置は同じなので、入手しやすければ良いかと。
  ※3.3Vでも動作しますが、抵抗値を買えないと暗くなくかもしれない。
 ・コンデンサ
  0.1uFと33uFの電解コンデンサ

・制御系
 ・PIC
  当初の予定通り、16F88を使用します。(ソケットも)
  クロックは、内蔵発信を使用するので、基本これだけ。
 ・DIP-SW
  4BitのDIP-SWで、表示の選択に使います。
  PICからは、内蔵Pull-UPでGNDでON(負論理)として扱います。
 ・トランジスタ
  廃番となったC1815を2個使ってます。(相当品が出回っているハズ)
  手持ちで、それなりな数が確保できたので、使います。
  ※使い勝手良いのに、何故廃番なのか…
 ・コンデンサ
  0.1uFの電源ノイズ用
 ・抵抗
  4.7K 1/4W MCLR端子のプルアップ用 1本
  150 1/4W LEDへの+出力電流制限用 6本
  ※150は、5V時での値ですので、3.3Vの時は変更が必要です。(LED変更時も)
  ※ワット数は、厳守! 特に、150の抵抗は 1/6Wだと定格ギリギリになります。

・LED表示部
 ・LED 12個
  3mm赤色LEDを使います。
  自作、または他のLEDを使う場合、上記抵抗の150は変更した方が良いです。

抵抗の加工
 一般的な回路だと、横にしますが、サイズの関係から縦にします。
 Uフォーム加工をして、端子側をコネクタ方向にしてハンダ付けするようにします。
 高さとしては、ICソケット+PICとほぼおなじ高さなので、問題はなかろうとの判断です。
 チップ抵抗も大丈夫…かなぁ

電源関係
 7805及び電解コンデンサは、横にしてハンダ付けします。(その余裕はあると思う)
 外部で電源を用意する場合、7805,C1,C2は使用せずに、7805のIN-OUTをジャンパして下さい。
 ただし、5V以上の電圧は入力させないように注意。

コネクタ関係
 コネクタは、自由に。
 一枚基板なら、配線ですませても良いかも。
 分割して使うならば、制御~表示を番号を間違えないように繋げればOKかと。
 一応、コネクタ間は余裕を持っているので、主なコネクタは付けられると思います。

小型化目指したので、それなりに点数は抑えられてると思う。

なお、トランジスタを載せずに、B-C間をジャンパすれば8ビットのGPIOとして使用できるので、外部に回路を組めば汎用的な基板としても使える(んじゃないかな~)と思う。

ソフトもやらんと!

基板発注

今回、基板を作るにあたり、基板屋さんを見つける条件は…
・国内業者である事…日本語で対応可能ならばOK
・会員登録は必須では無い…単に面倒だから(笑)
・特別なソフトを必要としない…ガーバーデータ対応(大体可能だけど)
・着払いで発送…
こんな感じ。

で、探し当てたのが 株式会社ユニクラフトさん。
PCBEでOKと書いてあるけど、別にPCBEのファイルじゃなくてガーバーデータで…という事。
とりあえず、基板作成のルールを落として、ガーバーファイルの名称とPCBEのレイヤの確認、基板作成の条件を調べて専用の基板ライブラリを作っておくのが良いです。

あとは、ソフトでグリグリと回路を作って、ガーバー出力してそれらのファイルを圧縮した後、添付しておくればOK…楽(笑)。

発注時に指定するのは、基板サイズと枚数くらいで、後は標準のまま。
※発注枚数は、1~2枚だと単価が上がるので、4か8の倍数が良いとの事。

簡易見積りが提示されるので、よければ先の圧縮ファイルを添付して注文。
受付メールは来るけど、対応後のメールは後からきます。
そこから、本注文と支払いの方法を指定すれば、後は制作状況を見ながら待つだけです。

※ガーバーファイルだけなので、PCBE以外のソフトで作成したファイルであっても、それぞれのファイル名が一致すれば大丈夫みたい。

部品も発注せねば…

回路を考える・・・行き着いた先

回路図は出来たので、実際の回路(基板)を作る事に。

普段は、DS-PCBとかKiCADとか使ってます(時々EAGLE)が、いずれにせよライブラリがいまいちなのと、規模から考えてざっくり自分で回路を引いたほうが楽な事に気づく(笑)。

ちなみに、LEDは3mmを使って配置を考えた結果、蛇の目基板でも円形状に配置する事が可能だったので、無理して円形基板を作るのは止めました。

ということで、ざっくり回路を紙に書いて見たところ、PCBEでいいじゃんとの結果に。

基板サイズは、制御部は41×32、表示部は22×19(最大)となっています。
双方を面付けで1枚の基板とした方が値段的に楽なので、63×32の基板として作成。
部品面に書いてあるけど、PCBEのデータ(ガーバーデータのみ)で基板を作ってくれるところを探していたところ、株式会社ユニクラフト(unicraft)に行き着きました。

出来たのは、下の回路
一度、ガーバーデータを出力して、ガーバービューで表示した画像です。

PCBE_BTMハンダ面
PCBE_TOP部品面

一応、シルクでカットすれば、独立基板として使えるようにしてあります。

発注するぞ!

LEDの電子回路

頼まれて回路設計しました。

LED12個を円形状に並べて、くるくる回しての表示をするもの。
回る速度は、ボリューム(外部接続もできるように)でコントロールする感じ。

で、以下の様な感じで設計
・制御基板と表示基板を分ける
・制御基板は、組み込みを考えてなるべく小さく。
→必然的に部品は最小とする。
・制御と表示の配線は、なるべく少ない本数で行う。

てな感じですが、LEDが12個なので、13本必要な配線を2*6で合計8本で行う事に。
ダイナミック点灯するので、最大4*4の16個までLED繋げられる。

コントロールCPUにはPICを使用。
アナログとかGPIOの数から、PIC16F88に決定。
点灯出力を6ビット+GND制御に2ビット(GNDはTrで引っ張るので、それなりな電流にも耐えられる様に)+アナログ入力。
ついでに、パターンを選択出来る様に4ビットDIP-SWをつなげる事にしました。

んで、出来上がったのが下の回路図
LED CRICLE
BSch3Vで書きました。

TrのC1815は、既に製造中止なのですが、相当品が出まわっている事と、とりあえず使いやすいので、使用しています。

1品もので作ろうかとも思ったのですが、どうせなので前からやってみたかった基板を作ることにし、基板屋と入稿データ(ルールも含めて)調べる事に。