Üst düzey uygulama oluşturma
Yeni bir üst düzey uygulama oluşturmanın en kolay yolu, Visual Studio Code Azure Sphere uzantısından Boş şablonla başlamak ve aşağıdaki adımları izleyerek yapılandırmayı projenize ayarlamaktır:
Visual Studio Code başlayın. Komut paletiGörüntüle'yi> seçin ve ardından Azure Sphere: Yeni Proje Oluştur yazın.
Şablonlar menüsünden HL Boş'u seçin.
Visual Studio Code sonra bir Dosya Gezgini penceresi görüntüler. Boş uygulamayı yerleştirmek istediğiniz klasöre gidin ve projeniz için bir ad (örneğin, NewHLApp) belirtin. Visual Studio Code, seçtiğiniz konumda NewHLApp klasörünü oluşturur ve boş uygulama için derleme dosyalarını oluşturur. CMake'den gelen iletileri görmeniz gerekir.
CMakeLists.txt dosyasını açın ve kullandığınız donanımın tanımlarını içeren klasörü belirtin. Varsayılan olarak, HL Boş uygulaması donanım tanımı içermez. Örnek donanım tanımlarını Azure Sphere Örnekleri deposunda bulabilir veya Donanım tanımları bölümünde açıklandığı gibi bir tane oluşturabilirsiniz.
Aşağıda, Seeed Azure Sphere MT3620 Geliştirme Seti için örnek donanım tanımlarının nasıl ekleneceği gösterilmektedir:
azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "sample_appliance.json")
Bu satır, son komut başlamadan
azsphere_target_add_image_package
önce eklenmelidir.
Ayrıca, üst düzey Azure Sphere örneklerinden herhangi birinden yeni bir üst düzey uygulama oluşturabilirsiniz:
Henüz yapmadıysanız örnek depoyu kopyalayın. Üst düzey uygulama klasörlerinden birini kopyalayın ve projeniz için yeniden adlandırın.
CMakeLists.txt dosyasında proje adını yeni klasörünüzün adıyla değiştirin. Örneğin:
PROJECT(NewHLApp C)
Yeni bir üst düzey uygulama oluşturmanın en kolay yolu, Visual Studio Azure Sphere uzantısından Boş şablonla başlamak ve aşağıdaki adımları izleyerek yapılandırmayı projenize ayarlamaktır:
Visual Studio'yu başlatın ve Yeni proje oluştur'u seçin.
Şablon ara etiketli arama kutusuna yazın
Azure Sphere
. Döndürülen listeden Azure Sphere HLCore Blank'ı ve ardından İleri'yi seçin.Bir proje adı (örneğin, NewHLApp), proje dosyası konumu ve çözüm adı (proje adıyla aynı olabilir) belirtin ve oluştur'u seçin. Visual Studio, seçtiğiniz konumda NewHLpp klasörünü oluşturur ve boş uygulama için derleme dosyalarını oluşturur. CMake'den gelen iletileri görmeniz gerekir.
CMakeLists.txt dosyasını açın ve kullandığınız donanımın tanımlarını içeren klasörü belirtin. Varsayılan olarak, HL Boş uygulaması donanım tanımı içermez. Örnek donanım tanımlarını Azure Sphere Örnekleri deposunda bulabilir veya Donanım tanımları bölümünde açıklandığı gibi bir tane oluşturabilirsiniz.
Aşağıda, Seeed Azure Sphere MT3620 Geliştirme Seti için örnek donanım tanımlarının nasıl ekleneceği gösterilmektedir:
azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "sample_appliance.json")
Bu satır, son komut başlamadan
azsphere_target_add_image_package
önce eklenmelidir.
Ayrıca, üst düzey Azure Sphere örneklerinden herhangi birinden yeni bir üst düzey uygulama oluşturabilirsiniz:
Henüz yapmadıysanız örnek depoyu kopyalayın. Üst düzey uygulama klasörlerinden birini kopyalayın ve projeniz için yeniden adlandırın.
CMakeLists.txt dosyasında proje adını yeni klasörünüzün adıyla değiştirin. Örneğin:
PROJECT(NewHLApp C)
Yeni bir üst düzey uygulama oluşturmanın en kolay yolu, üst düzey Azure Sphere örneklerinden herhangi biriyle başlamaktır:
Henüz yapmadıysanız örnek depoyu kopyalayın. Üst düzey uygulama klasörlerinden birini kopyalayın ve projeniz için yeniden adlandırın.
CMakeLists.txt dosyasında proje adını yeni klasörünüzün adıyla değiştirin. Örneğin:
PROJECT(NewHLApp C)
Üst düzey bir uygulamanın temel dosya yapısı
Uygulamanızı nasıl oluşturursanız oluşturun, tüm Azure Sphere uygulamaları aşağıdaki temel dosyaları paylaşır:
- Bir veya daha fazla dosyadaki uygulama kaynak kodu. Şu anda yalnızca C dili kaynak kodu desteklenmektedir.
- CMake derleme dosyaları. CMakeLists.txt gereklidir. CMake, ninja basit derleme yardımcı programıyla birlikte Azure Sphere uygulama derleme işlemini denetlemek için kullanılır.
- Uygulamanın kullanabileceği özellikleri açıklayan bir uygulama bildirim dosyası.
Üst düzey uygulamalar genellikle en az üç dosyaya daha sahip olur:
- Çeşitli Azure Sphere API'lerinin sürüm düzeylerini belirten bir applibs-versions.h dosyası
- Kodunuzdaki donanım bileşenlerine başvurmak için kullanışlı bir yol sağlayan iki donanım tanımı dosyası (JSON biçiminde düzenlenebilir bir sürüm ve ondan oluşturulan bir C dili dahil dosyası). Tutarlı bir donanım tanım dosyası kümesiyle, donanımdan bağımsız kaynak kodu yazabilir ve ardından CMakeLists.txt dosyanızda uygun donanım tanımı dosyasını yeniden hedefleyerek belirli donanımlar için uygulama görüntüleri oluşturabilirsiniz.
Kodunuzu yazma
- Azure Sphere üst düzey uygulama örneklerini kılavuz olarak kullanarak uygulama kodunuzu yazın. Aşağıdaki konular belirli uygulama senaryolarını açıklar:
- Üst düzey bir uygulamada çevre birimleri kullanma
- Web hizmetlerine bağlanma
- TLS bağlantıları için wolfSSL kullanma
- Sertifikaları yönetme
- Bellek kullanımını anlama
- Cihaz güncelleştirmelerini erteleme
- Zamanı yönetme ve gerçek zamanlı saati kullanma
- Cihaz depolamayı kullanma
- Gerçek zamanlı özellikli bir uygulamayla iletişim kurma
- Güç Azaltma durumunu yönetme
- Güç profillerini ayarlama
- Hizmet bulma gerçekleştirme
- CMakeLists.txt dosyasında:
- Azure Sphere SDK araçları düzeltmesi belirtme
- Hedef API kümesini belirtme
- Hedef donanımı belirtme
- app_manifest.json dosyasında:
- Projenizin adına ayarlayın
Name
. - Donanım kaynakları veya bağlantılar gibi kodunuzun gerektirdiği uygulamaya özgü özellikleri ekleyin. Üst düzey uygulama bir RTApp ile iletişim kuruyorsa, üst düzey uygulamanın
AllowedApplicationConnections
bileşen kimliğini özelliğe ekleyin.
- Projenizin adına ayarlayın
Üst düzey uygulamanızı gerçek zamanlı özellikli bir iş ortağı uygulamasıyla birlikte dağıtmak istiyorsanız, iş ortağının bileşen kimliğini launch.vs.json (Visual Studio) veya .vscode/launch.json (Visual Studio Code) dosyasının yapılandırmalar bölümünün partnerComponents alanına ekleyin:
"partnerComponents": [ "25025d2c-66da-4448-bae1-ac26fcdd3627" ]