Sdílet prostřednictvím


Programovací a ladicí rozhraní MCU

Důležité

Toto je dokumentace k Azure Sphere (starší verze). Azure Sphere (starší verze) se vyřazuje 27. září 2027 a uživatelé musí do této doby migrovat do Azure Sphere (integrované). K zobrazení dokumentace k Azure Sphere (integrované) použijte selektor verzí umístěný nad obsahem.

MT3620 zveřejňuje dva vyhrazené UART a dva řídicí signály (resetování a obnovení) pro použití během zřizování a obnovení zařízení. Kromě toho je k dispozici rozhraní SWD pro ladění RTApps a další UART je vyhrazena pro diagnostiku Microsoftu.

Softwarové nástroje Azure Sphere vyžadují použití čipu rozhraní USB-to-UART, který tyto rozhraní zveřejňuje počítači způsobem, který umožňuje nástrojům rozpoznat je a pracovat s nimi. Mezi nástroje Azure Sphere patří podpora načítání aplikace přes USB pomocí objektu UART služby a obnovení operačního systému Azure Sphere pomocí objektu UART pro obnovení. Počítačové nástroje vyžadují použití rozhraní FTDI (Future Technology Devices International) FT4232HQ čip rozhraní UART-to-USB k vystavení rozhraní. Nástroje v současné době nepodporují jiné čipy FTDI nebo čipy rozhraní od různých výrobců.

Pro vývojové desky je tento čip rozhraní obvykle na stejném PCB jako MT3620. Tento přístup je zdokumentovaný v návrhu referenční desky MT3620 (RDB). Pro vlastní desku nebo modul, který používá MT3620, může být vhodné mít rozhraní čip na samostatném PCB, protože tento hardware je vyžadován pouze během výroby nebo údržby, což umožňuje úsporu nákladů na jednotku. Tento přístup je zdokumentovaný v samostatném návrhu programovací a ladicí desky rozhraní.

Přehled portů

MT3620 zveřejňuje tři UART a rozhraní SWD, které se používají pro programování, diagnostiku Microsoftu a zřizování čipu. Čtyři rozhraní mají následující funkce:

  • Ladění UART – Ladění UART umožňuje Microsoftu provádět diagnostiku. Všimněte si, že tento objekt UART není použitelný pro ladění nebo diagnostiku aplikací.

    Ve směru Microsoftu toto rozhraní poskytuje způsob zachycení dalších diagnostických informací, které mohou být užitečné při ladění určitých problémů. Proto se doporučuje zahrnout toto rozhraní pro zařízení, která se používají pro vývoj softwaru nebo hardwaru, ale pro zařízení, která dosáhla fáze výroby, lze považovat za volitelná.

  • SWD rozhraní – rozhraní SWD se používá při ladění aplikací podporujících v reálném čase (RTApps), které běží na jádrech M4F; toto rozhraní se sdílí mezi dvěma jádry M4F.

    Pokud potřebujete možnost ladit RTApps (například při vývoji zařízení), mělo by vaše zařízení toto rozhraní podporovat. Jakmile zařízení dosáhne fáze výroby, můžete toto rozhraní považovat za volitelné a je možné ho vynechat.

  • Service UART – Služba UART poskytuje hlavní programovací a ladicí rozhraní mezi MT3620 a hostitelským počítačem.

    Toto rozhraní umožňuje všechny operace Rozhraní příkazového řádku Azure Sphere, které vyžadují připojené zařízení s výjimkou obnovení (jak je popsáno v následujícím odstavci). Vzhledem k tomu, že rozhraní UART služby je hlavním rozhraním mezi MT3620 a hostitelským počítačem, musí být toto rozhraní k dispozici pro zařízení, která podporují vývoj softwaru i během výroby maloobchodních zařízení. Pokud je toto rozhraní dostupné pro zařízení v terénu, můžou ho používat i technici služeb – například k načtení nových verzí aplikačního softwaru, pokud zařízení neobdrží cloudové aktualizace, protože není připojené k internetu.

  • Obnovení UART – Port pro obnovení poskytuje způsob obnovení zařízení na nejnovější verzi operačního systému.

    Toto rozhraní musí být podporováno během výroby, protože obnovení zařízení na nejnovější verzi operačního systému je běžnou úlohou při výrobě zařízení. Jakmile se ale zařízení prodalo zákazníkovi (a připojili ho k internetu), cloudové aktualizace zajistí, že je zařízení aktuální s nejnovější verzí operačního systému.< a1/>.

