Truyền thông dữ liệu-bộ truyền USART

Một phần của tài liệu Đồ án môn học Vi xử lý (Trang 50 - 52)

7. Bộ định thời/đếm timer/counter1 16-bit

11.5 Truyền thông dữ liệu-bộ truyền USART

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.

Truyền khung 5 đến 8 bit dữ liệu

Việc truyền dữ liệu được thiết lập bằng cách nạp dữ liệu truyền vào bộ đệm truyền. Dữ liệu trong bộ đệm sẽ được đưa vào thanh ghi dịch khi thanh ghi dịch đã sẵn sàng gửi một khung mới.

Truyền khung 9 bit dữ liệu

Nếu sử dụng 9 bit dữ liệu, bit thứ 9 phải được ghi vào bit TXB8 trong thanh ghi UCSRB trước khi byte còn lại được ghi vào UDR.

Nhận dữ liệu-bộ nhận USART

Bộ nhận USART được kích hoạt bằng cách đặt bit RXEN trong thanh ghi UCRSB lên 1. Khi bộ nhận được kích hoạt, chân RxD hoạt động như ngõ vào của bộ nhậ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.

Nhận khung với 5 đến 8 bit dữ liệu

Bộ nhận bắt đầu nhận dữ liệu khi nó phát hiện một bit start hợp lệ. Mỗi bit theo sau bit start sẽ được lấy mẫu tại tốc độ baud hoặc tốc độ đồng hồ XCK, và được dịch vào trong thanh ghi dịch của bộ nhận cho đến khi phát hiện một bit stop đầu tiên. Nội dung của thanh ghi dịch sau đó được đưa vào bộ đệm. Bộ đệm của bộ nhận có thể được đọc bằng cách đọc UDR.

Nhận khung với 9 bit dữ liệu

Nếu nhận dữ liệu 9 bit, bit thứ 9 phải được đọc từ bit RXB8 trong thanh ghi UCSRB trước khi đọc các bit thấp trong UDR.

12.HỆ THỐNG XUNG CLOCK

Để cấu hình cho chip hoạt động theo chế độ xung clock nào, người ta dùng các bit cầu chì ( fuse bit ) CKSEL 3, CKSEL2, CKSEL 1. Ngoài ra khi vi điều khiển được đánh thức từ các chế độ nghỉ sang chế độ hoạt động bình thường, bộ tạo dao động cần có một khoảng thời gian để ổn định, khoảng thời gian này gọi là thời gian khởi động ( start-up time ). CPU chỉ thực hiện lệnh khi hết khoảng thời gian khởi động này. Khi ta reset CPU cũng cần một khoảng thời gian trì hoãn (delay time ) để nguồn nuôi đạt mức ổn định trước khi thực bắt đầu thực thi lệnh. Người ta dùng các bit cầu chì CKSEL 0, SUT1, SUT0 để thiết lập thời gian khởi động và thời gian trì hoãn. Khoảng thời gian khởi động và thời gian trì hoãn được đo được đo bằng một đồng hồ riêng, đó là bộ dao động Watchdog. Tần số của bộ dao động

Watchdog phụ thuộc vào điện thế nguồn nuôi và nhiệt độ môi trường. Ở Vcc = 5V và nhiệt độ 25oC thì tần số của bộ dao động Watchdog là 1 MHz. Liên quan đến việc thiết lập của hệ thống xung clock người ta còn dùng tới bit cầu chì CKOPT mà vai trò của nó khá linh hoạt tùy theo việc thiết lập xung clock cho hệ thống như thế nào. Hình 18 cho thấy ATmega128 có tới 7 bộ tạo

clock của hệ thống.

Một phần của tài liệu Đồ án môn học Vi xử lý (Trang 50 - 52)

Tải bản đầy đủ (DOCX)

(104 trang)
w