BÀI TẬP ỨNG DỤNG CÁC HÀM VỀ TRUYỀN THÔNG NỐI TIẾP 1 Chuẩn giao tiếp I2C

Một phần của tài liệu Tài liệu Vi Xử Lý Pic pot (Trang 32 - 33)

1. Chuẩn giao tiếp I2C

a. Tổng quan về chuẩn I2C

I2C (Inter Intergrated Circuit) là chuẩn giao tiếp nối tiếp 2 dây dùng để giao tiếp giữa các IC hay thiết bị ngoại vi với nhau. Bus I2C dùng để giao tiếp ngoại vi cho rất nhiều loại IC khác nhau nhƣ các thiết bị ngoại vi với nhau. Bus I2C dùng để giao tiếp ngoại vi cho rất nhiều loại IC khác nhau nhƣ các loại vi điều khiển 8051, pic, AVR, ARM, chip nhớ nhƣ RAM tĩnh, EEPROM, bộ chuyển đổi tƣơng tự số (ADC), bộ chuyển đổi số tƣơng tự (DAC), IC điều khiển LCD, LED…

Chuẩn giao tiếp I2C sử dụng 2 dây: Serial Data (SDA) và Serial Clock (SCL) SDA là đƣờng dùng để truyền dữ liệu và truyền theo hai hƣớng SDA là đƣờng dùng để truyền dữ liệu và truyền theo hai hƣớng

SCL là đƣờng dùng để truyền xung Clock chỉ có thể truyền theo một hƣớng

Các đƣờng SDA và SCL đều đƣợc kết nối với nguồn thông qua điện trở kéo lên, các điện trở này có giá trị từ 1KΩ tới 4.7KΩ giá trị từ 1KΩ tới 4.7KΩ

Một thiết bị hay một IC kết nối với bus I2C, ngoài một địa chỉ duy nhất để phân biệt, nó còn đƣợc cấu hình là thiết bị Master hay Slave. Mỗi thiết bị sẽ đƣợc nhận ra bởi một địa chỉ duy nhất với một cấu hình là thiết bị Master hay Slave. Mỗi thiết bị sẽ đƣợc nhận ra bởi một địa chỉ duy nhất với một quan hệ Master/Slave tồn tại trong suất thời gian kết nối.

Trong một bus I2C thì quyền điều khiển thuộc về thiết bị Master. Thiết bị này nắm vai trò tạo xung Clock cho toàn bộ hệ thống, khi giữa hai thiết bị Master/Slave giao tiếp thì thiết bị chủ có xung Clock cho toàn bộ hệ thống, khi giữa hai thiết bị Master/Slave giao tiếp thì thiết bị chủ có nhiệm vụ tạo xung clock và quản lý địa chỉ của thiết bị tớ trong suốt quá trình giao tiếp.

 Tốc độ truyền trong bus I2C: I2C có ba chế độ truyền với các tốc độ khác nhau Chế độ chuẩn tốc độ truyền là 100Kbits/s Chế độ chuẩn tốc độ truyền là 100Kbits/s

Bộ Môn Tự Động – Trƣờng Cao Đẳng Kỹ Thuật Cao Thắng Trang 33 Chế độ nhanh tốc độ truyền là 400Kbits/s Chế độ nhanh tốc độ truyền là 400Kbits/s

Chế độ cao tốc tốc độ truyền là 3,4Mbits/s  Các chế độ hoạt động của I2C:  Các chế độ hoạt động của I2C:

Một Master một Slave Một Master nhiều Slave Một Master nhiều Slave Nhiều Master nhiều Slave

 Quá trình truyền dữ liệu sẽ đƣợc diễn ra nhƣ sau:

Bit cao MSB sẽ đƣợc truyền đầu tiên, các bit còn lại sẽ đƣợc truyền đi lần lƣợt Sau 8 xung clock đƣợc truyền đi trên đƣờng SCL thì 8 bit dữ liệu đã đucợ truyền đi Sau 8 xung clock đƣợc truyền đi trên đƣờng SCL thì 8 bit dữ liệu đã đucợ truyền đi

Thiết bị nhận sau khi nhận đủ 8 bit dữ liệu sẽ kéo SDA xuống mức thấp tạo một xung ACK ứng với xung thứ 9 trên dây SDA để báo hiệu đã nhận đủ 8 bit. ACK ứng với xung thứ 9 trên dây SDA để báo hiệu đã nhận đủ 8 bit.

Thiết bị truyền sau khi nhận đƣợc bit ACK sẽ tiếp tục thực hiện quá trình truyền hoặc kết thúc. thúc.

Khi không nhận đƣợc đúng địa chỉ hay khi muốn kết thúc quá trình giao tiếp, thiết bị nhận sẽ gởi một xung not ACK (SDA ở múc cao) để báo cho thiết bị chủ biết, thiết bị chủ sẽ tạo sẽ gởi một xung not ACK (SDA ở múc cao) để báo cho thiết bị chủ biết, thiết bị chủ sẽ tạo xung STOP để kết thúc hay lặp lại một xung START để bắt đầu quá trình mới.

 dsdssd

b. Giới thiệu về I2C trong Pic 16f877a  Giới thiệu về chuẩn giao tiếp I2C  Giới thiệu về chuẩn giao tiếp I2C  I2C trong pic 16f877a

c. Các hàm liên quan

CÁC HÀM QUẢN LÝ TRUYỀN THÔNG I2C

Tên hàm Cúa pháp Chức năng

d. dsddsdd

2. Chuẩn giao tiếp RS 232

Một phần của tài liệu Tài liệu Vi Xử Lý Pic pot (Trang 32 - 33)