Chương II Giới thiệu về họ vi điều khiển ATmega32
2.3. Bộ định thời/bộ đếm 8bit với PWM
2.3.3. Khối so sỏnh ra
Bộ so sỏnh 8 bit liờn tục so sỏnh TCNTn với thanh ghi so sỏnh ra (OCRn). Khi TCNTn bằng với OCRn, bộ so sỏnh sẽ đưa ra một tớn hiệu. Tớn hiệu này sẽ thiết lập lại OCFn tại chu kỳ xung tiếp theo. Nếu được kớch hoạt (OCIE=1 và cờ ngắt chung trong SREG được đặt), OCF tạo một ngắt so sỏnh ra. OCF tự động xúa khi ngắt được thực hiện hoặc bởi phần mềm bằng cỏch viết mức logic 1 vào vị trớ bớt I/O của nú.
Hỡnh 2. 5. Sơ đồ khối bộ so sỏnh ra.
OCR là một bộ đệm kộp trong chế độ hoạt động điều chế theo độ rộng xung (PWM). Trong chế độ hoạt động bỡnh thường và chế độ xúa định thời khi so sỏnh (CTC), bộ đệm này khụng hoạt động.
Trong chế độ tạo dạng súng Non-PWM, cú thể tạo ra tớn hiệu "bằng" bằng cỏch viết 1 vào bit so sỏnh ra cưỡng bức (FOC). Tớn hiệu "bằng" này khụng đặt lại cờ OCFn hay xúa/nạp bộ định thời, nhưng chõn OCn vẫn coi như một tớn hiệu thật.
Mọi hoạt động ghi của CPU vào thanh ghi TCNTn sẽ chặn tất cả cỏc tớn hiệu "bằng" xuất hiện ở cỏc chu kỳ xung tiếp theo. Tớnh năng này cho phộp OCRn được thiết lập giỏ trị như TCNTn mà khụng cần sử dụng ngắt khi xung nhịp của bộ định thời/bộ đếm được kớch hoạt.
Vỡ viết TCNTn ở bất kỳ chế độ hoạt động nào sẽ chặn tớn hiệu "bằng" trong một chu kỳ đồng hồ, do đú nếu giỏ trị của TCNTn bằng với giỏ trị của OCRn, thỡ tớn hiệu "bằng" đầu tiờn sẽ bị mất. Kết quả là dạng xung tạo ra sẽ khụng được chớnh xỏc. Tương tự như vậy, khụng nờn viết TCNTn bằng với giỏ trị BOTTOM khi bộ đếm đang đếm lựi.