1สั่งให้Arduino รับคำสั่งจากมนุษย์ผ่านปุ่มกด

Arduino มีไฟล์นามสกุล INO ซึ่งเขียนจากภาษา C++ บน โปรแกรม Arduino IDE บทความนี้จะมาทำความเข้าใจภาษาระดับสูงเพื่อสั่ง(โปรแกรม)ให้ เครื่องจักรทำงานตามคำสั่งที่เราต้องการ โดยความเข้าใจง่ายๆ เริ่มกันที่ แบบฝึกหัด(Example) ที่มีอยู่ในโปรแกรมดังกล่าว

เข้าโปรแกรม arduino ide แล้วคลิกไปที่ File/examples/01basics/DigitalReadSerial

ประการตัวแปรเพื่อจองพื้นที่ใน RAM

int pushButton = 2; // กำหนดให้ ขาที่ 2 ของ arduino คือปุ่มกด

int ledPin = 13; // ให้หลอด LED คือขาที่ 13

int buttonState = 0; //สถานะปุ่มเริ่มที่ 0

กำหนดให้ค่าที่ประกาศ ทำหน้าที่ที่เรากำหนดตามที่เราต้องการ

void setup() {

Serial.begin(9600); // ตั้งค่าให้การแสดงผลไปแสดงที่หน้าจอ

pinMode(ledPin, OUTPUT); // ledPin หรือ ขาที่ 13 เป็น ตัวแสดงข้อมุลให้ มนุษย์รับรู้

pinMode(pushButton, INPUT); // ให้ขาที่ 2 หรือปุ่มกด เป็น ตัวรับข้อมูลไปยัง arduino เพื่อแปรค่าตามที่เรากำหนด

}

เริ่มการวนลูปการทำงานจากบรรทัดบนลงล่างด้วยความรวดเร็วตามสัญญาณนาฬิกา

void loop() {

buttonState = digitalRead(pushButton); //อ่านค่าใน RAM ที่รับข้อมูลจากขาที่ 2 (pushButton)

Serial.println(buttonState); //แล้วนำค่าที่ได้(buttonState)ไปแสดงผลที่ จอภาพ

if (buttonState == HIGH){digitalWrite(ledPin, HIGH);} //ถ้าค่าที่รับมา(input=pushButton= ขา2)เป็น high หรือ (==) low

ให้แสดงข้อมูลที่ได้ที่ขา 13 (ledPin หรือ output เป็นค่าตามที่รับมาเช่น รับค่ามาเป็น high ให้แสดงสถานะที่ output เป็น high

else {digitalWrite(ledPin, LOW);} //ถ้ารับค่ามาเป็น low ก็ให้แสดงค่า output เป็น low

}

ผลที่ได้รับคือ เมือเรากดที่ปุ่ม ตัวเลขในจอมอนิเตอร์ก็จะเปลี่ยนจาก 0 เป็น 1 ตามที่เราต้องการ แบบฝึกหัดนี้มีไว้เพื่อให้เรา สร้างจุดเชื่อมต่อระหว่างโลกทางกายภาพของมนุษย์(analog) กับ เครื่องกล(digital) ให้เครื่องกลดังกล่าวรับรู้ว่า มนุษย์กำลังจะสั่งให้เครื่องกล ทำอะไรผ่านจุดinput

results matching ""

    No results matching ""