ใช้งาน PWM กับ Arduino

PWM หรือ Pulse Width Modulation ใน Arduino มีเทคนิคการเขียนควบคุม ทั้งแบบ "อนาล็อก-Anilog" และ "ดิจิตอล-Digital"
       อย่างที่ทราบกันครับการทำงานจะเป็นลักษณะของ 0 กับ 1 โดยมี HIGH และ LOW จึงสามารถสร้างค่าเปิดและปิด ทำงานกับไม่ทำงาน
เข้าเรื่อง
       โดยการใช้งาน "PWM" นั้นเราจะใช้พอร์ตดิจิตอลในการเขียน AnalogWrite โดยสามารถมีค่าได้ตั้งแต่ [0 - 255] และ [0 - 1023] วิธีการนี้จะเป็นการสลับสัญญาณลอจิก HIGH LOW สลับกันไปๆมาๆ ในคาบเวลาหนึ่ง
พอร์ต อนาล็อก Arduino แต่ล่ะรุ่น
  • Arduino Nano = พอร์ต 3 , 5 , 6 , 9 , 10 และ 11
  • Arduino UNO R3 = พอร์ต 3 , 5 , 6 , 9 , 10 และ 11
  • Arduino MEGA 2560 R3 = ตั้งแต่พอร์ต 2 ถึงพอร์ต 13
สำหรับการนำไปควบคุมความเร็วมอเตอร์นั้น ควรมีชุด ไดร์มอเตอร์ --อันนี้สำคัญมากครับ
คำสั่ง PWM ใน Arduino
       analogWrite(x,x) คือคำสั่งการเขียนค่า ออกไป x ตัวแรกคือ ขาออกของบอร์ดที่เป็น PWM , x ตัวที่2 คือ อาจเรียกว่าค่าความเร็วก็ว่าได้ครับโดยมีค่าตั้งแต่ 0-255 หรือ 0-1023
 ตัวอย่าง
ใน Arduino UNO ต้องการเขียนค่าอะนาล๊อคที่พอร์ต 10
ด้วยค่าแบบอะนาล๊อกที่ 200 จะใช้คำสั่งแบบนี้ครับ
analogWrite( 10 , 200 );
ต้องการเขียนค่าอะนาล๊อคที่พอร์ต 5 ด้วยค่าแบบอะนาล๊อกที่ 255 จะใช้คำสั่ง...
analogWrite( 5 , 255 );

แสดงความคิดเห็น

0 ความคิดเห็น