Timer1
 
     
  Timer/Counter/Capture/Compare  
     
  การใช้งานในโหมด timer   
  หลักการทำงานของ Timer1 จะคล้ายกับของ Timer0  
     
  สูตรการหาค่าเริ่มต้นในการนับของ TMR1  
 
  TMR1 = 65536-(Td/Pr) *(fosc/4 ) สมการที่ 4
     
  TMR1 เป็นค่าที่จะต้องโหลดเข้า timer1 ,Pr เป็นค่าของ prescaler
  Td เป็นคาบเวลาทั้งหมด ,fosc เป็นความถี่ของ XTAL
     
 
     
  การใช้งานในโหมด Counter  
  สูตรการหาค่าเริ่มต้นในการนับของ TMR1  
  -ใช้สัญญาณนาฬิกา จากแหล่งกำเนิด สัญญาณภายนอก ผ่านขา RB6/T1CKI  
     
 
  TMR0 = 65536-(Time/Pr) *fext สมการที่ 5
     
  TMR0 เป็นค่าที่จะต้องโหลดเข้า timer1 ,Time ค่าเวลาของการนับ มีหน่วยเป็น วินาที
  fext คือความถี่ของสัญญาณนาฬิกาจากภายนอก ที่เข้ามาทางขา RB6/T1CKI
     
 
   
  การคำนวนหาคาบเวลาสูงสุด tdmax  
  TMR0 =65536-cycle = 0 คือ cycle มีค่าเท่ากับ 65536  
  ค่าเริ่มต้นในการนับ TMR1 = 0 (timer จะนับ 0-65536) และค่า prescaler มีค่าสูงสุด PR=8  
     
จาก สมการที่ 1  
 
  cycle=(Td/Pr)*(fosc/4 )=65536  
  Td = 65536*(4/fosc)*PR  
  Tdmax = 65536*(4/fosc)*8 PR=8
  Tdmax = 65536*(4/fosc)  
  Tdmax = 2097152/fosc สมการที่ 6
     
 
     
  เช่น fosc = 4 MHz ค่าคาบเวลาสูงสุดที่ timer1 จะทำได้คือ  
  2097152/4*10^6 =0.5242879986763 sec  
     
     
   การใช้งาน Timer1 ด้วยภาษา C  
  ตัวอย่างการใช้งาน Capture ร่วมกับ Timer1เป็นเครื่องนับความถี่