- 追加された行はこの色です。
- 削除された行はこの色です。
[[labs.beatcraft.com]]
[[ANT]]
* BC-ANT-SERIAL 使用例-その1 [#u845c6dd]
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の状態を ソフトウェアで読み込み、ソフトウェアで送信のタイミングを調整することになります)
回路図: &ref(MAKER-2012-0001A.pdf);~
このままでは、BC-ANT-SERIAL と通信できても、ユーザとのやりとりが見えませんので、LEDとプッシュボタンをそれぞれ 4個追加したものが、下記の回路図です。これで、ANTでプッシュボタンの状態を送信したり、ANTで受信した情報を LEDでモニタしたりすることができるようになります。
回路図: &ref(MAKER-2012-0002A.pdf);~
実装例: &ref(DSCF8129.JPG,,25%);~
使用部品一覧
|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との通信については記述してありません。
簡単な確認プログラム: &ref(sample1-1_main.c);
開発環境には LPCXpresso IDE を利用しました。(Version: LPCXpresso v4.3.0)~
新しいプロジェクトを作成して、main.c にコピーしてください。プロジェクトをビルドしてから、LPC1114FN28 にダウンロード
してから、スイッチを押すと、対応するLEDが点灯することを確認してください。
LPC-Link等を使わずに、単独で、電源を供給する場合は、2〜3.3Vの電源を J1 の 1番ピンに +極を、 8番ピンに -極を接続します。
* サンプルプログラム [#o4def6a2]
(サンプルプログラムについては、後日追加します)
- main関数
-- &ref(main.c);
- ANT APIヘッダ
-- &ref(ant.h);
- ANT API
-- &ref(ant.c);
----
2012.11.09 初版: サンプル回路図掲載等
2012.11.09 初版: サンプル回路図掲載等~
2012.11.19 部品リストを追加