Přehled komponent

Následující diagram obsahuje přehled hlavních komponent rozhraní FTDI o 4 portech a jejich propojení s MT3620:

Diagram rozhraní FTDI se 4 porty na MT3620

Čip a obvody FTDI můžete použít jako součást stejné desky jako MT3620 (například pokud vytváříte vývojovou desku) nebo na samostatném rozhraní, které se nachází mezi vaším zařízením MT3620 a počítačem.

Přiřazení portů

Abyste zajistili kompatibilitu s nástroji pc, je důležité zajistit, aby byly všechny vystavené UART a rozhraní SWD, které se budou používat ve vašem návrhu, připojeny k portům FTDI, jak je popsáno v následující tabulce.

Funkce FT4232HQ funkce připnutí (číslo špendlíku) FUNKCE PIN MT3620 (číslo připínáčku)
UART pro obnovení, resetování a zotavení špendlíku Port-D DDBUS0 (48) RECOVERY_RXD (134)
DDBUS1 (52) RECOVERY_TXD (135)
DDBUS2 (53) RECOVERY_CTS (137)
DDBUS3 (54) RECOVERY_RTS (136)
DDBUS5 (57) DEBUG_RTS (96)*
DDBUS6 (58) SYSRST_N (125) (a volitelně WAKEUP (70) prostřednictvím okruhu podrobně popsaného níže)
UART služby Port-C CDBUS0 (38) SERVICE_RXD (129)
CDBUS1 (39) SERVICE_TXD (127)
CDBUS2 (40) SERVICE_CTS (130)
CDBUS3 (41) SERVICE_RTS (128)

SWD a resetování

Port-B BDBUS0 (26) SWCLK Podrobnosti o obvodech SWD najdete v rozhraní SWD.
BDBUS1 (27) SWDIO ven
BDBUS2 (28) SWDIO v
BDBUS4 (30) Směr SWDIO
BDBUS5 (32) Povolení SWD
BDBUS6 (33) SYSRST_N (125) (a volitelně WAKEUP (70) prostřednictvím okruhu podrobně popsaného níže)

Ladění UART

Port-A ADBUS0 (16) DEBUG_RXD (94)
ADBUS1 (17) DEBUG_TXD (95)
ADBUS2 (18) DEBUG_CTS (97)
ADBUS3 (19) DEBUG_RTS (96)*

*DEBUG_RTS je jedním z "špendlíků MT3620", které při vysokém zatížení při resetování čipu způsobí, že čip přejde do režimu obnovení. Ve všech ostatních případech je tento špendlík RTS ladicího objektu UART.

Schémata

Následující schémata ukazují hlavní komponenty potřebné k podpoře FT4232HQ čipu. Návrh referenční desky MT3620 poskytuje referenční návrh obsahující toto schéma.

Schéma 1:

schémata pro podporu čipu FTDI

Poznámky – schéma 1:

  • 1K rezistory v řadě s linkou resetování jsou zahrnuty, aby se zabránilo zkratu v případě, že uživatel stiskne tlačítko pro resetování (pokud je součástí návrhu) ve stejnou dobu, kdy je čára resetování řízena programově během obnovení.
  • Při rozložení PCB se ujistěte, že rozdílový pár, USB_P a USB_N, jsou směrovány paralelně mezi sebou, aby se charakteristické rozdílové impedance 90Ω.
  • Rezistory 33Ω v řadě s (volitelným) SWD linkami jsou určeny ke snížení přechodných čar a měly by být umístěny blízko FT4232HQ.

Schéma 2:

schematic with wake/reset circuitry to support FTDI chip

Poznámky – schéma 2:

  • SYSRST_N se vytáhnou vysoko s 100K rezistorem (R8). To znamená, že resetování čipu se ve výchozím nastavení neuplatní.

Následující dva prvky jsou volitelné. Pokud je k dispozici, povolí fyzické resetování tlačítko a rozhraní FTDI počítači automaticky probudit MT3620, když by bylo resetování přepnuto. Tento postup se doporučuje pro jakýkoli návrh, který používá režim Power Down, ve kterém musí tlačítko pro resetování nebo rozhraní počítače pokračovat v práci v režimu Power Down.

  • Dvojice schottky diod je připojena v řadě mezi SYSRST_N a WAKEUP a společné cathod připojení diod je připojeno k resetování tlačítko a FTDI reset signály. Zabráníte tak SYSRST_N přepnutí nízké hodnoty, když funkce WAKEUP přepíná nízkou úroveň.
  • WAKEUP je vytažen vysoko s 100K rezistorem, který je připojen k 3V3_RTC napájení. Odolnost 100K zajišťuje, že funkce WAKEUP je při SYSRST_N vypnuta nízká; připojení k 3V3_RTC zajistí, že funkce WAKEUP bude i nadále vytažena vysoko, pokud se napájecí zdroj MT3620 vypne v režimu Napájení dolů.

