ทดสอบประสิทธิภาพ AVR/Code & Arduino/Code

คอลัมน์ "แกะเกา ARDUINO by APPSOFTTECH"
ผู้เขียน: Prajin Palangsantikul (www.appsofttech.com)


       ในความเป็นจริงเรารู้กันอยู่แล้วครับว่า การเขียนโค้ดด้วย AVR/Code จะทำงานได้เร็วกว่าการเขียนโค้ดด้วย Arduino/Code การเปรียบเทียบนี้เรามองกันในเชิงประสิทธิภาพเท่านั้นนะครับ เพราะการเขียนโค้ดแบบ AVR/Code สิ่งเหล่านี้จะต้องแลกด้วยเวลาในการศึกษาเชิงลึกทางด้านไมโครคอนโทรลเลอร์ AVR และต้องเสียเวลาไปกับสิ่งเหล่านี้ แต่ถ้าต้องการความรวดเร็วทางเลือกด้วย Arduino/Code อาจเป็นหนทางที่ดี

       จากรูปจะเห็นได้ว่าเมื่อเขียนด้วยโค้ด AVR/Code จะใช้เวลาในการทำงานเพียง 10062 มิลลิวินาที ซึ่งน้อยกว่าการเขียนโค้ดด้วย Arduino/Code ซึ่งใช้เวลา เท่ากับ 10080 มิลลิวินาที ในการวนลูปแสดงการติดดับของ LED 1 ดวงด้วยจำนวนการวนลูปเท่ากับ 5000 รอบ


       สิ่งเหล่านี้ผู้พัฒนางานคงต้องเป็นคนตัดสินใจเองครับ ว่าจะเลือกทางไหน แต่สิ่งที่อยากจะบอกคือ "ความยืดหยุ่นของตัวเราเป็นสิ่งสำคัญและจำเป็นอย่างยิ่ง"

       โค้ดโปรแกรมนี้ แค่ทดสอบการจับเวลาเมื่อมีการเขียนค่าไปที่พอร์ต โดยโค้ดทุกอย่างเหมือนกัน ยกเว้น
  • AVR/Code
    ใช้สไตล์การเขียนค่าไปที่พอร์ตด้วยโค้ดแบบ AVR
  • Arduino/Code
    ใช้สไตล์การเขียนค่าไปที่พอร์ตด้วยโค้ดแบบ Arduino

       และไม่ได้สนใจว่าโค้ดทดสอบจะถูกต้อง 100% ในแง่เชิงการวัดประสิทธิภาพการทำงานโปรแกรม


ปล. มีนักพัฒนาได้สร้างโค้ดไลบรารีการเข้าถึงพอร์ตแบบ AVR/Code ให้เหล่านักพัฒนา Arduino ใช้ เมื่อมีความจำเป็นที่ต้องเข้าถึงพอร์ตอย่างรวดเร็ว

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

สร้างต้นคริสต์มาสด้วย JAVA

ฟังก์ชัน SerialEvent กับ Arduino

การใช้งาน PIC18Fxxxx กับ MPLAB X + XC8 ด้วย Peripheral Libraries (PLIBS)