Nguyờn lý truyền tin nối tiếp của On-chip 80C51.

Một phần của tài liệu Đề cương bài giảng vi xử lý (Trang 35)

Hệ VXL on-chip này truyền tin nối tiếp bằng cổng RxD và TxD, dữ liệu xuất nhập truyền qua cổng nối tiếp bằng tốc độ Baud và đều qua vựng đệm nối tiếp SBUF. Cổng truyền nối tiếp là cổng truyền tin 2 chiều, nghĩa là nú cú thể đồng thời truyền và nhận thụng tin cựng 1 lỳc. Nú cũng cú khả năng vừa thực hiện chức năng nhận vừa thực hiện chức năng đệm, tức là nú cú thể nhận byte kế tiếp trước khi byte được nhận trước đú được đọc từ thanh ghi đệm. (Tuy nhiờn, nếu byte đầu tiờn vẫn chưa được đọc tại thời điểm nhận của byte thứ 2, thỡ một trong 2 byte này sẽ bị mất). Điều khiển cổng nối tiếp bằng thanh ghi SCON, trạng thỏi của 2 bit SM0 và SM1 trong thanh ghi này thiết lập nờn 4 chế độ hoạt động giao tiếp nối tiếp chuẩn như sau:

Chế độ 0: Dữ liệu nối tiếp vào và ra sẽ thụng qua chõn RxD. Chõn TxD đưa ra xung nhịp đồng hồ. 8 bit dữ liệu được truyền/nhận nối tiếp, với bit LSB được thực hiện đầu tiờn. Tốc độ Baud được cố định bằng 1/12 tần số của bộ dao động.

Chế độ 1: 10 bit được truyền (thụng qua TxD) hoặc nhận (thụng qua RxD), trong đú gồm cú: 1 bit khởi động (cú giỏ trị 0), 8 bit dữ liệu (đầu tiờn là LSB), và 1 bit dừng (cú giỏ trị là 1). Khi nhận, bit dừng được chuyển vào RB8 của thanh ghi SCON. Tốc độ Baud cú thể thay đổi được.

Chế độ 2: 11 bit được truyền (thụng qua TxD) hoặc nhận (thụng qua RxD) bao gồm: bit khởi động (cú giỏ trị 0), 8 bit dữ liệu (đầu tiờn là LSB), một bit dữ liệu thứ 9 cú thể lập trỡnh được, và một bit dừng (cú giỏ trị 1). Khi truyền, bit dữ liệu thứ 9 (TB8 ở trong SCON) cú thể được gỏn giỏ trị 0 hoặc 1. Chẳng hạn như bit chẵn lẻ (P ở trong PSW) cú thể được chuyển vào TB8. Khi nhận, bit dữ liệu thứ 9 được chuyển vào RB8 ở thanh ghi SCON, trong khi bit dừng được lọc bỏ. Tốc độ Baud cú thể lập trỡnh được bằng 1/32 hoặc 1/64 tần số bộ dao động.

Chế độ 3: 11 bit được truyền (thụng qua TxD) hoặc được nhận (thụng qua RxD) bao gồm: 1 bit khởi động (cú giỏ trị 0), 8 bit dữ liệu (đầu tiờn là LSB), 1 bit dữ liệu thứ 9 cú thể lập trỡnh được, và 1 bit dừng (cú giỏ trị 1). Trờn thực tế, chế độ 3 giống chế độ 2 ở mọi gúc độ trừ tốc độ Baud. Tốc độ Baud ở chế độ 3 là khả biến và được xỏc định theo bộ Timer 1.

Trong cả 4 chế độ trờn, việc truyền được bắt đầu bởi bất kỳ một lệnh nào mà sử dụng thanh ghi SBUF như là một thanh ghi đớch. Việc nhận được bắt đầu ở chế độ 0 khi RI=0 và REN=1. Đối với cỏc chế độ khỏc, việc nhận được bắt đầu khi bit REN=1.

Một phần của tài liệu Đề cương bài giảng vi xử lý (Trang 35)