ใบรายงานผลการปฏิบัติงาน ครั้งที่ 16
ส่วนประกอบงานวิชา การเขียนโปรแกรมคอมฯ ครั้งที่ 16
ใบรายงานผลการปฏิบัติงาน
Code
#include <Stepper.h>
#include "Keypad.h"
#define STEP_ANGLE_4STEP 32 //360/11.25 degree
#define STEP_OUT_WITH_GEAR 2048 //32*64
Stepper stepper(STEP_ANGLE_4STEP,8,10,9,11);
char keys[4][4]={ // เก็บข้อมูลที่ หน่วยความจำ 1 ไบต์
{'7','8','9','A'},
{'4','5','6','B'},
{'1','2','3','C'},
{'*','0','#','D'}};
byte rowPins[] = {7,6,5,4};
byte colPins[] = {3,2,1,0};
int speedmotor = 400;
int dirmotor = 1;
Keypad keypad = Keypad(makeKeymap(keys),rowPins,colPins,4,4); //ฟังก์ของkeypad
void setup()
{
}
void loop()
{
char key = keypad.getKey();
if (key != NO_KEY)
{
if (key == '1')
speedmotor = 400;
if (key == '2')
speedmotor = 700;
if (key == '3')
speedmotor = 1000;
if (key == 'A')
dirmotor = 1;
if (key == 'B')
dirmotor = -1;
if (key == 'C')
dirmotor = 0;
}
stepper.setSpeed(speedmotor);
stepper.step(dirmotor);
}
ภาพจำลองการทำงานด้วยโปรแกรม Proteus
#include <Stepper.h>
#include "Keypad.h"
#define STEP_ANGLE_4STEP 32 //360/11.25 degree
#define STEP_OUT_WITH_GEAR 2048 //32*64
Stepper stepper(STEP_ANGLE_4STEP,8,10,9,11);
char keys[4][4]={ // เก็บข้อมูลที่ หน่วยความจำ 1 ไบต์
{'7','8','9','A'},
{'4','5','6','B'},
{'1','2','3','C'},
{'*','0','#','D'}};
byte rowPins[] = {7,6,5,4};
byte colPins[] = {3,2,1,0};
int speedmotor = 400;
int dirmotor = 1;
Keypad keypad = Keypad(makeKeymap(keys),rowPins,colPins,4,4); //ฟังก์ของkeypad
void setup()
{
}
void loop()
{
char key = keypad.getKey();
if (key != NO_KEY)
{
if (key == '1')
speedmotor = 400;
if (key == '2')
speedmotor = 700;
if (key == '3')
speedmotor = 1000;
if (key == 'A')
dirmotor = 1;
if (key == 'B')
dirmotor = -1;
if (key == 'C')
dirmotor = 0;
}
stepper.setSpeed(speedmotor);
stepper.step(dirmotor);
}
ภาพจำลองการทำงานด้วยโปรแกรม Proteus
อธิบายการทำงานของโปรแกรม
ความคุม Stepper Motor ด้วย keypad
ความคิดเห็น
แสดงความคิดเห็น