Bir iPhone'un TRS jakından mikrodenetleyicideki bir SPI bağlantı noktasına doğrudan bağlanmayı içeren bir proje üzerinde çalışıyorum.
Yani iPhone usta ve mikro denetleyici de bağımlı
Öyleyse, iPhone'un sol hoparlör kanalının saat sinyallerini üretmekten sorumlu olduğunu varsayalım
Şimdi, örneğin ana bilgisayardan köleye tek bir ASCII baytı 'A' nasıl iletebilirim?
Saat kenarının her yükselişinde (diyelim ki sıfırı geçtiğinde), hem master hem de slave'in yeni bir bit okuduğunu görebiliyorum - ilgili MISO / MOSI'nin durumu ne olursa olsun
Ama nasıl bayt hizalaması yapılır?
'A' için ikili sayı 0100 0001'dir
Öncü 0'ı önceki sessizlikten nasıl ayırt edebiliriz?
Bu Bana öyle geliyor ki, mantıklı bir protokol, başlangıç Sentinel olarak 0xFF veya başka bir şey kullanmak ve bir sonraki bayta gelecek paketteki bayt sayısını (1 ile 256 arasında) dikte ettirmek.
Ve sonra bu baytlar birbiri ardına gönderilir, ardından bir eşlik baytı gelebilir .
Belki her baytın eşlik biti olabilir ...?
Bu 'paket' gelir gelmez, kod çözücü başka bir başlangıç Sentinel aramaya başlayabilir.
Demek SPI tasarlamaya böyle başlayacaktım. bu yüzden aslında nasıl yapıldığını anlatan bazı belgeler bulmaya çalışıyorum.
Ancak Google / Wikipedia / IRC'de gezinmek beni gerçekten hayal kırıklığına uğratıyor
Dışarıda biri var mı Bu protokolü anlayan ve bana gerçekten basit bir örnek kullanım vermeyi umursamayanlar - SPI aracılığıyla tek 'A' karakterini göndermek