Thanh ghi TWCR

Một phần của tài liệu Giáo trình vi điều khiển (Trang 113 - 114)

9.3 Cách thanh ghi liên quan

9.3.2 Thanh ghi TWCR

Bit 7 6 5 4 3 2 1 0

TWINT TWEA TWSTA TWSTO TWWC TWEN - TWIE

Read/ Write RW RW RW RW R RW R RW

Giá trị ban

đầu 0 0 0 0 0 0 0 0

Hình 9.8 Thanh ghi điều khiển TWCR

Bit7 – TWINT: (cờ ngắt TWI) bit này bằng 1 khi hoạt động TWI hoàn tất, nếu bit I trong thanh ghi (SREG) và bit TWIE trong thanh ghi (TWCR) được cài đặc là 1, vi điều khiển sẽ nhảy tới vector ngắt TWI. Chân SCL sẽ duy trì mức thấp khi cờ TWINT được bậc lên 1. Cờ TWINT sẽ được xóa khi viết mức logic 1 lên bit này, và tự động xóa khi sử dụng hoạt động ngắt.

Bit6 – TWEA: (TWI Enable Acknowledge bit, bit cho phép bắt tay) bit này điều khiển việc phát xung ACK. Nếu bit TWEA được viết lên 1, thì xung ACK sẽ được phát lên đường bus khi nó thỏa mãn các điều kiện sau:

 Cấu hình bên Slave đã xác định được địa chỉ

 Hoạt động nhiều Slave được nhận khi bit TWGCE trong thanh ghi TWAR được viết logic 1.

 1 byte dữ liệu đã được nhận trong ở Master hoặc Slave.

Khi bit này được viết mức logic 0, thì cấu hình tạm thời không kết nối với đường bus TWI, khi bit này bằng 1 thì nó sẽ kết nối với bus TWI.

Bit5 – TWSTA: (TWI Start Condition Bit, bit kiểm tra điều kiện Master) khi 1 vi điều khiển nào đó muốn trở thành Master thì nó sẽ viết mức logic 1 lên bit này (TWSTA), phần cứng sẽ kiểm tra xem đường truyền trên bus có rãnh hay không và sẽ phát sinh xung Start trên đường bus, tuy nhiên nếu đường bus bận thì TWI sẽ chờ bit Stop và sẽ

phát lại xung Start để giành quyền Master, bit TWSTA phải được xóa bởi phần mềm khi xung Start được truyền đi.

Bit4 – TWSTO: (TWI Stop Condition Bit, bit kết thúc vai tò Master) đối với Master bit này được viết logic 1 sẽ phát điều kiện Stop trên đường bus. Khi điều kiện Stop được thực hiện trên đường Bus xong thì bit TWSTO sẽ được xóa tự động. Còn đối với Slave, bit này = 1 dùng để khắc phục lỗi, và sẽ không phát sinh điều kiện Stop trên đường Bus. Bit3 – TWWC: (TWI Write Collision Flag, cờ báo lỗi khi viết dữ liệu) cờ này sẽ có logic 1 khi viết dữ liệu vào thanh ghi dữ liệu (TWDR) trong khi TWINT ở mức logic 0. Cờ này sẽ về 0 khi viết dữ liệu vào thanh ghi TWDR khi bit TWINT ở mức 1.

Bit2 – TWEN: (TWI Enable bit, bit cho phép TWI) bit này được viết logic 1 sẽ cho phép hoạt động TWI, khi bit này có mức logic 0 sẽ không cho phép hoạt động TWI.

Bit1 – Res: (Bit dự trữ)

Bit0 – TWIE: (TWI Interrupt Enable, cho phép ngắt TWI) khi bit này bằng 1 và bit I trong thanh ghi SREG bằng 1 thì sẽ cho phép hoạt động ngắt TWI.

Một phần của tài liệu Giáo trình vi điều khiển (Trang 113 - 114)

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

(126 trang)