Share via


Gerçek zamanlı özellikli uygulamalarda I2C kullanma

Azure Sphere, ana modda Inter-Integrated Bağlantı Hattı'nın (I2C) desteklemektedir. I2C, düşük hızlı çevre birimlerini mikrodenetleyicilere bağlayan bir seri veri yoludur. I2C, bir ana cihazın bir dizi alt cihazı denetlediği çok ana/çok alt model kullanır. I2C genellikle ayar denetimleri, güç anahtarları ve algılayıcılar gibi bir mikrodenetleyici ile basit basit iletişim gerektiren çevre birimleriyle kullanılır.

Bu konuda, gerçek zamanlı özellikli uygulamalarda (RTApps) I2C'nin nasıl kullanılacağı açıklanmaktadır. Üst düzey uygulamalarda I2C kullanma hakkında bilgi için bkz. Üst düzey uygulamalarda I2C kullanma.

Not

Azure Sphere işletim sistemi, başlatmada çevre birimlerini sıfırlamaz. Uygulamalarınız, başlatma veya yeniden başlatma sonrasında çevre birimlerinin bilinen iyi durumda olduğundan emin olmalıdır.

Gerçek zamanlı çekirdeklerde I2C için MT3620 desteği

MT3620 yongası için I2C belirtimleri MT3620 Destek Durumu'nda listelenmiştir. MT3620 geliştirme panosu kullanım kılavuzu, pin düzenini ve kablolama işlevlerini açıklar.

MT3620 geliştirme panosunu yapılandırdığınızda, herhangi bir ISU bloğunu I2C ana arabirimi olarak kullanabilirsiniz. I2C ana arabirimi olarak BIR ISU bloğu kullandığınızda, SPI veya UART arabirimiyle aynı bloğu kullanamazsınız.

MT3620'de on bit alt cihaz adresleri desteklenmez; yalnızca 7 bit adresler desteklenir. MT3620 100 KHz, 400 KHz ve 1 MHz veri yolu hızlarını destekler, ancak 3,4 Mhz'yi desteklemez. Sıfır bayt I2C okumaları MT3620'de desteklenmez.

Temel adresleri kaydetme, kesme numaraları, saat hızı, örnekleme sıklığı ve MT3620 hakkındaki diğer ayrıntılar için bkz. MT3620 Veri Sayfası ve MT3620 M4 Kullanım Kılavuzu; sorularınız kalırsa, e-posta ile Azure.Sphere@avnet.comAvnet'ten ayrıntıları isteyebilirsiniz.

Uygulama bildirimi ayarları

I2C'yi kullanmak için RTApp'in bunu uygulama bildiriminin Özellikler bölümünde listelemesi gerekir. Örneğin, aşağıdaki satır BIR MT3620 yongasında ISU0 üzerinde bir I2C ana arabirimi ayırır:

"Capabilities": {
   "I2cMaster": [ "ISU0" ] }

Azure Sphere uygulama bildirimi, uygulama bildirimi hakkında daha fazla ayrıntıya sahiptir.

I2C örnek uygulamaları

GitHub'daki CodethinkLabs deposu, Azure Sphere RTApps'te MT3620 tarafından desteklenen çevre birimlerinin nasıl kullanılacağını gösteren bir dizi örnek uygulama içerir. Özellikle I2C_RTApp_MT3620_BareMetal örneği, gerçek zamanlı özellikli bir uygulamada I2C çevre biriminin nasıl kullanılacağını gösterir.