[[labs.beatcraft.com]]~
[[BC-USB-Kit]]~
[[BC-USB-Kit/Tutorials]]~

#contents


*Tutorial3 [#m93e15c3]

** ブレッドボードを活用 [#y6a6437e]
ブレッドボードを使って簡単な回路を組んで、PICから制御してみましょう。

** 準備 [#t5d1b578]
-ブレットボード~
今回は、Sunhayato の [[SRH-21B:http://www.sunhayato.co.jp/material2/index.php/item?cell003=%E6%95%99%E8%82%B2%E5%AE%9F%E7%BF%92%E3%83%BB%E9%9B%BB%E5%AD%90%E5%B7%A5%E4%BD%9C%E8%A3%BD%E5%93%81&cell004=%E3%83%96%E3%83%AC%E3%83%83%E3%83%89%E3%83%9C%E3%83%BC%E3%83%89&name=%E3%83%96%E3%83%AC%E3%83%83%E3%83%89%E3%83%9C%E3%83%BC%E3%83%89%E3%80%80SRH-21B&id=789&label=1]] を使います。~

&ref(T3_BB.jpg,,60%);


-ケーブル~
PICKit3をブレッドボードに差すためのケーブルです。~
[[BC-USB-Kit マニュアル:http://labs.beatcraft.com/ja/index.php?BC-USB-Kit%2FManual]] を参照してください。~
J1の1~5番品がJ2(USBコネクタと反対側にあるピンヘッダー)と同じです。~

&ref(T3_cable.jpg,,60%);&ref(T3_PK.jpg,,60%);


-部品~
LED、抵抗、リード線~


** 回路を作る [#cf87d4e4]
GPIOからの出力でLEDのON/OFFを制御します。~
J1の23番、RA0を使います。~
GNDは14番を使います。(分かりやすい位置にあるので。)~
写真のようにLED、抵抗、リード線を繋いでいきます。~
LEDの向きに注意してください。足の長い方をBC-USB-Kit側に差し込んで下さい。~

&ref(T3_LED.jpg,,60%);


** ソフトの準備 [#pa10ad1e]

main.c の内容。

 #include <stdio.h>
 #include <stdlib.h>
 #include <system.h>
 
 #define LED_ON_BB LATAbits.LATA0
 #define LED_TRIS_ON_BB TRISAbits.TRISA0
 
 int main(int argc, char** argv) {
      int onboard = 0;
      SYSTEM_Initialize(SYSTEM_STATE_START);
      LED_TRIS_ON_BB = 0;
 
      while (1){
           if (onboard>0){
                LED_Off(LED_D1);
                LED_ON_BB = 1;
           }else{
                LED_ON_BB = 0;
                LED_On(LED_D1);
           }
 
           if ( BUTTON_IsPressed(BUTTON_S1) ){
                onboard =! onboard;
           }
      }
      return (EXIT_SUCCESS);
 }

ここで大切なのは、TRISAbits.TRISA0 に0を入れて、出力にセットしているところと、~
LATAbits.LATA0に1を代入するとLEDが点灯し、0を代入すると消灯する、ということです。~
# とりあえず、そういうものということで呪文として覚えても良いですが、リファレンスマニュアル等で調べると理解が深まります。~


** テスト [#v2bf5b4b]
ボタンを押す毎に、LEDが交互に光ればOKです。

#youtube(qxkAiS78NXs);


** 更新履歴 [#uf7429ec]
2015/04/16 初稿公開 ~

RIGHT:Masashi Takemoto a.k.a. lesser




BC::labsへの質問は、bc9-dev @ googlegroups.com までお願い致します。
トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   最終更新のRSS