Bộ truyền/nhận UART

Một phần của tài liệu Mô phỏng và điều khiển thực tế động cơ 1 chiều có công suất nhỏ và với các yêu cầu điều khiển không cao (Trang 32 - 34)

Hình 2.10 minh họa sơ đồ khối của bộ truyền/nhận UART. Việc truyền dữ liệu được khởi tạo bằng cách ghi dữ liệu vào thanh ghi dữ liệu I/O USART, ký hiệu là UDR. Dữ liệu được truyền từ UDR đến thanh ghi dịch truyền khi :

Hình 2.10 : Sơ đồ khối của bộ truyền/nhận UART

Một ký tự mới đã được ghi vào UDR sau khi bit stop từ ký tự trước đó đã dịch chuyển ra. Thanh ghi dich chuyển ra được nạp ngay lập tức. Ở thời điểm này bit UDRE trong thanh ghi trạng thái USART, USR, được đặt khi bit này đặt thành “1”, bộ USART đã sẵn sàng nhận ký tự tiếp theo. Vào cùng thời điểm khi dữ liệu được truyền từ UDR đến thanh ghi dịch bộ truyền 10 (11) bit, bit 0 của thanh ghi dịch bị xóa (start bit) và bit 9 (10) được đặt (stop bit). Nếu như một dữ liệu 9 bit được lựa chọn (bit CHR9 trong thanh ghi điều khiển USART, UCR được đặt), bit TXB8 trong thanh ghi UCR được truyền vào bit 9 trong thanh ghi dịch bộ truyền. Theo nhịp của đồng hồ tốc độ baud sẽ diễn ra cuộc truyền đến thanh ghi dịch, bit start bị dịch chuyển ra chân TXD. Sau đó kế tiếp là dữ liệu, LSB trước tiên. Khi bit

stop đã được dịch chuyển ra, thanh ghi dich được nạp nếu bất kỳ dữ liệu nào đã được ghi vào thanh ghi UDR trong khoảng thời gian truyền. Trong thời gian nạp, bit UDRE được đặt thanh “1”. Nếu như không có dữ liệu mới trong thanh ghi UDR để truyền di khi bit stop được dịch chuyển ra, cờ UDRE sẽ giữ nguyên trạng thái được đặt cho đến khi thanh ghi UDR được ghi một lần nữa. Khi không có dữ liệu mới cần được ghi, và bit stop đã có mặt trên TxD đối với một chiều dài bit, cờ TX complete, TXC, trong thanh ghi USR được đặt thành “1”. Khi bit này được xóa thành “0”, thì chân PDI có thể được sử dụng cho thao tác I/O chung. Khi đặt thành “1”, bộ truyền trong USART sẽ được nối với PDI, chân này bị bắt buộc trở thành một chân nối ra không đếm xỉa gì đến việc đặt của bit 1 trong DDRD. Một ký tự mới đã được ghi vào UDR trước khi bit stop từ ký tự trước đã được dịch đi. Thanh ghi dịch được nạp khi bit stop của ký tự đang được truyền đã được dich chuyển ra. Nếu bộ truyền 10 (11) bit đang trống thì thì dữ liệu được truyền UDR đến thanh ghi dịch.

Một phần của tài liệu Mô phỏng và điều khiển thực tế động cơ 1 chiều có công suất nhỏ và với các yêu cầu điều khiển không cao (Trang 32 - 34)