1. Timer 2 trên vi điều khiển AT89S52
Khác với dòng vi điều khiển 8051 cổ điển chỉ có Timer 0 và Timer 1, chip AT89S52 được trang bị thêm Timer 2 16-bit với các thanh ghi điều khiển T2CON, RCAP2H, RCAP2L.
2. Mã nguồn hợp ngữ ứng dụng Timer 2
#include <sfr52.inc>
;Bo bao gio RTC: hh-mm-ss
ORG 0
ljmp main
org 002Bh
T2ISR: CPL p1.0
Acall delay
;CLR TF2
RETI
ORG 0030H
main:
MOV IE,#A0H
MOV T2MOD,#00000010B
MOV RCAP2L,#LOW(-16)
MOV RCAP2H,HIGH(-16)
SETB P1.0
SETB TR2
SJMP $
delay: mov r0,#7fh
dl1: mov r1,#ffh
dl2: djnz r1,dl2
djnz r0,dl1
ret
END