Příprava Azure Sphere pro Ethernet
Ke komunikaci přes Ethernet vyžaduje zařízení Azure Sphere externí ethernetový adaptér a obrázek konfigurace desky. K přípravě zařízení na síť přes Ethernet je potřeba provést následující kroky:
Pozor
Pokud je vaše zařízení připojené přes ethernet, je potřeba síť s nízkým provozem, aby se zabránilo ztrátě dat nebo nízkému výkonu. Zařízení přijde o data z příchozích paketů jiných než TCP, pokud v síti dojde k významnému příchozímu provozu. Data se obvykle neztratí z příchozích paketů TCP bez ohledu na objem přenosů, protože tcp bude znovu překládat vyřazené pakety. Re-přenos je však za cenu výkonu.
Připojení adaptéru k zařízení
Seznam podporovaných ethernetových adaptérů a pokyny k jejich připojení k vývojové desce Azure Sphere najdete v tématu Podporované panely a moduly adaptérů sítě Ethernet.
Vytvoření a nasazení konfigurační image panelu
Pro každý ethernetový adaptér používaný s Azure Sphere se vyžaduje obrázek konfigurace desky . Obrázek konfigurace panelu obsahuje informace, které služba zabezpečení Azure Sphere vyžaduje k přidání podpory sítě Ethernet do operačního systému Azure Sphere. Pro ethernetový adaptér musíte vytvořit balíček konfigurační image desky a nasadit ho spolu s balíčkem imagí aplikace. Balíček konfigurační image desky můžete načíst bokem pro účely vývoje a ladění. Balíček konfigurační image desky můžete také nasadit z cloudu společně s aplikací Azure Sphere pro použití v terénu. Konfigurace desky se nezapočítává do paměti Flash nebo paměti RAM vyhrazené pro aplikace vysoké úrovně.
Vytvoření balíčku konfigurační image panelu
Pokud chcete vytvořit balíček image konfigurace desky, použijte příkaz rozhraní příkazového řádku azsphere image-package pack-board-config .
Poznámka
pack-board-config se v současné době nepodporuje v rozšíření Azure CLI.
Zkušební načtení balíčku image konfigurace panelu
Použití balíčku image konfigurace desky během vývoje a ladění:
Příprava zařízení pro vývoj a ladění:
az sphere device enable-development --resource-group MyResourceGroup --catalog MyCatalog --device <DeviceIdValue>
Odstraňte ze zařízení všechny existující aplikace pomocí příkazu az sphere device sideload delete . Před načtením balíčku image konfigurace desky je důležité odstranit existující aplikace, abyste se vyhnuli konfliktům prostředků mezi existujícími aplikacemi a konfigurací desky.
Stáhněte balíček konfigurační image desky bokem. Pokud jste v předchozí části vytvořili konfigurační soubor vlastní desky, můžete ho teď načíst bokem. Mezi přednastavené možnosti patří:
Seeed MT3620 Ethernet Shield for Microchip ENC28J60 NIC:
az sphere device sideload deploy --image-package lan-enc28j60-isu0-int5.imagepackage
Avnet Rev1 Devkit Click Module for Wiznet W5500 NIC:
az sphere device sideload deploy --image-package lan-w5500-isu1-int2.imagepackage
Avnet Rev2 Devkit Click Module for Wiznet W5500 NIC:
az sphere device sideload deploy --image-package lan-w5500-isu0-int5.imagepackage
Načtěte aplikaci bokem, a to buď pomocí sady Visual Studio, nebo pomocí příkazu az sphere device sideload deploy .
Cloudové nasazení balíčku image konfigurace panelu
Pokud chcete nasadit balíček konfigurační image desky prostřednictvím cloudu, musí mít zařízení produkt, patřit do skupiny zařízení a nesmí mít nainstalovanou funkci AppDevelopment. Informace o tom, jak je nastavit, najdete v tématu Vytvoření nasazení .
Jakmile bude vaše zařízení připravené, můžete nasadit image konfigurace panelu společně s imagí aplikace v jednom nasazení.
Vytvoření nasazení:
- Nahrajte balíček image do katalogu Azure Sphere pomocí příkazu az sphere image add.
- Vytvořte nové nasazení pro skupinu zařízení pro nahrané image pomocí příkazu az sphere deployment create.
az sphere deployment create --resource-group <resource-group-name> --catalog <catalog-name> --product <product-name> --device-group <device-group-name> --images <image-ID>
Nahraďte <image-ID> id id image balíčku image.
Odebrání konfigurace bokem načtené desky
Pokud během vývoje načtete konfiguraci panelu bokem, možná budete později muset tuto konfiguraci odebrat, aby ostatní aplikace mohly používat prostředky, které si panel rezervuje. Pokud se pokusíte spustit aplikaci, která používá tyto prostředky, zatímco se konfigurace desky načítá na zařízení Azure Sphere, dojde k chybám konfliktu pinů.
Chcete-li odebrat konfiguraci panelu, postupujte takto:
Zobrazí seznam imagí nainstalovaných v zařízení:
az sphere device image list-installed
V seznamu vyhledejte ID komponenty pro konfiguraci panelu:
{ "does_image_type_require_restart": true, "image_type": "Board configuration", "images": [ { "length_in_bytes": 428, "replica_type": 0, "uid": "839e699a-1b23-44de-bc56-f2b19e472098", "uncompressed_length_in_bytes": 428 } ], "is_update_staged": false, "name": "lan-enc28j60-isu0-int5_29f10d", "uid": "29f10d1e-29aa-4ae0-a48c-cc24305b288a" }
ID komponenty je identifikátor uID přidružený ke konfiguraci desky, takže například ve výše uvedeném výstupu začíná "29f10...".
Odstraňte balíček konfigurační image desky zadáním ID komponenty:
az sphere device sideload delete --component-id 29f10d1e-29aa-4ae0-a48c-cc24305b288a
Restartujte zařízení stisknutím tlačítka Resetovat nebo příkazem az sphere device restart .
Povolení ethernetového rozhraní
Po načtení konfigurace desky a restartování zařízení se rozhraní automaticky povolí. Pokud chcete rozhraní zakázat, použijte příkaz az sphere device network disable nebo zavolejte funkci Networking_SetInterfaceState , která je součástí rozhraní API pro konfiguraci sítě.
Všechna rozhraní ve výchozím nastavení používají dynamické IP adresy. Podrobnosti o typech služeb, které může aplikace Azure Sphere používat, najdete v tématu Použití síťových služeb .
Konfigurace Azure Sphere pro Ethernet
Po připojení zařízení Azure Sphere k podporovanému ethernetovému adaptéru a nasazení image konfigurace desky můžete zařízení Azure Sphere nakonfigurovat tak, aby se připojilo k síti z příkazového řádku (CLI) nebo z vaší aplikace pomocí knihoven aplikací sady Azure Sphere SDK (Applibs).
Konfigurace sítě Ethernet pomocí rozhraní příkazového řádku
Ke správě konfigurace sítě Ethernet z příkazového řádku použijte příkazy rozhraní příkazového řádku az sphere device network. Například příkaz device network enable povolí na připojeném zařízení ethernetové rozhraní.
az sphere device network enable --interface "eth0"
Pokud chcete použít nakonfigurovanou síť Ethernet, musí být síťové rozhraní (eth0) aktivní. Pomocí příkazu device network list-interfaces zjistěte, jestli je rozhraní aktivní.
az sphere device network list-interfaces
V případě potřeby ho aktivujte pomocí příkazu enable sítě zařízení .
az sphere device network enable --interface eth0
Konfigurace sítě Ethernet pomocí knihovny Applibs
Ke konfiguraci sítě Ethernet musí vaše aplikace používat síťové rozhraní API applibs.
Do aplikace zahrňte tento soubor hlaviček:
#include <applibs/networking.h>
Manifest aplikace musí obsahovat funkci NetworkConfig.
"Capabilities": {
"NetworkConfig" : true
}
Pomocí funkce Networking_GetInterfaceConnectionStatus zjistěte, jestli je síťové rozhraní aktivní.
Networking_GetInterfaceConnectionStatus("eth0", ¤tInterfaceStatus);
K aktivaci síťového rozhraní použijte funkci Networking_SetInterfaceState .
Networking_SetInterfaceState("eth0", true);
Poznámka
Pokud jsou obě síťová rozhraní (wlan0 a eth0) aktivní a připojená, konkrétní rozhraní, které bude zařízení používat ke komunikaci, není deterministické. Pokud chcete určit, které síťové rozhraní se v daném okamžiku používá, musí vaše aplikace použít funkci Networking_SetInterfaceState() k explicitní zapnutí požadovaného rozhraní a vypnutí druhého rozhraní. Ukázka aplikace vysoké úrovně klienta DHCP ukazuje mimo jiné, jak přepínat mezi rozhraními tím, že globální proměnné přiřadí hodnotu představující jedno ze dvou rozhraní.
Vzorky
Azure IoT ukazuje, jak používat rozhraní API C sady Azure IoT SDK v aplikaci Azure Sphere ke komunikaci s Azure IoT Hub nebo Azure IoT Central.
Klientská aplikace vysoké úrovně DHCP ukazuje, jak obnovit nebo uvolnit aktuální IP adresu, kterou síťový server DHCP přiřadil zařízení MT3620.
HTTPS cURL Easy demonstruje načítání obsahu přes HTTPS pomocí jednoduchého rozhraní API cURL.
HTTPS cURL Multi demonstruje načítání obsahu přes HTTPS pomocí multi rozhraní API cURL.
Aplikace Power Down na vysoké úrovni předvádí funkce Power Down pro platformu Azure Sphere.
Služby privátní sítě ukazují, jak připojit zařízení Azure Sphere k privátní síti a používat síťové služby.
Aplikace WolfSSL vysoké úrovně demonstruje použití WolfSSL pro metodu handshake PROTOKOLU SSL v aplikaci vysoké úrovně.
Poznámka
Následující ukázky pocházejí z galerie Azure Sphere, což je kolekce neudržovaných ukázek softwaru a hardwaru od Microsoftu. Další informace najdete v galerii Azure Sphere.
Tisk MAC a IP adresy síťového rozhraní vytiskne adresy MAC a IP adresy zadaného síťového rozhraní.
OSNetworkRequirementChecker-HLApp provádí dva síťové diagnostické testy zařízení (MT3620).