|
本帖最後由 snow7788 於 2019-7-29 16:28 編輯
各位前輩好,小弟最近接觸了Arduino 最近還學到了App Inventor2
目前只會設定固定圈數+控制正反轉1圈
請問如果我想要讓他我按住按鈕"收"他會一直反轉,放開則停住,按住按鈕"放"他會一直正轉,放開則停住,我應該怎麼去寫Arduino跟app的程式呢?
Arduino程式碼如下(目前的程式碼就是按一下轉一圈)
#include <Stepper.h>
#include <SoftwareSerial.h>
SoftwareSerial BT(7,8);
#define STEPS 2048
//stepper(一圈的步數,IN1 IN2 IN3 IN4)
Stepper stepper( STEPS, 2, 3, 4, 5); //28BYJ-48馬達需要把中間兩pin位置交換
int speed = 14; //設定馬達速度(最大17),速度過快馬達不動
int Rece; //接收藍牙模組端訊號
void setup() {
BT.begin(9600);
stepper.setSpeed(speed); //將馬達的速度設定成15 RPM(1分鐘轉15圈)
}
void loop() {
if(BT.available()>0){ //判斷是否有收到訊號
Rece=BT.read(); //讀入變數Rece中
switch(Rece){
case 'u' :
stepper.step(2048); //正1圈
break;
case 'd' :
stepper.step(-2048); //反1圈
break;
}
}
}
APP程式如下
|
|