L ỜI CẢM ƠN
2.7. Giao diện nối tiếp
Các Thanh ghi bên trong và bộ nhớ của MPU-6000/MPU-6050 có thể đƣợc truy cập bằng cách sử dụng I2C tại 400 kHz hoặc SPI tại 1MHz (chỉ MPU-6000). SPI hoạt động trong chế độ bốn dây
Pin Number MPU- 6000 MPU- 6050
Pin Name Pin Description
8 Y SPI chip select (0=SPI enable)
8 Y /CS Digital I/O supply voltage. VLOGIC must be ≤ VDD at all times.
9 Y VLGOGIC I2C Slave Address LSB (AD0); SPI serial data output (SDO) 9 Y ADD/SDD I2C Slave Address LSB
23 Y SCL/SCLK I2C serial clock (SCL); SPI serial clock (SCLK)
23 Y SCL I2C serial clock
24 Y SDA/SDI I2C serial data (SDA); SPI serial data input (SDI)
24 Y SDA I2C serial data
Bảng 2.3: Giao diện các thanh nghi Để ngăn chặn chuyển đổi giữa chế độ I2
C khi sử dụng SPI (MPU-6000), Giao diện I2C nên đƣợc vô hiệu hóa bằng cách thiết lập các bit cấu hình I2C _IF_DIS. Thiết lập bit này cần đƣợc thực hiện ngay lập tức sau khi chờ đợi thời gian theo quy định của " Thời gian Khởi động cho Thanh ghi Đọc / Ghi" trong.
I2C là một giao diện hai dây bao gồm các dữ liệu nối tiếp tín hiệu (SDA) và đồng hồ/nhịp nối tiếp (SCL). Nhìn chung, các đƣờng dây là vòng mở và hai chiều. Khái quát hóa lại, việc thực hiện giao diện I2
C, thiết bị kèm theo có thể là một hệ chủ hay là một hệ lệ thuộc. Các thiết bị chủ đặt địa chỉ lệ thuộc trên bus, và các thiết bị lệ thuộc với địa chỉ phù hợp công nhận hệ chủ. MPU-60X0 luôn luôn hoạt động nhƣ một thiết bị lệ thuộc khi tiếp xúc với các bộ xử lý hệ thống, do đó hoạt động nhƣ là hệ chủ. Các đƣờng dây SDA và SCL thƣờng cần điện trở kéo lên đến VDD. Tốc độ bus tối đa là 400 kHz.
Địa chỉ phụ thuộc của MPU-60X0 là b110100X dài 7 bit. Các bit LSB của địa chỉ 7 bit xác định bởi mức logic trên pin AD0. Điều này cho phép hai MPU- 60X0s đƣợc kết nối tới cùng bus I2
C Khi đƣợc sử dụng trong cấu hình này, địa chỉ của một trong những thiết bị nên là b1101000 (pin AD0 là logic thấp) và địa chỉ của thiết bị khác nên là b1101001 (pin AD0 là logic cao).
I2C Các điều kiện Giao thức Truyền thông START(S)và STOP (P) Truyền thông trên bus I2C bắt đầu khi hệ chủ đặt điều kiện START (S) trên bus, mà đƣợc xác định là một quá trình chuyển đổi từ cao đến thấp nhất của đƣờng dây SDA trong khi đƣờng dây SCL là cao (xem hình bên dƣới). Bus đƣợc xem là kết nối cho đến khi hệ chủ đặt một điều kiện STOP (P) trên bus, mà đƣợc xác định nhƣ là một chuyển đổi từ thấp đến cao trên đƣờng dây SDA trong khi SCL là cao (xem hình bên dƣới)
Ngoài ra, truyền thông START lặp đi lặp lại (Sr) đƣợc tạo ra thay vì một điều kiện STOP.
Định dạng / Báo nhận dữ liệu I2
C byte đƣợc xác định là dài 8-bit. Không có giới hạn về số lƣợng các byte truyền trong một truyền dữ liệu. Mỗi byte chuyển giao phải đƣợc theo sau bởi một tín hiệu xác nhận (ACK). Đồng hồ/Nhịp báo nhận tín hiệu đƣợc tạo ra bởi hệ chủ, trong khi thiết bị thu tạo ra các tín hiệu nhận thực tế bằng cách kéo SDA xuống và giữ nó thấp trong phần cao của nhịp xung đồng hồ. Nếu một hệ lệ thuộc đƣợc kết nối và không thể truyền tải hoặc nhận đƣợc một byte dữ liệu cho đến khi một số nhiệm vụ khác đã đƣợc thực hiện, nó có thể giữ SCL thấp, do đó buộc hệ chủ ở trạng thái chờ đợi. Truyền dữ liệu bình thƣờng lại tiếp tục khi các hệ phụ thuộc đã sẵn sàng, và phát hành các dòng đồng bộ.