[実験 MikroC Pro PIC16F84A_LED_0022]
前回の実験のLEDを点滅するプログラムで 点灯する時間と消灯する時間が、
チカチカではなく滑らかに薄暗くなるプログラムを考えなさい。
( 例 1)
MikroC PROの関数
Delay_ms( )
Delay_us( )
Vdelay_ms( )
を使えないのでwhile(ms1--), while(ms2--)で時間稼ぎしています。
ミリ秒の単位では、どうしてもチカチカしてしまいます。
Delay_us( )
で、プログラミング出来ないことは、ありませんが
引数が、扱えないので例のように短く出来ないと思います。
( 例 2)
while(ms1--), while(ms2--)の代わりに
Delay( )関数を作ってみました。
PWM(Pulse Width Modulation)制御は、パルス幅変調とも呼ばれています。
PIC16F84AはCCP(Compare/Capture/PWM)機能のPINがありませんが、
プログラムでPWM制御は可能です。
ということは
PIC16F84AでPWM方式を使えば、DCモータで回転数制御も出来ますね。
回路としては、
PICとDCモータの間にトランジスタ、MOSFETなど入れれば動きます。
if文でも考えて下さい。
少しプログラムが長くなるだけで、難しくはありません。
mikroC PRO for PIC
0 件のコメント:
コメントを投稿