Timer là gì?
Hãy tưởng tượng Timer trong vi điều khiển STM32 giống như một chiếc đồng hồ báo thức siêu cấp. Nó không chỉ báo giờ, mà còn là một công cụ đa năng giúp STM32 thực hiện vô số tác vụ đòi hỏi sự chính xác tuyệt đối về mặt thời gian, từ việc chớp tắt một bóng đèn LED cho đến điều khiển cả một cánh tay robot phức tạp.
Tại Sao Timer Lại Quan Trọng Đến Vậy?
Đo Thời Gian
Đo chính xác một sự kiện kéo dài bao lâu.
Tạo Độ Trễ
Bắt một tác vụ phải chờ đợi trong một khoảng thời gian.
Tạo Xung PWM
Điều khiển độ sáng đèn LED hoặc tốc độ động cơ.
Đếm Sự Kiện
Đếm số lần một sự kiện bên ngoài xảy ra.
Tác Vụ Định Kỳ
Thực thi một công việc lặp đi lặp lại.
Bên Trong Timer Có Gì?
Xung Nhịp (Clock)
"Nhịp tim" của hệ thống
Bộ Chia Tần (Prescaler)
Làm chậm "nhịp tim" lại
Bộ Đếm (Counter)
Bắt đầu đếm lên
Thanh Ghi ARR
Đích đến của bộ đếm
Ngắt (Interrupt)
"Báo động" khi đếm xong!
Timer nhận xung nhịp, làm chậm lại bằng Prescaler, sau đó Counter sẽ đếm cho đến khi đạt giá trị trong thanh ghi ARR và kích hoạt một ngắt.