การใช้งานโมดูลTimer2
 
     
  Timer2  
 

•ใช้เป็น timer ขนาด 8-bit (00-FFh) นับได้ 256 ค่า
•รีจิสเตอร์ Timer2 สามารถเขียนอ่านได้
•สามารถใช้สัญญาณนาฬิกาได้จากเฉพาะภายในเท่านั้น
• มี Interrupt เมื่อการนับเปลี่ยนจาก FFh ไปเป็น 00h (overflow )
•มีทั้งตัวลดทอนการส่งออก (postscaler) มีค่า 1-16 ,ตัวหารความถออสซิลเลเตอร์( prescaler) สามารถเลือกอัตราส่วนเป็น 1,4,16 และ รีจิสเตอร์คาบเวลา (period register)
•สามารถใช้โมดูล CCP(Capture/Compare/PWM) ได้ 1โหมดคือ PWM ในการควบคุม duty cycle ของ PWM
•สัญญาณเอาต์พุตของ Timer 2 ยังถูกใช้ในโมดูลสื่อสารข้อมูลแบบอนุกรมแบบซิงโครนัส (Synchronous Serial Port module :SSP)

 
     
   
     
     
  การใช้งานฟังก์ชัน  
  setup_timer_2 (mode,period, postscale)  
 
  mode ประกอบด้วย  
T2_DISABLED หยุดการทำงานของ Timer2  
T2_DIV_BY_1 กำหนดอัตราส่วนให้ prescaler 1:1  
T2_DIV_BY_4 กำหนดอัตราส่วนให้ prescaler 1:4  
T2_ DIV_BY_16 กำหนดอัตราส่วนให้ prescaler 1:16  
     
period คาบเวลาเพื่อ Reset สัญญาณนาฬิกา Timer2 มีค่า 0-255  
  หรือเป็นการกำหนดค่าให้กับ รีจิสเตอร์คาบเวลา PR2 (period register)  
postscale มีค่า 1-16 จำนวนครั้งที่เกิด overflows ก่อนจะ interrupt (ตัวลดทอนการส่งออก )  
  ไม่มีผลต่อการใช้งานในโหมด PWM  
 
     
  NOTE: prescaler และ postscaler จะถูกเคลียร์เมื่อ ไมโครคอนโทรลเลอร์เกิดรีเซ็ท