2 .GIỚI THIỆU TỔNG QUÁT VỀ PIC16F877A
2.6 TRUYỀN THÔNG NỐI TIẾP EUART
2.6.1.3 chính xác của xung clock với hoạt động không đồng bộ
Hình 2.16 Cấu tạo thanh ghi TXSTA
Bit 7 CSRC : bit chọn nguồn xung. Chế độ bất đồng bộ : không cần thiết Chế độ đồng bộ :
+ 1 = chế độ chủ (phát xung dao động nội từ BRG). + 0 = chế độ tớ ( xung dao dộng ngoại ).
Bit 6 TX9 : bit cho phép truyền 9 bit. + 1 = chọn chế độ truyền 9 bit. + 1 = chọn chế độ truyền 8 bit. Bit 5 TXEN : bit cho phép truyền.
+ 1 = cho phép truyền.
+ 0 = không cho phép truyền. Bit 4 SYNC : bit chọn chế độ USART.
+ 1 = chế độ đồng bộ. + 0 = chế độ bất đồng bộ. Bit 3 SEND8 : gửi bit ký tự bị mất. Chế độ bất đồng bộ :
+ 1 = truyền ký tự bị mất
+ 0 = quá trình truyền ký tự bị mất kết thúc Chế độ đồng bộ : không cần thiết
+ 1 = tốc độ nhanh. + 0 = tốc độ chậm.
Bit 1 TRMT : bit trạng thái dịch truyền thanh ghi. + 1 = TSR rỗng.
+ 0 = TSR đầy.
Bit 0 TX9D : bit thứ 9 của truyền dữ liệu, có thể là bit Parity.
Hình 2.17 Cấu tạo thanh ghi RCSTA
Bit 7 SPEN : bit cho phép Serial Port.
+ 1 = cho phép Serial Port (tức là cấu hình cho RC7/RX/DT và RC6/TX/CK như chân Serial Port).
+ 0 = không cho phép.
Bit 6 RX9 : bit cho phép nhận 9 bit. + 1 = cho phép nhận 9 bit. + 0 = cho phếp nhận 8 bit.
Bit 5 SREN : bit cho phep nhận đơn độc. Chế độ bất đồng bộ không dùng.
Chế độ đồng bộ - Master:
+ 1 = cho phép nhận đơn độc. + 0 = không cho phép.
Chế độ đồng bộ - Slave : không cần. Bit 4 CREN : bit cho phép nhận tiếp tục. Chế độ bất đồng bộ :
+ 1 = cho phép nhận tiếp tục. Chế độ bất đồng bộ :
+ 1 = cho phép nhận tiếp tục.
+ 0 = không cho phép nhận tiếp tuc. Chế độ đồng bộ :
Bit 3 ADDEN : bit cho phép phat hiện địa chỉ. Chế độ bất đồng bộ 9 bit (RX9 = 1):
+ 1 = cho phép phat hiện địa chỉ, cho phép nhắt và tải bộ đệm nhận khi RSR<8> được SET.
+ 0 = không cho phép phát hiện địa chỉ, tất cả các Bytes được nhận và bit thứ 9 có thể được sử dụng như là bit Parity.
Bit 2 FERR : bit báo lỗi khung truyền
+ 1 = lỗi khung truyền (có thể được chấp nhận bằng cách đọc thanh ghi RCREG và nhận Byte tiếp theo).
+ 0 = khơng xuất hiện lỗi trong q trình truyền nhận dữ liệu. Bit 1 OERR : bit báo lỗi tràn bộ nhớ.
+ 1 = lỗi tràn ( có thể xóa bằng cách xóa bit CREN). + 0 = không báo lỗi tràn.
Bit 0 RX9D : bit thứ 9 của dữ liệu nhận ( có thể là bit parity nhưng phải được tính tốn bởi người dùng).