L6470 test

Dependencies:   L6470SDC mbed

Committer:
aka_keishin
Date:
Sun Jul 29 16:05:51 2018 +0000
Revision:
0:9a595b91b70e
L6470??????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
aka_keishin 0:9a595b91b70e 1 #include "mbed.h"
aka_keishin 0:9a595b91b70e 2 #include "L6470SDC.h"
aka_keishin 0:9a595b91b70e 3
aka_keishin 0:9a595b91b70e 4 int main(){
aka_keishin 0:9a595b91b70e 5 //インスタンス化
aka_keishin 0:9a595b91b70e 6 //USBシリアルとSPIとCSのピン別名を渡す
aka_keishin 0:9a595b91b70e 7 L6470SDC l6470(USBTX, USBRX, SPI_MOSI, SPI_MISO, SPI_SCK, D10);
aka_keishin 0:9a595b91b70e 8
aka_keishin 0:9a595b91b70e 9 wait(1);
aka_keishin 0:9a595b91b70e 10
aka_keishin 0:9a595b91b70e 11 //L6470ドライバーの初期化
aka_keishin 0:9a595b91b70e 12 l6470.init();
aka_keishin 0:9a595b91b70e 13
aka_keishin 0:9a595b91b70e 14 wait(1);
aka_keishin 0:9a595b91b70e 15
aka_keishin 0:9a595b91b70e 16 //1番目のモーターの最大速度を毎秒100ステップに設定
aka_keishin 0:9a595b91b70e 17 l6470.setMaximumSpeed(1, l6470.calcMaxSpd(100));
aka_keishin 0:9a595b91b70e 18
aka_keishin 0:9a595b91b70e 19 //0.02回転のみ回す
aka_keishin 0:9a595b91b70e 20 for(int i = 0; i < 10; i++) {
aka_keishin 0:9a595b91b70e 21 l6470.run(1, l6470.calcSpd(100), true);
aka_keishin 0:9a595b91b70e 22 wait(0.2);
aka_keishin 0:9a595b91b70e 23 l6470.stop(1);
aka_keishin 0:9a595b91b70e 24
aka_keishin 0:9a595b91b70e 25 //モーターが完全停止するまで待つ
aka_keishin 0:9a595b91b70e 26 while(l6470.isBusy(1));
aka_keishin 0:9a595b91b70e 27
aka_keishin 0:9a595b91b70e 28 //回転して止めてる時間
aka_keishin 0:9a595b91b70e 29 wait(5.0);
aka_keishin 0:9a595b91b70e 30 }
aka_keishin 0:9a595b91b70e 31
aka_keishin 0:9a595b91b70e 32 //それぞれのモーターの初期位置に戻る(zeroとhomeは別名の同一関数)
aka_keishin 0:9a595b91b70e 33 l6470.home(1);
aka_keishin 0:9a595b91b70e 34 }
aka_keishin 0:9a595b91b70e 35