#include<reg51.h>
sbit sw1=P1^0;
sbit sw2=P1^1;
sbit sw3=P1^2;
sbit sw4=P1^3;
sbit limitsw1=P1^4;
sbit limitsw1=P1^5;
//(วงจรH-Bridge)
sbit IN1=P2^0;
sbit IN2=P2^1;
sbit PWM=P2^2;
void main()
{
if(sw1==0&&sw2==0)
{
IN1=0;
IN2=1;
PWM=1;
}
if(sw3==0&&sw4==0)
{
IN1=1;
IN2=0;
PWM=1;
}
if(limitsw1==0||limitsw2==0)
{
IN1=1;
IN2=1;
PWM=1;
}
}
กด sw1 และ sw2 ให้มอเตอร์หมุนไปทางซ้าย
กด sw3 และ sw4 ให้มอเตอร์หมุนไปทางขวา
แล้วถ้ามีอะไรไปโดนLimit sw ก็จะทำให้มอเตอร์ไม่หมุน
แต่ถ้าผมจะสั่งให้มอเตอร์หมุนทั้งๆที่limit sw ทั้ง2ตัวยังมี logic เป็น 0 อยู่ ผมจะเขียนให้โปรแกรมมันทำงานอย่างไรดีครับ
ตอนนี้ผมรู้แค่คำสั่งพื้นฐานๆ อย่าง if ,for ,while อะครับ
ขอคำปรึกษาหน่อยครับ microcontroller ควบคุมมอเตอร์
sbit sw1=P1^0;
sbit sw2=P1^1;
sbit sw3=P1^2;
sbit sw4=P1^3;
sbit limitsw1=P1^4;
sbit limitsw1=P1^5;
//(วงจรH-Bridge)
sbit IN1=P2^0;
sbit IN2=P2^1;
sbit PWM=P2^2;
void main()
{
if(sw1==0&&sw2==0)
{
IN1=0;
IN2=1;
PWM=1;
}
if(sw3==0&&sw4==0)
{
IN1=1;
IN2=0;
PWM=1;
}
if(limitsw1==0||limitsw2==0)
{
IN1=1;
IN2=1;
PWM=1;
}
}
กด sw1 และ sw2 ให้มอเตอร์หมุนไปทางซ้าย
กด sw3 และ sw4 ให้มอเตอร์หมุนไปทางขวา
แล้วถ้ามีอะไรไปโดนLimit sw ก็จะทำให้มอเตอร์ไม่หมุน
แต่ถ้าผมจะสั่งให้มอเตอร์หมุนทั้งๆที่limit sw ทั้ง2ตัวยังมี logic เป็น 0 อยู่ ผมจะเขียนให้โปรแกรมมันทำงานอย่างไรดีครับ
ตอนนี้ผมรู้แค่คำสั่งพื้นฐานๆ อย่าง if ,for ,while อะครับ