หน่วงเวลาในarduino

  • 7 Replies
  • 3662 Views
หน่วงเวลาในarduino
« on: June 10, 2015, 08:23:29 am »
ผมอยากทราบว่าถ้าต้องการหน่วงเวลาเป็นusและค่าที่น่วงมากกว่า32700จะเขียนอย่างไรครับ

Re: หน่วงเวลาในarduino
« Reply #1 on: June 10, 2015, 12:47:18 pm »
http://www.arduino.cc/en/Reference/DelayMicroseconds

อยากได้เพิ่มก็วนลูปfor เอาครับ

Re: หน่วงเวลาในarduino
« Reply #2 on: June 10, 2015, 06:23:36 pm »
http://www.arduino.cc/en/Reference/DelayMicroseconds

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

*

Offline RoLRoR

  • *****
  • 334
    • View Profile
Re: หน่วงเวลาในarduino
« Reply #3 on: June 10, 2015, 06:52:18 pm »
loop , call , for , while , if แปลงเป็น asm แล้ว avr นับคำสั่งละ 1cycle ครับ
เพิ่มเติม : คำสั่งตรวจสอบและกระโดดไปทำงานอีกบรรทัดใช้ 2cycle

Code: [Select]
delay_us(int32_t dx)
{ while(dx > 32767)
{ delayMicroseconds(32767);
dx = dx - 32768;
} delayMicroseconds(dx);
}
ทดสอบแบบนี้ได้ไหมครับ?
รบกวนช่วยแจ้งผลการทดสอบด้วย. :D

Re: หน่วงเวลาในarduino
« Reply #4 on: June 11, 2015, 04:59:31 pm »
loop , call , for , while , if แปลงเป็น asm แล้ว avr นับคำสั่งละ 1cycle ครับ
เพิ่มเติม : คำสั่งตรวจสอบและกระโดดไปทำงานอีกบรรทัดใช้ 2cycle

Code: [Select]
delay_us(int32_t dx)
{ while(dx > 32767)
{ delayMicroseconds(32767);
dx = dx - 32768;
} delayMicroseconds(dx);
}
ทดสอบแบบนี้ได้ไหมครับ?
รบกวนช่วยแจ้งผลการทดสอบด้วย. :D
ผมแปลงไม่เป็นน่ะครับมือใหม่ อิๆ รบกวนด้วยครับ

Re: หน่วงเวลาในarduino
« Reply #5 on: June 11, 2015, 05:43:27 pm »
เปลี่ยนจาก DelayMicroseconds เป็น Delay เฉยๆครับ

Delay เฉยๆหน่วยเป็น ms

เช่นต้องการ delay 500000 uS ก็ใช้เป็น Delay(500);

*

Offline RoLRoR

  • *****
  • 334
    • View Profile
Re: หน่วงเวลาในarduino
« Reply #6 on: June 12, 2015, 04:08:23 am »
เลือกตามขนาดฟังก์ชั่นหน่วงเวลา.ตามท่าน crywolf แนะนำเลยครับ
www.arduino.cc/en/Reference/Delay
ถ้าไม่พอค่อยใช้วิธีเขียนโปรแกรม เรียกซ้ำ เพิ่มเอาได้

ให้แปลงโค้ดเองคงไม่ทำเหมือนกันครับ
เห็นพอมีตัวอย่างที่นี่
www.avr-tutorials.com/assembly/calculating-execution-time-code-single-loop

มีโปรแกรมช่วยสร้างโค้ดด้วยครับ

Re: หน่วงเวลาในarduino
« Reply #7 on: October 08, 2020, 10:56:34 pm »
ลองศึกษาจากกระทู้ การหน่วงเวลาใน arduino ดูครับ