Giao tiếp ngoại vi tiếp nối hoặc SPI (Serial Peripheral Interface) là một chuẩn chỉnh đồng điệu thông liền nhằm truyền dữ liệu làm việc chính sách tuy vậy công toàn phần (full – duplex) tức vào thuộc một thời điểm có thể xẩy ra đôi khi quy trình truyền với dấn.Bạn vẫn xem: Spi là gì

Giao tiếp nước ngoài vi nối tiếp (SPI) là 1 trong nhiều loại giao thức giao diện Master – Slave sầu hỗ trợ một giao diện ngân sách đơn giản dễ dàng với chi phí thấp giữa vi điều khiển và tinh chỉnh với những lắp thêm nước ngoài vi của nó.quý khách vẫn xem: Giao tiếp spi là gì


*

Bus tiếp xúc SPI thường xuyên được áp dụng nhằm giao tiếp vi cách xử lý hoặc vi điều khiển cùng với bộ lưu trữ nlỗi EEPROM, RTC (Đồng hồ thời gian thực), ADC (Analog to Digital Converter – Sở biến hóa tương tự lịch sự số), DAC (Digital-to-Analog Converter – Sở chuyển đổi số sang trọng tương tự), thiết bị hiển thị như màn hình hiển thị LCD, IC âm thanh hao, những loại cảm biến như nhiệt độ với áp suất, thẻ ghi nhớ nlỗi MMC hoặc thẻ SD hoặc thậm chí là các bộ vi tinh chỉnh và điều khiển khác.

Bạn đang xem: Giao tiếp spi là gì

Chúng ta vẫn thấy về UART vào bài xích trước. Trong UART (hoặc ngẫu nhiên cổng thông liền thông dụng nào) tiếp xúc xảy ra trên đường RX với TX, không tồn tại biểu đạt đồng hồ đeo tay Tức là nó là 1 trong tiếp xúc ko đồng hóa. Trong các loại giao tiếp này, không có kiểm soát điều hành dữ liệu được gửi hoặc liệu bộ phạt với cỗ thu có cùng tốc độ tài liệu hay là không.

Để hạn chế vấn đề đó, UART áp dụng các bit đồng hóa hóa tức là bit bắt đầu với bit kết thúc cũng như tốc độ truyền dữ liệu được thỏa thuận hợp tác trước (hay là 9600 bps). Nếu tốc độ truyền của cục phân phát với cỗ thu không phù hợp, tài liệu được gửi trường đoản cú bộ vạc sẽ không còn đến được bộ thu đúng chuẩn cùng tài liệu nhận ra là không đúng đắn.


*

Đối với giao tiếp khoảng cách nđính, giao tiếp thông liền nhất quán vẫn là tuyển lựa tốt rộng cùng trong số ấy giao tiếp ngoại vi thông suốt hoặc SPI dành riêng là gạn lọc cực tốt. khi họ nói media khoảng cách ngắn thêm, nó hay Có nghĩa là tiếp xúc với cùng 1 đồ vật hoặc giữa các trang bị trên cùng một board mạch in (PCB).