FTDI EEPROM

Čip rozhraní FTDI poskytuje sadu kolíků, které musí být připojeny k malému EEPROM, který se používá k ukládání podrobností výrobce a sériového čísla. Po montáži desky se tyto informace naprogramují do EEPROM přes USB pomocí softwarového nástroje poskytovaného FTDI, jak je popsáno dále v nástroji FTDI FT_PROG Programování.

Následující části EEPROM jsou kompatibilní s čipem FTDI:

  • 93LC46BT-I/OT
  • 93LC56BT-I/OT
  • 93LC66BT-I/OT

Všimněte si použití varianty LC, která je kompatibilní se zdrojem 3.3V. Pro účely interního vývoje microsoft vždy používal část 93LC56BT-I/OT.

Připojte EEPROM k čipu FTDI následujícím způsobem:

Okruh EEPROM Připojení k čipu FTDI
Okruh EEProm připojení k čipu FTDI

Rozhraní UART

Připojení UART Recovery, Service a Debug UART mezi MT3620 a FTDI nevyžadují žádné speciální obvody. Všimněte si však křížového přepisu TXD a RXD a CTS a RTS. Dokumentace FTDI popisuje pin 0 každého portu jako TXD a pin 1 jako RXD. Tyto definice jsou relativní vzhledem k čipu FTDI; to znamená, že pin 0 je výstup a pin 1 je vstup. V důsledku toho je nutné překračovat připojení RXD a TXD k MT3620 (a podobně pro CTS a RTS). Následující diagram znázorňuje tuto možnost pro objekt UART služby; použijte stejné schéma pro obnovení a ladění UART také:

obnovení a připojení UART služby

Rozhraní SWD

I když se čipy FTDI obvykle používají k poskytování mostu mezi UARTs a USB, programovací a ladicí rozhraní Azure Sphere používá další obvody založené na vyrovnávací paměti čtyřúhelníku, aby část FTDI fungovala jako vysokorychlostní SWD rozhraní.

Následující příklad znázorňuje požadovaný okruh a připojení k čipu FTDI. Všimněte si, že signál SWDIO se připojuje k kolíku MT3620 98 a SWCLK se připojuje k kolíku 99.

Uspořádání vyrovnávací paměti třístavového stavu Připojení FTDI Port-B
uspořádání vyrovnávací paměti tri-state Ftdi port B – připojení

INDIKÁTOR LED aktivity USB (volitelné)

Indikátor LED aktivity USB může být užitečný k označení přenosu dat přes připojení USB během normálního provozu. INDIKÁTOR LED aktivity USB můžete implementovat několika způsoby. Následující okruh je pouze příkladem.

Okruh AND dohromady hodiny a datové linky, které propojují FT4232HQ s EEPROM. I když není zřejmé, tyto dva řádky přepínací tlačítko při odesílání a přijetí dat přes USB, a proto lze použít k označení aktivity USB. Nicméně on-time výstupu z A brány je příliš krátký na osvětlení LED; proto se tento signál používá k řízení monostabilního obvodu, který zase řídí LED.

On-time mono-stable okruh je nastaven na 100 ms, takže i krátké nárazy USB provozu způsobí, že led dioda svítí.

INDIKÁTOR LED aktivity USB

Programovací nástroj FTDI FT_PROG

Pro usnadnění programování EEPROM poskytuje FTDI bezplatný softwarový nástroj s názvem FT_PROG. Nástroj je k dispozici jako aplikace grafického uživatelského rozhraní systému Windows i jako nástroj příkazového řádku; obě možnosti se instalují současně ze stejného balíčku. Stáhněte si nástroj z webu FTDI a nainstalujte ho do výchozího umístění.

nástroj příkazového řádku FT_PROG

Verze příkazového řádku FT_PROG je upřednostňovanou metodou programování EEPROM, protože jako parametr přebírá název konfiguračního souboru a pak programuje více zařízení jedním příkazem.

