ความรู้แน่น ฟรีสำหรับชุมชน ArduinoAll ที่นี่เท่านั้น

ฟรีและดีที่สุด คอร์สอบรม Arduino + NodeMCU
ทำเพื่อแบ่งปัน ห้ามนำไปจำหน่าย หรือเก็บเงินค่าเรียน
  !!!


  


AllNewStep รับประกันคุณภาพทุกชิ้น วันจันทร์-ศุกร์แจ้งชำระสินค้าก่อน 14.00 จัดส่งทันทีวันนี้ค่ะ

กรุงเทพ /ภาคกลาง ได้พรุ่งนี้


*** สินค้าทุกชิ้น ถ้าสามารถทำรายการสั่งซื้อได้ แสดงว่ามีครบทุกรายการค่ะ *** 

พิมพ์ค้นหาบทความ หัวข้อกระทู้ และสินค้าในเว็บ AllNewStep ได้ที่นี่
QUOTE 

ป้อนค่าให้กับ อาร์เรย์

FMG

สามารถกำป้อนค่าให้กับตัวแปรอาร์เรย์จาก potentiometer ได้อย่างไรคับ ถ้าผมกำหนดให้

ตัวแปร์อาร์เรย์ มี 100 ตำแหน่ง

QUOTE 
ความคิดเห็นที่ #1
เจ้าของร้าน

ประกาศ array มา 100 ตัว

เช่น int val[100];

กำหนดเงื่อนไขในการป้อนค่า เช่น ให้อ่านค่ามาทุก 0.5 วินาที แล้วเก็บไว้ในตัวแปร array 

ตัวอย่างโคดดังนี้

for(int i=0;i<100;i++){

   val[i] = analogRead(vr);

   delay(500);

}

เมื่อจบ loop นี้ ก็จะได้ค่า 100 ตัว เก็บไว้ในตัวแปร array แล้วครับ

QUOTE 
ความคิดเห็นที่ #2
FMG

มีอีก หนึ่งคำถามคับ

การใช้คำสั่ง if () มากเกินไปมีผลต่อการเคลื่อนที่ช้าลงของ เซอร์โวมอเตอร์ไหมคับ

//พอดีผมทำแขนกลตัวเล็กๆ 3 แกนให้เซอร์โวมอเตอร์เคลื่อนที่ไปพร้อมกันโดยใช้การ interrupt และตรวจสอบเงื่อนไขด้วย if() ผลที่ได้คือเคลื่อนที่ smooth ได้ตามต้องการแต่ตัวเซอร์โวมอเตอร์เคลื่อนที่ช้าทั้งที่ไม่ได้ ดีเลย์ 

QUOTE 
ความคิดเห็นที่ #3
เจ้าของร้าน

ถ้ากำลังทำคำสั่งก่อนหน้าอยู่ แล้วยังไม่ถึงเงื่อนไข if ก็จะทำให้ไม่ได้เช็คเงื่อนไข

เช่นตัวอย่างนี้

if(digitalRead(1)==1){

Serial.println("Click");

}

delay(5000);

จะเห็นว่า ถ้าทำคำสั่ง delay() อยู่ซึ่งใช้เวลา 5 วินาที

ระหว่างนี้ ถึงจะกดปุ่มเข้ามา ก็ไม่มีข้อความพิมพ์คำว่า Click ทำให้ดูเหมือนโปรแกรมทำงานไม่ถูกต้อง

วิธีแก้คือใช้คำสั่ง interrupt ซึ่งจะเป็นการขัดจังหวะ ในขณะที่ delay 5 วินาที แต่ถ้ามีคำสั่ง interrupt ก็จะไปทำในนั้นก่อนทันที

แต่ขา interrupt มีจำกัด และคำสั่งใน interrupt ไม่ควรยาวมาก

 

อีกวิธีที่แนะนำคือ ให้ทำงานเป็นแบบหลายงานพร้อมกัน ใช้ Timing ในการทำงาน มีไลบารีหลายตัว ลองดูตัวนี้ครับ

https://blog.protoneer.co.nz/arduino-task-scheduler/

 

 

แสดงความคิดเห็นที่ 1-3 จากทั้งหมด 3 ความคิดเห็น
ขาย ARDUINO
คุณภาพ อันดับ 1

ได้รับรางวัลร้านยอดเยี่ยม
ตั้งแต่ปี 2558
ขาย Arduino
วีดีโอสอน Arduino

สอน esp8266

สอน Arduino IoT
สอน Arduino แบบเร็ว

สอน NodeMCU

อุปกรณ์ Arduino

MEMBER ZONE

พูดคุย-สอบถาม