LPC1768 モータドライブ
mbed LPC1768にモータドライバ()TA7291Pを接続。
可変抵抗の電圧をADで読み取り、TA7291Pの入力にPWMとして流し込む。
合わせ別のPWMでサーボモー^他の出力を生成。
結果、可変抵抗のつまみに応じてモーターの回転速度が変化し
サーボが動く。
#include "mbed.h" DigitalOut myled(LED1); PwmOut redLed(P2_5); PwmOut moterIN1(P2_1); PwmOut servo(P2_2); AnalogIn ain(A5); Serial pc(USBTX, USBRX); int main() { int count = 0; int ledOn = 0; redLed.period(0.020); moterIN1.period(0.020); servo.period(0.020); while(1) { double degree = ain; double value; value = 1.7*degree - 0.3; redLed.write(value); moterIN1.write(value); double y = 3.17*degree - 0.133; servo.pulsewidth(y/1000); if((count % 100) == 0){ pc.printf("DC_moter %d : %f : %f : %f\n", count / 100, degree, value, y); if(ledOn == 0){ myled = 1; ledOn = 1; } else{ myled = 0; ledOn = 0; } } wait(0.01); count++; } }