Loại giao thức truyền thông media đồng bộ thông liền khác là I2C (Inter-Integrated Communication. Đối với nội dung bài viết này, họ sẽ triệu tập vào SPI. Bạn có thể xem bài viết về giao thức I2C.

SPI là 1 trong kiểu media tiếp nối hình dạng đồng nhất Tức là nó áp dụng biểu lộ đồng hồ chuyên sử dụng để đồng nhất hóa bộ phân phát và bộ thu hoặc Master và Slave sầu. Sở phạt với bộ chiếm được kết nối với dữ liệu đơn nhất với biểu hiện đồng hồ sẽ giúp đỡ bộ thu lúc tra cứu kiếm dữ liệu bên trên bus.


*

Tín hiệu đồng hồ thời trang bắt buộc được cung ứng vì Master cho tới Slave (hoặc toàn bộ những Slave sầu vào ngôi trường hợp thiết lập các Slave). Có nhì một số loại nguyên tắc kích hoạt trên bộc lộ đồng hồ đeo tay được áp dụng để báo cho bên phân biệt về dữ liệu: Kích hoạt cạnh cùng kích hoạt mức.

Kích hoạt thường xuyên được áp dụng độc nhất vô nhị là kích hoạt cạnh cùng tất cả nhì loại: cạnh lên (chuyển đổi trường đoản cú phải chăng lên cao trên đồng hồ) và cạnh xuống (biến hóa trường đoản cú cao xuống thấp). Tùy ở trong vào cách bộ nhận được cấu hình, lên trên vạc hiện các cạnh, cỗ thu đã search kiếm tài liệu trên bus dữ liệu từ bit tiếp sau.

Bởi vày cả biểu lộ đồng hồ cùng tài liệu được gửi bởi vì Master (hoặc bộ phát), chúng ta không cần phải lo lắng về vận tốc truyền dữ liệu.

Điều làm cho SPI trngơi nghỉ yêu cầu thịnh hành trong các giao thức media nhất quán tiếp liền không giống (hoặc bất kỳ tiếp xúc thông liền nào) là nó hỗ trợ vận tốc truyền tài liệu bảo mật thông tin cao cùng với Hartware hơi dễ dàng hệt như tkhô nóng ghi dịch với chi phí kha khá phải chăng.

SPI hoạt động như thế nào?

SPI hoặc giao tiếp nước ngoài vi nối tiếp được Motorola phát triển vào những năm 1980 nlỗi một bối cảnh tiêu chuẩn chỉnh, ngân sách phải chăng và an toàn thân vi điều khiển (Vi tinh chỉnh và điều khiển của Motorola thời điểm đầu) với những IC nước ngoài vi của chính nó.

Nhờ đồ họa dễ dàng và đơn giản, linc hoạt và dễ dàng thực hiện, SPI đang trở thành một tiêu chuẩn cùng các nhà cấp dưỡng cung cấp dẫn khác bước đầu áp dụng giao thức này trong số chip của mình.

Trong giao thức SPI, các đồ vật được liên kết trong một mối quan hệ Master – Slave vào một đồ họa nhiều điểm. Trong nhiều loại giao diện này, một máy được xem là Master của bus (hay là một vi điều khiển) và tất cả các thứ không giống (IC ngoại vi hoặc thậm chí còn các vi điều khiển khác) rất nhiều được xem như là Slave.

Trong giao thức SPI, rất có thể chỉ tất cả một trang bị Master nhưng mà những thứ Slave sầu.

Bus SPI bao hàm 4 biểu lộ hoặc chân. Chúng là

Master – Out / Slave – In (MOSI tuyệt SI): cổng ra của bên Master, cổng vào của mặt Slave sầu, giành cho câu hỏi truyền dữ liệu trường đoản cú máy Master mang đến lắp thêm Slave .Master – In / Slave – Out (MISO tuyệt SO): cổng vào của bên Master, cổng ra của bên Slave, dành cho câu hỏi truyền tài liệu từ thiết Slave sầu cho thứ Master.Serial Clock (SCK hay SCLK): xung giữ nhịp đến giao tiếp SPICPU Select (CS) hay Slave Select (SS): chọn chip

Lưu ý: Các đơn vị thêm vào không giống nhau sử dụng thuật ngữ khác biệt mang lại bus SPI. Tđê mê khảo datasheet để hiểu thông tin đúng mực.

Bởi do bus SPI được tiến hành bằng cách thực hiện 4 dấu hiệu tuyệt 4 dây nên nhiều khi nó được điện thoại tư vấn là chuẩn chỉnh tiếp xúc 4 dây (four-wire). Đầu tiên bọn họ hãy xem một bối cảnh đơn giản và dễ dàng thân một Master với một Slave được liên kết bằng giao thức SPI với kế tiếp họ vẫn mày mò về 4 dây này.

Hình ảnh sau diễn tả một thứ Master (Bộ xử lý) được kết nối cùng với sản phẩm Slave sầu (Ngoại vi) áp dụng bus SPI.


*

Master – Out / Slave – In hay MOSI, nhỏng thương hiệu cho thấy thêm, là tài liệu được tạo thành vày Master và nhận vì Slave sầu. Do kia, những chân MOSI trên cả Master và Slave sầu được kết nối với nhau.

Master – In / Slave – Out hay MISO là dữ liệu được tạo nên vì Slave và đề xuất được truyền cho tới Master.Các chân MISO bên trên cả Master với Slave sầu được liên kết cùng nhau. Mặc mặc dù biểu thị trong MISO được tạo ra bởi Slave sầu, đường bộc lộ này được tinh chỉnh do Master.

Master tạo nên biểu hiện đồng hồ SCLK với được hỗ trợ mang đến nguồn vào đồng hồ của Slave sầu. Xung này có tính năng giữ lại nhịp cho giao tiếp SPI, vị SPI là chuẩn truyền đồng bộ bắt buộc đề nghị 1 mặt đường giữ lại nhịp, mỗi nhịp trên chân SCK báo 1 bit dữ liệu cho hoặc đi. Sự mãi sau của xung SCK giúp quy trình tuyền không nhiều bị lỗi cùng vì thế vận tốc truyền của SPI rất có thể đạt rất lớn.

Chip Select (CS) hoặc Slave sầu Select (SS) được áp dụng nhằm chọn 1 Slave ví dụ vì Master. Nếu Master kéo con đường SS của một Slave sầu làm sao đó xuống đến mức phải chăng thì câu hỏi giao tiếp đang xảy ra thân Master và Slave đó.

Nếu tài liệu phải được truyền do chỉ một máy, thì thiết bị kia bắt buộc gửi một chiếc nào đấy (tài liệu giả) và nó dựa vào vào thứ cho dù dữ liệu được truyền là tài liệu thực tế hay là không.

Điều này Tức là đối với từng bit được truyền vày một vật dụng, thiết bị kia nên gửi tài liệu một bit, tức là Master truyền dữ liệu bên cạnh đó bên trên MOSI với nhận tài liệu tự Slave trên tuyến đường MISO.

Nếu Slave sầu mong truyền tài liệu, Master yêu cầu tạo thành biểu hiện đồng hồ đến cân xứng bằng phương pháp biết khi nào Slave sầu ước ao gửi tài liệu trước. Nếu một Master được liên kết với rất nhiều Slave sầu thì sơ đồ gia dụng kết nối như hình hình họa tiếp sau đây.


*

Mặc cho dù nhiều Slave được kết nối cùng với Master vào bus SPI, sống một thời điểm ngẫu nhiên thì chỉ tất cả một Slave chuyển động. Để chọn Slave, Master đang kéo đường SS (Slave sầu Select) hoặc CS (CPU Select) của Slave khớp ứng xuống mức phải chăng.

Do đó, yêu cầu bao gồm một chân CS riêng biệt bên trên Master khớp ứng với từng thứ Slave. Chúng ta rất cần được kéo ra ngoài đường SS hoặc CS xuống tốt nhằm chọn Slave bởi vì mặt đường này lành mạnh và tích cực nút phải chăng.

Phần cứng SPI

Yêu cầu Hartware để triển khai SPI vô cùng dễ dàng và đơn giản lúc đối chiếu với UART và I2C. Hãy cẩn thận một Master với một Slave solo được liên kết bởi bus SPI. Hình ảnh sau đây cho biết các yêu cầu khối hệ thống buổi tối tgọi cho tất cả hai đồ vật.

Từ hình hình họa trên cho thấy thêm lắp thêm Master gồm một thanh ghi dịch (Shift Register), một mạch chốt tài liệu (Latch) và một bộ chế tạo xung nhịp (Clock Generator). Thiết bị Slave bao gồm phần cứng tương tự: một thanh hao ghi dịch (Shift Register) và một mạch chốt tài liệu (Latch). Cả nhì tkhô hanh ghi dịch được liên kết nhằm tạo thành thành một vòng. Đôi khi, kích thước của tkhô hanh ghi là 8 – bit tuy thế thanh khô ghi size to hơn 16 bit cũng rất phổ biến.

Thiết bị Master bước đầu bài toán Bàn bạc tài liệu bằng cách tương truyền một Byte vào tkhô giòn ghi dịch của nó, tiếp đến Byte tài liệu sẽ được gửi quý phái Slave theo mặt đường biểu hiện MOSI, Slave sầu đang truyền tài liệu nằm trong tkhô nóng ghi dịch của chính nó ngược trsinh sống về Master trải qua con đường biểu thị MISO. Bằng phương pháp này, tài liệu của nhì tkhô cứng ghi sẽ tiến hành thương lượng với nhau. Việc phát âm với ghi tài liệu vào Slave ra mắt cùng một lúc yêu cầu tốc độ trao đổi dữ liệu diễn ra rất nhanh hao. Do kia, giao thức SPI là một giao thức rất gồm công dụng.

Bởi do cùng với từng chu kỳ đồng hồ đeo tay, một bit tài liệu được truyền theo từng phía Tức là từ bỏ Master mang lại Slave sầu và từ bỏ Slave sầu mang đến Master. Vì vậy, so với một byte dữ liệu được truyền tự từng lắp thêm, nó vẫn mất 8 chu kỳ luân hồi đồng hồ thời trang.

Chế độ hoạt động SPI

Chúng ta sẽ thấy rằng các bước của sản phẩm Master là tạo thành biểu đạt đồng hồ thời trang với phân păn năn nó tới Slave nhằm đồng bộ tài liệu thân Master cùng Slave sầu. Công câu hỏi của Master không chỉ là dừng lại làm việc bài toán chế tác dấu hiệu đồng hồ đeo tay sinh sống tần số cụ thể.

Trong thực tiễn, Master cùng Slave đề xuất đồng ý về những giao thức đồng điệu hóa nhất mực. Đối cùng với điều này, hai Điểm lưu ý của xung đồng hồ thời trang là cực tính đồng hồ thời trang (Clochồng Polarity – CPOL hoặc CKP) với trộn đồng hồ (Cloông chồng Phase – CPHA) được chuyển vào nhằm cẩn thận.

Cloông chồng Polarity (CPOL hoặc CKP) xác định tinh thần của đồng hồ. Khi CPOL tại mức tốt, xung đồng hồ đeo tay được sinh sản bởi Master có nghĩa là SCK đã ở mức tốt Khi thảnh thơi (idle) cùng đưa lịch sự mức cao trong tinh thần chuyển động (trong những khi truyền dữ liệu). Tương trường đoản cú, khi CPOL ở tầm mức cao, SCK ở mức cao khi nhàn hạ cùng gửi sang trọng nút thấp trong tinh thần hoạt động.

Phase Clock (CPHA) xác minh quá trình biến đổi tinh thần của xung đồng hồ thời trang Có nghĩa là lên (thấp lên cao) hoặc xuống (cao xuống thấp), tại đó dữ liệu được truyền đi. Lúc CPHA bằng 0, tài liệu được truyền sinh hoạt cạnh lên của xung đồng hồ đeo tay. Dữ liệu được truyền ở cạnh xuống lúc CPHA là 1 trong những.

Tùy trực thuộc vào những giá trị của Clochồng Polarity (CPOL) cùng Cloông xã Phase (CPHA), gồm 4 chế độ hoạt động của SPI

Mode 0:

Mode 0 xảy ra Khi Clochồng Polarity và Clochồng Phase là 0 (CPOL = 0 và CPHA = 0). Trong Mode 0, truyền tài liệu xẩy ra trong khi cạnh lên của xung đồng hồ đeo tay.

Mode 1:

Mode 1 xẩy ra Khi Cloông xã Polarity là 0 và Cloông chồng Phase là một (CPOL = 0 cùng CPHA = 1). Trong mode 1, vấn đề truyền tài liệu xảy ra trong lúc cạnh xuống của xung đồng hồ thời trang.

Mode 2:

Mode 2 xẩy ra khi Clochồng Polarity là 1 trong và Clock Phase là 0 (CPOL = 1 cùng CPHA = 0). Trong mode 2, truyền tài liệu xẩy ra trong lúc cạnh lên của xung đồng hồ thời trang.

Mode 3:

Mode 3 xảy ra khi Cloông chồng Polarity là một trong những với Clochồng Phase là 1 trong (CPOL = 1 với CPHA = 1). Trong mode 3, truyền tài liệu xảy ra trong khi cạnh lên của xung đồng hồ đeo tay.

Cấu hình SPI

Có nhì loại cấu hình trong số đó các lắp thêm SPI hoàn toàn có thể được liên kết vào một bus SPI. Đó là

Cấu hình Master và những Slave sầu độc ​​lập (Independent Slave Configuration) vàCấu hình Daisy Chain (Daisy Chain Configuration).

Trong thông số kỹ thuật Master cùng các Slave sầu độc ​​lập, Master đã chiếm hữu riêng các đường Slave Select mang lại tất cả những Slave cùng từng Slave sầu có thể được lựa chọn riêng lẻ. Tất cả biểu thị đồng hồ thời trang của các Slave được kết nối với thông thường cùng với SCK của Master.

Tương từ bỏ, tất cả các chân MOSI của tất cả các SLave sầu được kết nối cùng với chân MOSI của Master và tất cả các chân MISO của tất cả những Slave sầu được liên kết cùng với chân MISO của Master.

Trong cấu hình Daisy Chain, chỉ gồm một mặt đường Slave sầu Select được liên kết cùng với tất cả các Slave. MOSI của Master được kết nối cùng với MOSI của Slave sầu 1. MISO của Slave sầu 1 được kết nối cùng với MOSI của Slave sầu 2 cùng v.v.. MISO của Slave sau cuối được liên kết cùng với MISO của Master.

Giả sử Master truyền rằng 3 byte tài liệu lên bus SPI. Byte thứ nhất được dịch vào Slave sầu 1. lúc byte thiết bị hai truyền mang lại 1, byte đầu tiên sẽ ảnh hưởng xuất kho khỏi Slave 1 và truyền mang lại Slave sầu 2. Tương tự, Khi byte lắp thêm bố truyền vào Slave 1, byte sản phẩm hai sẽ ảnh hưởng dịch lịch sự Slave 2 cùng byte đầu tiên sẽ ảnh hưởng dịch Slave 3.

Xem thêm: Tố My Sinh Năm Bao Nhiêu - Tiểu Sử, Năm Sinh, Chiều Cao Tố My

Tuy nhiên, cầu hình Daisy Chain chưa hẳn dịp nào cũng áp dụng được cho toàn bộ những lắp thêm Slave. Do đó, ta rất cần phải xem thêm datasheet trước khi thực hiện kết nối.