コンテンツ†
コメント†
センサの値からLEDの光の強さを変える†
PWM編では、LEDの明るさを変えるプロジェクトを作りました。
でも、勝手に明るさが変わるだけでは面白くないです。
マイコンの外の環境をセンサで測定すれば、環境の変化に応じてLEDの明るさを変化させることができるようになります。
今回は、外部の明るさを検知する光センサを利用して、LEDの明るさを変えるプロジェクトを作ってみます。
ADCとは†
ADCとは、Analog to Digital Convertorの略です。
光センサや、マイクなどのセンサから得られる信号は、アナログ信号です。
そのアナログ信号をマイコンで扱うためには、一旦デジタルの値に変換しなくてはなりません。
それをおこなうのがADCです。
ハードウェアの設定†
新しいプロジェクトを作成します。
[User Modules]ツリーから、[ADC10]と[PWM8]を設置します。
画面下の方にある、[ADC10]をドラッグ&ドロップで左から右のブロックへ移動させます。
なぜこういうことをしているかというと、左のブロックと右のブロックで、入力できるピンが違うからです。
この場合、左のブロックに入力できるピンは、Port_0_1、Port_0_3、Port_0_5、Port_0_7です。
また、右のブロックに入力できるピンは、Port_0_0、Port_0_2、Port_0_4、Port_0_6です。
今回は、光センサを[ADC10]に入力します。光センサはPort_0_6に接続されているので、右のブロックにしか入力できないのです。
光センサが繋がっているピンの設定をします。
項目 | 値 | 意味 |
Select | AnalogMUXInput | アナログマルチプレクサ(信号選択器)に接続 |
Drive | High Z Analog | アナログ電圧を入力する設定 |
ADC10に繋がるマルチプレクサの設定をします。
白色の台形をクリックすると、どの信号線を接続するか選択できます。
ここではPort_0_6を選びます。
[ADC10]の設定をします。
項目 | 値 | 意味 |
ADC Input | AnalogColumn_InputSelect... | マルチプレクサからの信号を入力に |
Data Clock | VC1 | ADCのためのクロック |
Current Settings | Normal Current | 電流? |
PWM8の設定をする。
ソフトウェアの設定†
プログラムを書く。