CL RA ;Nội dung thanh gh iA bằng zero.
5 .3 Nguồn xung đồng hồ cho bộ định thờ
Như chúng ta biết, mỗi bộ định thời cần một xung đồng hồ để giữ nhịp. Vậy nguồn xung đồnghồ chocác bộđịnh thời trên8051 lấy ở đâu?. Nếu C/T = 0thì tần số thạchanhđiliềnvới8051được làmnguồnchođồnghồcủabộđịnhthời.Điềuđó có nghĩa là độ lớn củatần số thạch anh đikèm với 8051quyết định tốcđộnhịp của các bộđịnhthờitrên 8051.Tần số của bộđịnh thờiluôn bằng 1/12tầnsố củathạch anhgắnvới8051.
5.4 Bít cổng GATE
MộtbítkháccủathanhghiTMODlàbítcổngGATE.Để ýtrênthanhghiTMOD tathấycảhaibộđịnhthờiTimer0và Timer1đều cóbítGATE.Vậy bítGATEdùng đểlàm gì?Mỗi bộđịnh thờithựchiệnđiểm khởiđộngvà dừng.Một sốbộđịnhthời thựchiệnđiều nàybằngphầnmềm,mộtsốkhácbằngphầncứngvàmộtsốkhácvừa bằng phần cứng vừa bằng phần mềm. Các bộ định thời trên 8051 có cả hai. Việc
khởi động và dừng bộ định thời được khởi động bằng phần mềm bởi các bít khởi độngbộđịnh thờiTR làTR0 và TR1.Điềunày có được nhờ cáclệnh“SETB TR1” và “CLR TR1” đối với bộ Timer1 và “SETB TR0” và “CLR TR0” đối với bộ Timer0.LệnhSETB khởiđộngbộđịnhthờivàlệnhCLRdùngđể dừngnó.Cáclệnh này khởi động và dừngcác bộ định thời khibít GATE = 0 trong thanh ghi TMOD. Khởi động và ngừngbộđịnh thờibằng phần cứngtừ nguồn ngoài bằng cáchđặt bít GATE=1trongthanhghi TMOD.Tuynhiên,đểtránh sựlẫnlộnngay từbâygiờ ta đặtGATE=0có nghĩa làkhông cầnkhởiđộng và dừngcácbộđịnhthờibằngphần cứng từ bên ngoài. Để sử dụng phần mềm để khởi động và dừng các bộ định thời phần mềmđể khởi động và dừng cácbộ địnhthời khi GATE =0. Chúng ta chỉcần cáclệnh“SETB TRx”và“CLRTRx”.
5.5 Các chế độ đếm của bộ định thời
Hình 5-1.Timer0–Mode0
Hình 5-3. Timer 0 – Mode 2
Hình 5-2. Timer 0 – Mode 3
Ngắttimer
Các ngắt timercó địa chỉVector ngắtlà 000BH (timer0) và 001BH (timer 1).Ngắt timerxảy rakhicácthanh ghitimer(TLx ITHx)tràn vàsetcờbáo tràn(TFx) lên1. Các cờ timer (TFx) không bị xóa bằng phần mềm. Khi cho phép các ngắt, TFx tự độngbịxóabằngphầncứngkhiCPUchuyểnđếnngắt.