BC-ANT-SERIAL を使ったサンプル その1です。
サンプル その1では BC-ANT-SERIALを使った電子オルゴールの送信ユニットを組み立てます。
BC-ANT-SERIALは わずか 5ピンでマイコン等に接続することができます。 1.9〜3.3Vの電源とグランドのほかに シングルエンドの TXD, RXD, RTS という3本のラインのみです。(ほかに リセット、スリープ、サスペンドを追加することもできます)
この 5ピンは広く使われているピンヘッダを使うことができます。
このサンプル その1は、CPUに NXP社さんの LPC1114FN28/102 (28ピンのDIP品) を利用したものです。 下記の回路図は、最低限度 接続するネットにのみ、配線したものです。CPUへは 電源、SWDおよび BC-ANT-SERIALの配線のみ行ったものです。このうち RTS は 28番ピン (CTS) に接続されていますが、ハードウェアフローでなく ソフトウェアからPIOを通じて制御することもできますので、他のピンに移動させることもできます。なお、移動した場合はハードウェアフローは使えなくなりますから、ソフトウェアで代用することが必要となります。(X-ON/OFFを使う ソフトウェアフローとは異なりますので注意してください。RTSの状態を ソフトウェアで読み込み、ソフトウェアで送信のタイミングを調整することになります)
回路図: MAKER-2012-0001A.pdf
このままでは、BC-ANT-SERIAL と通信できても、ユーザとのやりとりが見えませんので、LEDとプッシュボタンをそれぞれ 4個追加したものが、下記の回路図です。これで、ANTでプッシュボタンの状態を送信したり、ANTで受信した情報を LEDでモニタしたりすることができるようになります。
回路図: MAKER-2012-0002A.pdf
実装例:
使用部品一覧
No | 数量 | リファレンス | 品名 | スペック等 | 備考 |
1 | 2 | C1, C2 | 積層セラミックコンデンサ | 0.1uF | 汎用品でOK |
2 | 1 | C3 | タンタルコンデンサ | 10uF | 電解コンデンサ等、極性に注意 |
3 | 4 | D1, D2, D3, D4 | LED | チップタイプでも リード付 φ3〜5mmでも OK | |
4 | 1 | J1 | ピンヘッダ | 1列 x 8ピン | 2.54mmピッチ |
5 | 1 | J2 | ピンヘッダ用ソケット | 1列 x 5ピン | 2.54mmピッチ BC-ANT-SERIALモジュールに合わせる |
6 | 4 | R1, R2, R3, R4 | 抵抗 1/16〜1/4W | 330〜2.2kΩ | LEDのタイプにあわせて 抵抗値を選ぶ |
7 | 4 | S1, S2, S3, S4 | プッシュスイッチ | モーメンタリタイプ | 押すと ONになるタイプ |
8 | 1 | U1 | CPU | LPC1114FN28/102 | 秋月電子、マルツなどで購入可能 |
9 | 1 | BC-ANT-SERIAL | |||
10 | 1 | ピンヘッダ | 1列 x 5ピン | 2.54mmピッチのものを BC-ANT-SERIALに半田付けし、J2に接続します |
LED、抵抗、コンデンサ、スイッチ、ピンヘッダ、CPUなどは 秋葉原等で購入できます。 通信販売を利用するときは、秋月電子通商さん、千石電子さん、マルツさんなどの通信販売でそろえることができると思います。
実際に、組み立てるときの注意事項については、回路図にも記載しましたが、この回路図に対する補足説明を記述します。
C3は、電源ラインが不安定な場合に、追加します。だいたい 1〜10uF程度のタンタルコンデンサが良いでしょう。 一部を除き極性があります。 コンデンサの+端子を Vdd 側に -端子を GND側に接続します。
LEDは、出力ポートに 0 を書き込むと点灯し、 1 を書き込むと消灯します。実装するLEDのタイプによって、R1 〜 R4 に使う
抵抗の値を調整する必要があります。
1608サイズのチップLEDの場合、少ない電流(500μA弱)でも LEDが発光しているのを見ることができますので 回路図では 2.2kΩを
指定しています。。しかし リード線のあり、外形が 5mm程度あるLEDの場合、2〜3mA程度の電流を流さないと、発光していることが
見えませんので 抵抗値を小さくする必要があります。チップLEDでも 2〜3mA流しても問題ありませんから、抵抗の値は 330〜510Ω
でも特に問題ありません。(消費電流が増加した分、明るく光りますが、明るすぎると感じているのでチップLEDを使うときは
2kΩ前後にしています)
プッシュスイッチは CPU内蔵のプルアップ抵抗を有効にしながら、GNDに接続します。スイッチを離している状態では 1 が読み込まれ、
押している状態では 0 が読み込まれます。
プログラムのミス等により、プルアップ抵抗を無効にしたまま動作させると、入力端子が不安定になります。多くの場合は、
1が読み込まれるようですが、動作は保証されなくなります。また、最悪の場合は CPUを熱暴走により、破壊してしまいます。
もし、プルアップ抵抗が無効になって、CPUが不安定になるのを避けたい場合は、電源に向かってプルアップ抵抗を追加してください。
この回路の LEDおよび SWの動作テストを行うプログラムは、下記のものになります。
このプログラムではスイッチの状態を読み取り、対応する LEDを点灯させるだけの単純なものになります。まだ、
BC-ANT-SERIALとの通信については記述してありません。
簡単な確認プログラム: sample1-1_main.c
開発環境には LPCXpresso IDE を利用しました。(Version: LPCXpresso v4.3.0)
新しいプロジェクトを作成して、main.c にコピーしてください。プロジェクトをビルドしてから、LPC1114FN28 にダウンロード
してから、スイッチを押すと、対応するLEDが点灯することを確認してください。
LPC-Link等を使わずに、単独で、電源を供給する場合は、2〜3.3Vの電源を J1 の 1番ピンに +極を、 8番ピンに -極を接続します。
(サンプルプログラムについては、後日追加します)
2012.11.09 初版: サンプル回路図掲載等
2012.11.19 部品リストを追加