|
|||||||||||
วิธีการศึกษา โมดูล Timer แต่ละตัวมีขนาดเท่าไร ขอบเขตในการนับ หรือ สร้างฐานเวลา มีค่าเท่าไร การอ่านสัญาณญาณจากภายนอก หรือการส่งสัญญาณ ออกสู่ภายนอก ของแต่ละโมดูลที่ขาใด สำหรับการเพื่อไว้ในการออกแบบ คุณสมบัติพิเศษของ Timer แต่ละตัวและช่องทางเลือก |
|||||||||||
|
|||||||||||
การใช้งาน Timer ร่วมกับโมดูล CCP อย่างไร | |||||||||||
ใช้เป็น timer/counter
ขนาด 8-bit (00-FFh) รีจิสเตอร์ Timer0 สามารถเขียนอ่านได้ มีตัวหาร (prescaler) ขนาด 8-bit คือสามารถเลือกอัตราส่วนเป็น 2,4,8,16,32,64,128,256 และตัวเพิ่มค่า (Postscaler) เวลาสำหรับ watchdog สามารถเลือกอัตราส่วนเป็น 1,2,4,8,16,32,64,128 โดยสามารถเลือกให้งานได้อย่างใดอย่างหนึ่ง สามารถเลือกแหล่งสัญญาณนาฬิกาจากภายใน หรือภายนอกผ่านขา RA4/T0CKI มี Interrupt เมื่อการนับเปลี่ยนจาก FFh ไปเป็น 00h (overflow ) เมื่อใช้แหล่งสัญญาณนาฬิกาจากภายนอก สามารถเลือกได้ว่าจะนับที่ขอบขาขึ้นหรือขาลง |
|||||||||||
Timer1 | |||||||||||
ใช้เป็น
timer/counter ขนาด 16-bit (0000-c) |
|||||||||||
Timer2 | |||||||||||
ใช้เป็น timer
ขนาด 8-bit (00-FFh) นับได้ 256 ค่า |
|||||||||||
CCP(Capture/Compare/PWM) | |||||||||||
CPP1 เป็นโมดูลที่ใช้ร่วมกับ Timer มีหน้าที่ในการเก็บข้อมูลอยู่ 3 ลักษณะคือ | |||||||||||
เก็บข้อมูลในการตรวจจับสัญญาณ
(Capture) ใช้งานร่วมกับ timer1 เก็บข้อมูลเปรียบเทียบสัญญาณ (Compare) ใช้งานร่วมกับ timer1 เก็บค่า duty cycle ในการมอดูเลชั่นทางความกว้างของพัลส์ (PWM Pulse Width Modulator) ใช้งานร่วมกับ timer2 |
|||||||||||
ตัวอย่างโปรแกรม | |||||||||||
![]() |
|||||||||||
ศมิทธิ์ เอมสมบัติ |
|||||||||||