2018年5月21日月曜日

Vcc、Vee、Vbb、Vdd、Vss、Vgg、V+、V-、GND、の違いとは?

トランジスタの歴史的な経緯により、異なる表記になったようです。
とりあえず Vcc、Vdd は入力電圧。
Vee、Vss は出力電圧ないしは GND と思っておけば OK と思われます。(すごいマサカリ飛んできそうですがw)

具体的には回路の内部構造が TTL なのか CMOS なのかによって使い分けられているようです。

TTL なら
Vcc:コレクター
Vee:エミッター
Vbb:ベース

CMOS なら
Vdd:ドレイン
Vss:ソース
Vgg:ゲート

ってことらしいよ。
でも TTL と CMOS が混在している回路も増えてきて、人類の見通しの甘さを露呈しているらしいよw

2018年5月2日水曜日

Arduino の使い方(初心者向け)2018年版

Arduino 互換ボードを買ったので自分用の初心者向け基礎知識な備忘録。
いつものごとく間違っていることも自信満々に書いてるぞ☆
[書き始め2018年5月/飽きるまで随時更新]

以下、Arduino UNO 互換ボードと NANO 互換ボードでの話だよ。
Arduino は、いろいろな種類があって特にハード面ではかなり異なるので、しっかり確認してから使う。(電源とか)

Arduino とは?

マイコンの動作に必要なものをボードにまとめたもの。
つまりマイコンを簡単に使えるようにしたもの。
Arduino の種類によって乗っているマイコンが異なり、当然仕様や機能なども変わってくる。
ハード自体がオープンソースなので、色々と派生したり亜種があったりする。

ちな、Raspberry Pi とは違って OS はない。

スケッチ?

プログラムのこと。

便利なサイト

Web Editor とかある。

Tinkercad Circuits

ブレッドボード図(回路図)作成から、シミュレーション、スケッチ作成までできるちょっと凄すぎる Web サービス。
Fritzing ほど部品はないけど、基本的なものは揃っているし、なによりシミュレーションできるのが助かりすぎる!
提供元は 3DCG ソフトウェアで有名な Autodesk 。要 Chrome か Firefox。

Circuit Simulator Applet
Webブラウザ上で動く回路シミュレータ。
ちょっと癖のある使い勝手だけど、ショートカットキーを覚えるとすごく早く回路が組める。
Arduino に繋ぐ回路のテストに便利。

開発環境(IDE)

やっぱ今どきは Web IDE っしょ。
Arduino Create
互換ボードでもOK。
【要確認】Arduino 以外のマイコンは、Libraries で検索して Favorites からzipダウンロードして Custom に上げれば使えるっぽい?

電源

電源スイッチはない。PC じゃないから電ブチOK。

UNO

動作電圧:5V
DCジャックの入力電圧(推奨):7-12V

給電は USB から DCジャックから VIN ピンからのいずれか。
ただし VIN は直でマイコンにつながっているので、5V 以外繋いだらイカン。(5.5V くらいまでらしいよ)

NANO

動作電圧:5V
VIN の入力電圧(推奨):7-12V

給電は USB から VIN から 5V ピンからのいずれか。
UNO とは異なり VIN はレギュレータに繋がっているので、7~12V を繋げられる。
また、5V ピンからも給電できるが、これは安定した 5V を繋げる必要がある。

(アナログ・デジタル)I/O ピン

I / Oピンあたりの扱える推奨DC電流は 20mA まで。
いくつかのピンをまとめて出力 150mA 入力 100mA の制限もあるけど、1ピン 20mA を制限としていれば問題ない。はず。(さすがに 10 本のピンで 20mA 出したら壊れるそうです;)

5Vピンは200mA。
3.3Vピンは50mA。

PWM 出力ができるのは、UNO の場合はボードに~が描かれているピンのみ。
NANO の場合は D3,D5,D6,D9,D10,D11 ピンが対応。
アナログ出力(PWM)のためにデジタルピンを使うという点がややこい。

13番のピン

13番は内蔵 LED と連動している。
プログラムの定数「LED_BUILTIN」がこれ。

UNO と NANO のマイコン

ATmega328P
スケッチ済みのマイコンを Arduino から取り外してブレッドボード上で動作させるなんてことも可能。
まぁ互換ボードは殆どマイコン取り外せないけどなw
よく商品説明とか名称に「SMD」とか書いてあるけど、それは表面実装(Surface Mount Device)されてるから(結果的に)マイコン取れないぞってことらしいよ。

マイコンのタイマー

割り込みとは?

SPI、I2Cとは?

どちらもシリアル通信の規格。
マスター(親機・Arduinoなど)とスレーブ(子機・センサーなど)の通信に利用される。
SPI は線が多くなるけど比較的高速に通信できる。
I2C は線は少なくて済むけど比較的低速な通信になる、といった違いがある。
どちらも複数のデバイスを接続できる。
デバイスの電源電圧に注意。