コンテンツ†
コメント†
LEDを光らせる†
PSoC FirstTouchの基板には、赤・緑・青の3つのLEDが搭載されています。
まずはこれらを光らせるプロジェクトの作成を通じて、開発の方法を大雑把につかみましょう。
新規プロジェクトの作成†
まず、PSoC Designerを起動します。
[File]→[New Project]から、新しいプロジェクトを作成するウィザードを開きます。
プロジェクトの名前を入力します。
あとでわかりやすい名前にしましょう。
利用するPSoCの型番を入力します。
PSoC FirstTouchの基板に搭載されているマイコンの型番は[CCY8C21634-24LFXI]です。
また、開発言語の選択肢があります。特に何もなければ[C]言語を選びましょう。
新しいプロジェクトが作成されました。
ハードウェアの設定†
PSoCの内部の設定をおこないます。
前述したとおり、PSoC FirstTouchには赤・緑・青のLEDが搭載されており、それぞれがPSoCのピンに接続されています。
ピンとは、PSoCに外部から電気信号を入力したり、逆に外部へ電気信号を出力したりする時に使うマイコンの足のことです。
LEDが接続されているピンから、"1"を出力すればLEDが点灯し、"0"を出力すれば消灯します。
それを実現するのが、"LEDモジュール"です。
部品 | ピン |
赤色LED | Port_1_3 |
緑色LED | Port_1_4 |
青色LED | Port_1_2 |
画面右下の[User Modules]ツリーから、[LED]モジュールを探してダブルクリックします。
すると、画面右上の[Workspace Explorer]ツリーに、[LED_1]という名前のモジュールが追加されました。
その[LED_1]をクリックすると、画面左の[Parameters]ウィンドウに、[LED_1]の設定項目が表示されます。
たとえば、赤色LEDを点灯させたい場合は、[LED_1]の設定として[Port_1_3]を選択します。
[Drive]の項目は[Active High]を選択します。
[Active High]は、Onのとき"1"=5[V]、Offのとき"0"=0[V]を出力するというオプションです。
[Active Low]を選ぶと、その逆になります。
項目 | 値 |
Port | Port_1 |
Pin | Port_1_3 |
Drive | Active High |
これでハードウェアの設定は終わりです。
次はソフトウェアの設定(=プログラミング)です。
ソフトウェアの設定†
プログラムを記述するための画面を開きます。
右上の[Workspace Explorer]から、[main.c]を探し、ダブルクリックします。
プログラムを書く画面が開きました。
メイン関数の中に、どのような動作をして欲しいかを記述します。
ここでは、以下のように記述しました。
void main(void){
LED_1_Start();
LED_1_On();
while(1);
}
関数の簡単な説明†
LED_1_Start();
これは、[LED_1]を起動する関数です。
どのモジュールもこれをしなければ機能しません。
LED_1_On();
LEDをOnにします。すなわち、ピンから"1"=5[V]を出力します。
LED_1_Off();
LEDをOffにします。すなわち、ピンから"0"=0[V]を出力します。
LED_1_Invert();
LEDの出力を反転します。OnのときはOffに、OffのときはOnにします。
以上で、ソフトウェアの設定は終わりです。
イメージ図†
ここまでのイメージ図です。
書き込みファイルの生成と書き込み†
ここまでで、ハードウェアとソフトウェア、両方の設定が完了しました。
マイコンに書き込むためのファイルの生成をおこないます。
この作業を[Generate]と呼びます。
コンパイルみたいなものです。
画面上から[Generate]のアイコンを探し、クリックします。
間違いがなければ[0 errors 0 warnings]と出ます。
[Generate]によって書き込みファイルが生成されたら、いよいよマイコンにファイルを書き込みます。
メニューバーから、[Program]→[Program Part]をクリックします。
[Program Part]ウィンドウが開いたら、矢印型の[Download]ボタンをクリックします。
無事書き込みが完了したら、PSoC FirstTouchは動作し始めます。
LEDは光りましたか?
練習問題†
- 複数のLEDを同時に点けてみましょう。
- LEDを点滅させるにはどうしたらよいでしょうか。
リンク†
チュートリアル
PSoC FirstTouch INTRO編
PSoC FirstTouch LED編
PSoC FirstTouch PWM編
PSoC FirstTouch ADC編