วันพฤหัสบดีที่ 13 พฤษภาคม พ.ศ. 2553

Duty cycle register buffering

รีจิสเตอร์กำหนด pwm duty cycle (PDC1-PDC4) ใช้เก็บค่าเพื่อให้การปรับปรุงค่าสัญญาณ pwm ไม่เกิดความผิดพลาด แต่ละแหล่งกำเนิดมีรีจิสเตอร์ PDCx (รีจิสเตอร์บัฟเฟอร์) ที่เข้าถึงได้โดยผู้ใช้งานและ non-memory duty cycle ที่เก็บค่าขณะทำงาน pwm duty cycle จะปรับปรุงค่าด้วยค่าในรีจิสเตอร์ PDCx ตามเวลาที่ระบุไว้ใน pwm period เพื่อป้องกัน glitchless ในสัญญาณ pwm ขาออก
เมื่อ pwm time base ทำงานใน free running mode หรือ single event mode (PTMOD=0x) เมื่อไหร่ก็ตามที่ PTMR เท่ากับ PTPER จะมีการปรับปรุงค่า pwm duty cycle และ PTMR จะรีเซตเป็น '0'
Note: อะไรที่เขียนในรีจิสเตอร์ PDCx จะปรับปรุงค่า pwm duty cycle โดยทันทีเมื่อไม่อนุญาต pwm time base (PTEN=0) ซึ่งทำให้ duty cycle เปลี่ยนโดยมีผลก่อนอนุญาต pwm time base (PTEN=1)
เมื่อ pwm time base ทำงานใน up/down counting mode (PTMOD=10) จะมีการปรับปรุงค่า duty cycle เมื่อค่า PTMR register เป็น 0 และ pwm time base เริ่มนับขึ้น ภาพที่ 15-10 ชี้เวลาที่เกิดการปรับปรุง pwm duty cycle ในโหมด pwm time base นี้
เมื่อ pwm time base อยู่ใน up/down counting mode with double updates (PTMOD=11) จะมีการปรับปรุงค่า duty cycle เมื่อค่า PTMR register เป็น 0 และค่า PTMR register ตรงกับค่า PTPER register ภาพที่ 15-11 ชี้เวลาที่เกิดการปรับปรุง duty cycle ในโหมด pwm time base นี้

ไม่มีความคิดเห็น:

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