PICでサーボモータ制御(C言語)
個人的PICでのにサーボ制御をしてみようとしています。
まず、動作確認をしてみようとPIC(16F84A)を用いて、PICの基本回路を構成してあります。
次にサーボ制御をしてみようという事で、信号をRB1から得る事にします。
(電源、グランドはしっかり接続してあります)
そこで、以下のプログラムを走らせてみました。
※コンパイラはHI-TECH社の無料版を使っています。
#include<pic.h>
#include<delay.h>
main(void){
int a, b;
TRISA = 0x00;
TRISB = 0x00;
while(1){
RB1=1;
for(a=0;a<16;a++)DelayUs(100); //PointA
RB1=0;
for(b=0;b<186;b++)DelayUs(100); //PointB
}
}
※DelayUs関数はμsecの待ち発生関数です。
サーボが約20secのパルスということなので、動作確認のために組みました。
PointA,Bと記述した部分をいくら変動させても動作がかわらず一定の角度方向にしか動きません。
ただ、確認のために組んだプログラムなのですが、これではだめなのでしょうか?
お礼
迅速な対応ありがとうございます 中国のメーカーでしたか~