4. Mô tả các thanh gh
4.5.1. Bit 1-OCF0: Cờ so sánh ngõ ra 4.5.2 Bit 0-TOV0: Cờ tràn bộ đếm
4.5.2. Bit 0-TOV0: Cờ tràn bộ đếm
Bit TOV0 được đặt lên 1 khi bộ đếm bị tràn và được xóa bởi phần cứng khi vector ngắt tương ứng được thực hiện. Bit này cũng có thể được xóa bằng phần mềm.
II.6. USART
Bộ truyền nhận nối tiếp đồng bộ và bất đồng bộ là một thiết truyền thông nối tiếp có các chức năng chính như sau:
-Hoạt động song công (các thanh ghi truyền và nhận nối tiếp độc lập với nhau).
-Hoạt động đồng bộ hoặc bất đồng bộ -Bộ tạo tốc độ baud có độ chính xác cao
-Hỗ trợ khung truyền nối tiếp với 5, 6, 7, 8, hoặc 9 bit dữ liệu và 1 hoặc 2 bit stop
-Kiểm tra chẵn lẻ -Phát hiện tràn dữ liệu -Phát hiện lỗi khung
-Lọc nhiễu, bao gồm phát hiện bit start lỗi và bộ lọc thông thấp số -Ngắt khi kết thúc truyền, thanh ghi truyền hết dữ liệu và kết thúc nhận -Chế độ truyền thông đa vi xử lý
-Chế độ truyền đồng bộ tốc độ cao
-ATmega162 có hai USART, USART0 và USART1.
Sơ đồ khối của bộ USART như sau:
Hình 2.16.Sơ đồ khối bộ USART
USART bao gồm 3 phần chính: bộ tạo xung clock, bộ truyền và bộ nhận. Các thanh ghi điều khiển được sử dụng chung giữa các phần này.
1.Tạo xung clock
Bộ tạo xung clock tạo ra xung đồng hồ căn bản cho bộ truyền và bộ nhận. USART hỗ trợ 4 chế độ hoạt động xung clock: bất đồng bộ, bất đồng bộ tốc độ cao, truyền đồng bộ master và truyền đồng bộ slave. Sơ đồ khối của bộ tạo xung clock như sau:
Hình 2.17.Đơn vị tạo xung clock txclk: xung đồng hộ bộ truyền
rxclk: xung đồng hồ bộ nhận
xcki: tín hiệu vào từ chân XCK, sử dụng cho hoạt động truyền đồng bộ master xcko: tín hiệu xung clock ngõ ra tới chân XCK, sử dụng cho hoạt động truyền đồng bộ slave
fosc: tần số từ chân XTAL
2.Định dạng khung truyền
USART chấp nhận tất cả 30 tổ hợp của các định dạng khung truyền sau đây: -1 bit start
-5, 6, 7, 8, hoặc 9 bit dữ liệu -Có hoặc không có bit chẵn lẻ -1 hoặc 2 bit stop
Một khung truyền bắt đầu với một bit start, theo sau đó là bit có trọng số thấp nhất (LSB) của dữ liệu (có thể lên tới 9 bit), kết thúc bằng bit có trọng số lớn nhất (MSB) và bit stop.
Hình 2.18. Định dạng khung truyền
St: bit start (mức thấp) (n): bit dữ liệu (0 đến 8) P: bit chẵn lẻ
Sp: bit stop (mức cao)
IDLE: không có dữ liệu truyền (mức cao trong suốt thời gian idle)
3.Khởi tạo USART
Quá trình khởi tạo USART bao gồm việc thiết lập tốc độ baud, thiết lập định dạng khung và kích hoạt bộ truyền và bộ nhận.
4.Truyền thông dữ liệu-bộ truyền USART
Bộ truyền USART được kích hoạt bằng cách thiết lập bit TXEN trong thanh ghi UCSRB. Khi bộ truyền được kích hoạt, chân TxD hoạt động như ngõ ra của bộ truyền nối tiếp. Tốc độ baud, chế độ hoạt động và định dạng khung truyền phải được thiết lập trước khi thực hiện truyền dữ liệu.