Author: onishi もくじ†コメント†コメントはありません。 Comments/チュートリアル/PSoC1duino_LED編 LEDを点灯させる†PSoC1duinoについているLED(P1.6)を点灯させるには、下記のようなソースコードを記述します。 void main(void){ LED_Start(); LED_On(); while(1); } それでは、LEDを点滅させるにはどうすればよいでしょうか? LEDを点滅させる†PWM(Pulse Width Modulation)を使って点滅させる†1.まずは、モジュールを追加します。PSoC Designerの右下のUser Modules に、「PWMs」というものがあると思います。今回はその中で「PWM8」というモジュールを使用してみましょう。 2.次は、結線してみましょう。光らせたいLEDのあるP_1_6を選択し、selectを「GlobalOutOdd_6」にします。続いて、ユーザモジュールとROバス(ユーザモジュールの下にある、横に伸びた線)を接続します。PWM8_1を選択し、CompareOutを「Row_0_Output_2」とします。 次に、ROバスの右端についたアイコンをクリックします。すると、(a)のようなウインドウが開くので、一番下にある三角形をクリックして、「GlobalOutOdd_6」にします。そうすると、選択した三角形の色が変わるので、ウインドウを消してください。これで、結線は完了です。(b)のように、PWM_8_1 からLED までつながっているはずです。 3.パラメータを設定していきます。画面左側のパラメータを下記の様に変更します。
PWM8_1
PeriodとPulseWidthの値は、今回はソースコードで変更します。 4.最後に、ソースコードを記述し、ビルドします。 void main(void){ int i; BYTE pulsewidth=0; PWM8_1_Start(); PWM8_1_WritePeriod(255); PWM8_1_WritePulseWidth(128); while(1); } できた.hexをPSoC1duinoに転送することで、LEDが点滅するはずです。 Timerを使って点滅させる†手順はPWMとさほど変わりません。「PWM8_1」を「Timer8_1」と置き換えると、〜2.までは全く同じです。
4.最後に、ソースコードを記述して、ビルドします。 void main(void){ Timer8_1_Start(); Timer8_1_WritePeriod(100); while(1); } これでLEDが点滅するはずです。 |