Sebagian besar perangkat SPI akan sangat bahagia dengan kecepatan data apa pun di bawah maksimum yang ditentukan. Seseorang dapat melakukan bagian dari suatu transaksi, istirahat kapan saja, kembali beberapa tahun kemudian, dan menyelesaikannya. Asalkan tidak ada gangguan pada jam, pilih, atau saluran listrik, transaksi akan diselesaikan secara normal.
Ada tiga peringatan utama yang harus diperhatikan:
- Secara umum, sekali transaksi telah dimulai pada bus SPI, tidak ada kabel di bus yang dapat digunakan untuk tujuan lain sampai transaksi selesai. Secara umum, ini berarti bahwa interupsi mungkin tidak menggunakan bus SPI kecuali ketika itu adalah satu-satunya hal yang akan menggunakan bus (mungkin saja interupsi memiliki penggunaan eksklusif bus pada beberapa waktu, dan untuk utama program untuk penggunaan eksklusif di lain waktu). Beberapa perangkat menyertakan pin khusus untuk membiarkan mereka "mengabaikan" bus di tengah transaksi, tetapi bahkan dengan fitur seperti itu saya tidak akan merekomendasikan mencoba untuk memiliki interupsi menangguhkan transaksi SPI dengan satu perangkat, melakukan transaksi dengan perangkat lain, dan kemudian biarkan kode yang mendasarinya melanjutkan transaksinya dengan yang pertama. Lebih baik interupsi menggunakan bus SPI terpisah.
- Beberapa perangkat mungkin berperilaku aneh jika transaksi berlangsung terlalu lama. Beberapa chip jam waktu-nyata, misalnya, tidak menggandakan buffer waktu / tanggal tetapi malah mengaitkan semua peristiwa "waktu-maju" yang akan terjadi selama transaksi dan menerapkannya setelah transaksi selesai. Jika suatu transaksi membutuhkan waktu yang sangat lama sehingga peristiwa pemunculan-waktu kedua tiba, peristiwa yang terakhir akan diabaikan, menyebabkan jam berlalu dengan jumlah waktu tersebut. Saya benar-benar tidak melihat alasan untuk merancang chip dengan cara seperti itu (bahkan jika seseorang tidak ingin biaya buffering ganda data, menetapkan bahwa perangkat lunak bertanggung jawab untuk memastikan koherensinya akan lebih murah daripada menambahkan logika "pembaruan penangguhan", dan akan meminimalkan kemungkinan gangguan clock), tetapi chip tersebut ada.
- Ada beberapa perangkat yang menggunakan jam dan sinyal data, tetapi yang menggunakan "jeda" untuk menandakan framing. Contoh terbaru dari ini saya temui adalah string lampu LED controller-per-bulb. Saya tidak terlalu suka desain seperti itu (orang bisa saja menunjukkan framing menggunakan tiga tepi naik berturut-turut pada kabel data tanpa ada jam intervening) tetapi sekali lagi, perangkat seperti itu memang ada.
Sementara jenis komunikasi tertentu membutuhkan penggunaan waktu tertentu, jarang ada alasan bagi perangkat SPI untuk meminta mereka. Meskipun demikian, seseorang harus memperhatikan keberadaan perangkat tersebut.