Úložiště Návrhy hardwaru Azure Sphere na GitHubu obsahuje konfigurační soubor EEPROM pro použití s nástrojem příkazového řádku. Důrazně doporučujeme použít tento soubor a nástroj příkazového řádku ve scénářích výroby. Konfigurační soubor programuje EEPROM s následujícími nastaveními:

  • Povolí přímý režim D2XX a zakáže virtuální port COM.
  • Automaticky vygeneruje sériové číslo začínající na AS.
  • Nastaví popis produktu na "MSFT MT3620 Std Interface"

Chcete-li programovat EEPROM, musíte použít tento soubor tak, jak je beze změny, protože nástroje počítače Azure Sphere hledají řetězec Popis produktu a při změně této hodnoty selžou.

Podrobné pokyny pro programování EEPROM

Pokud chcete použít verzi příkazového řádku FT_PROG k naprogramování EEPROM pro čip FTDI se čtyřmi porty:

  1. Nainstalujte nástroje FTDI do výchozího umístění: C:\Program Files(x86)\FTDI\FT_Prog.

  2. Připojte jeden nebo více desek MT3620 k počítači.

  3. Otevřete příkazový řádek (například cmd.exe) a přejděte do složky, do které jste konfigurační soubor uložili.

  4. Zadáním následujícího příkazu zobrazíte seznam všech připojených zařízení:

    "c:\Program Files (x86)\FTDI\FT_Prog\FT_Prog-CmdLine.exe" scan

    Pokud jsou připojená čtyři zařízení, výstup vypadá nějak takto:

    Device 0: FT4232H, MSFT MT3620 Std Interface, 984A8DD25A36
    Device 1: FT4232H, MSFT MT3620 Std Interface, 984A8DD25A36
    Device 2: FT4232H, MSFT MT3620 Std Interface, 984A8DD25A36
    Device 3: FT4232H, MSFT MT3620 Std Interface, 984A8DD25A36
    
  5. Zadáním následujícího příkazu naprogramujte všechna připojená zařízení. Zadejte indexy připojených zařízení (0, 1, 2 atd.) za prog parametry a cycl parametry:

    "c:\Program Files (x86)\FTDI\FT_Prog\FT_Prog-CmdLine.exe" scan prog 0,1,2,3 MT3620_Standard_Interface.xml cycl 0,1,2,3

    Nástroj by se měl zobrazit:

     Scanning for devices...
     Device 0: FT4232H, MSFT MT3620 Std Interface, 984A8DD25A36
     Device 1: FT4232H, MSFT MT3620 Std Interface, 984A8DD25A36
     Device 2: FT4232H, MSFT MT3620 Std Interface, 984A8DD25A36
     Device 3: FT4232H, MSFT MT3620 Std Interface, 984A8DD25A36
     Device 0 programmed successfully!
     Device 1 programmed successfully!
     Device 2 programmed successfully!
     Device 3 programmed successfully!
     Finished
    
     Re-enumerating Device 0....
     Re-enumerating Device 1....
     Re-enumerating Device 2....
     Re-enumerating Device 3....
    
  6. Pokud chcete ověřit, že programování proběhlo úspěšně, zkontrolujte ještě jednou:

    "c:\Program Files (x86)\FTDI\FT_Prog\FT_Prog-CmdLine.exe" scan

    Všimněte si, že sériová čísla mají ve výstupu změny a nyní začínají as:

    Scanning for devices...
     Device 0: FT4232H, MSFT MT3620 Std Interface, AS5AW7FD
     Device 1: FT4232H, MSFT MT3620 Std Interface, AS5AHG3C
     Device 2: FT4232H, MSFT MT3620 Std Interface, AS5DWM2I
     Device 3: FT4232H, MSFT MT3620 Std Interface, AS5JQ0LJ
    

aplikace grafického uživatelského rozhraní FT_PROG

Verze grafického uživatelského rozhraní systému Windows aplikace je užitečná pro čtení a kontrolu stavu informací EEPROM. Můžete ho také použít ke změně informací; k naprogramování zařízení však doporučujeme použít verzi nástroje příkazového řádku.

Po spuštění aplikace klikněte na tlačítko Prohledat (s ikonou lupy) a zobrazte aktuální obsah EEPROM.

Pokud se zobrazí dialogové okno Neznámé zařízení, jako v následujícím příkladu, klepněte na tlačítko OK , dokud okno aplikace nezobrazí informace správně.

obrazovka neznámého zařízení FT_PROG

Následující příklad ukazuje správné zobrazení:

FT_PROG správné zobrazení

Další informace o používání softwaru najdete v dokumentaci k FT_PROG.