MCU programozási és hibakeresési felület
Az MT3620 két dedikált UART-t és két vezérlőjelet (visszaállítást és helyreállítást) tesz elérhetővé az eszközök üzembe helyezése és helyreállítása során. Emellett elérhető egy SWD-felület az RTApps hibakereséséhez, egy további UART pedig a Microsoft diagnosztikához van fenntartva.
Az Azure Sphere PC szoftvereszközökhöz usb-to-UART felületi lapka szükséges, amely ezeket az interfészeket olyan módon teszi elérhetővé a pc-n, hogy az eszközök felismerjék és használják őket. Az Azure Sphere-eszközök támogatják az alkalmazások USB-n keresztüli betöltését a service UART használatával, valamint az Azure Sphere operációs rendszer helyreállítását a helyreállítási UART használatával. A PC-eszközök használatához a Future Technology Devices International (FTDI) FT4232HQ UART-to-USB interfész chip használata szükséges az interfészek felfedéséhez. Jelenleg az eszközök nem támogatják a különböző gyártóktól származó egyéb FTDI-lapkákat vagy interfészlapkákat.
A fejlesztői alaplapok esetében ez az interfészlapka általában ugyanazon a PCB-n található, mint az MT3620. Ezt a megközelítést az MT3620 referenciafejlesztési tábla (RDB) kialakításában dokumentáljuk. Az MT3620-at használó egyéni alaplapok vagy modulok esetében célszerű lehet külön PCB-n használni az illesztőlapkát, mivel erre a hardverre csak gyártás vagy karbantartás során van szükség, így egységenkénti költségmegtakarítás érhető el. Ez a megközelítés az interfész alaplapjának önálló programozásában és hibakeresésében van dokumentálva.
A portok áttekintése
Az MT3620 három UART-t és egy SWD-felületet tesz elérhetővé, amelyeket programozáshoz, Microsoft-diagnosztika és a chip üzembe helyezéséhez használnak. A négy interfész a következő függvényekkel rendelkezik:
UART hibakeresése – Az UART hibakeresése lehetővé teszi a Microsoft számára a diagnosztika végrehajtását. Vegye figyelembe, hogy ez az UART nem használható az alkalmazások hibakereséséhez vagy diagnosztikához.
A Microsoft irányítása alatt ez a felület további diagnosztikai információk rögzítésére szolgál, amelyek hasznosak lehetnek bizonyos problémák hibakereséséhez. Ezért javasoljuk, hogy ezt a felületet a szoftver- vagy hardverfejlesztéshez használt eszközökhöz is mellékelje, de opcionálisnak tekinthető a gyártási fázist elérő eszközök esetében.
SWD interfész – Az SWD-felületet az M4F magokon futó valós idejű alkalmazások (RTApps) hibakereséséhez használják; ez az interfész meg van osztva a két M4F mag között.
Ha az RTApps hibakeresésére van szüksége (például az eszköz fejlesztése során), az eszköznek támogatnia kell ezt a felületet. Miután az eszköz elérte a gyártási szakaszt, ez a felület opcionálisnak tekinthető, és kihagyható.
Szolgáltatási UART – A szolgáltatás UART szolgáltatása biztosítja az MT3620 és a gazdaszámítógép közötti fő programozási és hibakeresési felületet.
Ez a felület minden olyan Azure CLI-műveletet engedélyez, amelyhez csatlakoztatott eszköz szükséges, kivéve a helyreállítást (a következő bekezdésben leírtak szerint). Mivel a Service UART az MT3620 és a gazdaszámítógép közötti fő interfész, ennek az interfésznek elérhetőnek kell lennie a szoftverfejlesztést támogató eszközökhöz, valamint a kiskereskedelmi eszközök gyártása során. Ha ez a felület elérhető egy helyszíni eszközhöz, akkor a szolgáltatásmérnökök is használhatják – például az alkalmazásszoftver új verzióinak betöltésére, ha az eszköz nem kap felhőfrissítéseket, mert nincs internetkapcsolata.
Helyreállítási UART – A helyreállítási port lehetővé teszi egy eszköz helyreállítását az operációs rendszer legújabb verziójára.
Ezt a felületet támogatni kell a gyártás során, mert az eszköznek az operációs rendszer legújabb verziójára való helyreállítása gyakori feladat az eszköz gyártása során. Miután azonban az eszközt eladták egy ügyfélnek (és csatlakoztatták az internethez), a felhőfrissítések biztosítják, hogy az eszköz naprakész legyen az operációs rendszer legújabb verziójával.
Összetevők áttekintése
Az alábbi ábra áttekintést nyújt a 4 portos FTDI interfész fő összetevőiről és az MT3620-nal való összekapcsolásukról:
Dönthet úgy, hogy az FTDI chipet és áramkört az MT3620-mal megegyező alaplap részeként használja (például fejlesztői alaplap létrehozásakor), vagy egy külön felületi táblában, amely az MT3620 eszköz és a számítógép között helyezkedik el.
Porthozzárendelések
A pc-eszközökkel való kompatibilitás biztosítása érdekében fontos biztosítani, hogy a tervezés során használt UART-k és SWD-interfészek az alábbi táblázatban leírtak szerint csatlakoznak az FTDI-portokhoz.
Funkció | FT4232HQ pin függvény (pin-szám) | MT3620 Pin függvény (pin-szám) | ||
---|---|---|---|---|
Helyreállítási UART, visszaállítás és helyreállítási pántos pin-kód | D port | 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) (és opcionálisan ÉBRESZTÉS (70) az alább részletezett áramkörön keresztül) | |||
Szolgáltatás UART-objektuma | Port-C | CDBUS0 (38) | SERVICE_RXD (129) | |
CDBUS1 (39) | SERVICE_TXD (127) | |||
CDBUS2 (40) | SERVICE_CTS (130) | |||
CDBUS3 (41) | SERVICE_RTS (128) | |||
SWD és alaphelyzetbe állítás |
B port | BDBUS0 (26) | SWCLK | Az SWD-kapcsolatcsoportok részleteiért lásd: SWD interfész |
BDBUS1 (27) | SWDIO out | |||
BDBUS2 (28) | SWDIO in | |||
BDBUS4 (30) | SWDIO irány | |||
BDBUS5 (32) | SWD-engedélyezés | |||
BDBUS6 (33) | SYSRST_N (125) (és opcionálisan ÉBRESZTÉS (70) az alább részletezett áramkörön keresztül) | |||
UART hibakeresése |
A port | ADBUS0 (16) | DEBUG_RXD (94) | |
ADBUS1 (17) | DEBUG_TXD (95) | |||
ADBUS2 (18) | DEBUG_CTS (97) | |||
ADBUS3 (19) | DEBUG_RTS (96)* |
*DEBUG_RTS az MT3620 egyik "pántos csapja", amely ha a lapka alaphelyzetbe állítása során magasra húzódik, a lapka helyreállítási módba lép. Ez a gombostű a hibakeresési UART RTS-gombostűje.
Vázlatrajzok
Az alábbi sémák az FT4232HQ lapka támogatásához szükséges fő összetevőket mutatják be. Az MT3620 referenciatábla-kialakítás egy referenciatervet biztosít, amely magában foglalja ezt a sémát.
1. séma:
Megjegyzések – 1. séma:
- Az alaphelyzetbe állítási vonallal rendelkező sorozat 1K ellenállásai bele vannak foglalva, hogy elkerülje a rövidzárlatot abban az esetben, ha a felhasználó lenyomja az alaphelyzetbe állítás gombot (ha szerepel a tervben), ugyanakkor a visszaállítási vonalat programozott módon szabályozza a helyreállítás során.
- A PCB elhelyezésekor győződjön meg arról, hogy a különbségpár USB_P és USB_N párhuzamosan vannak egymáshoz irányítva, hogy 90Ω jellemző különbségi impedanciát biztosítsanak.
- A (választható) SWD vonalakkal ellátott sorozat 33Ω ellenállásai az átmeneti elemek csökkentésére szolgálnak, és az FT4232HQ közelében kell elhelyezni.
2. séma:
Megjegyzések – 2. séma:
- SYSRST_N 100K ellenállással (R8) húzza magasra. Ez azt jelenti, hogy a chip alaphelyzetbe állítása alapértelmezés szerint nem érvényes.
Az alábbi két elem nem kötelező. Ha jelen van, lehetővé teszik, hogy a fizikai RESET gomb és a PC FTDI felülete automatikusan felébresztse az MT3620-at, amikor a RESET be lett volna kapcsolva. Ez minden olyan kialakításhoz ajánlott, amely a Power Down módot használja, ahol az alaphelyzetbe állítás gombnak vagy a számítógép felületének továbbra is működnie kell Power Down módban.
- A Schottky-diódák egy pár sorozatban csatlakoznak a SYSRST_N és a WAKEUP között, és a diódák közös katódkapcsolata a visszaállítás gombhoz és az FTDI alaphelyzetbe állítási jelekhez csatlakozik. Ez megakadályozza, hogy SYSRST_N alacsony értékre váltson, amikor a WAKEUP váltógomb alacsony.
- A WAKEUP 100K ellenállással magasra van húzva, amely a 3V3_RTC tápegységhez csatlakozik. A 100 000-ás ellenállás biztosítja, hogy az ÉBRESZTÉS alacsony értékre legyen váltógomb, ha SYSRST_N alacsony; a kapcsolat 3V3_RTC biztosítja, hogy a WAKEUP továbbra is magas legyen, ha az MT3620 tápegység kikapcsol a Lekapcsolás módban.
FTDI EEPROM
Az FTDI interfész lapka olyan tűkészletet biztosít, amelyet egy kis EEPROM-hoz kell csatlakoztatni, amely a gyártó adatainak és sorozatszámának tárolására szolgál. A beszerelés után ezeket az információkat az FTDI által biztosított szoftveres eszközzel, usb-n keresztül az EEPROM-ba programozjuk, ahogy azt az FTDI FT_PROG programozási eszköz későbbi részében ismertetjük.
A következő EEPROM alkatrészek kompatibilisek az FTDI chippel:
- 93LC46BT-I/OT
- 93LC56BT-I/OT
- 93LC66BT-I/OT
Figyelje meg az LC-változat használatát, amely kompatibilis a 3.3V-s tápegységgel. Belső fejlesztés céljából a Microsoft mindig a 93LC56BT-I/OT részt használta.
Csatlakoztassa az EEPROM-t az FTDI-lapkához az alábbiak szerint:
EEPROM-kapcsolatcsoport | Csatlakozás FTDI-lapkához |
---|---|
UART-felületek
Az MT3620 és az FTDI közötti helyreállítási, szolgáltatási és hibakeresési UART-kapcsolatokhoz nincs szükség speciális kapcsolatcsoportokra. Vegye figyelembe azonban a TXD és az RXD, valamint a CTS és az RTS keresztátvételét. Az FTDI dokumentációja az egyes portok 0-s pin-kódját írja le TXD-ként, az 1-et pedig RXD-ként. Ezek a definíciók az FTDI-lapkához vannak viszonyítva; ez azt jelzi, hogy a 0-s pin egy kimenet, az 1-edik pin pedig bemenet. Következésképpen át kell haladni az MT3620 RXD- és TXD-kapcsolatain (és hasonlóan a CTS-hez és az RTS-hez). Az alábbi ábra ezt a szolgáltatás UART-objektumához szemlélteti; használja ugyanazt a sémát a helyreállítási és hibakeresési UART-k esetében is:
SWD-felület
Bár az FTDI-chipeket általában az UART-k és az USB közötti híd biztosítására használják, az Azure Sphere programozási és hibakeresési felülete egy quad tristate pufferen alapuló további áramköröket használ annak érdekében, hogy az FTDI-rész nagy sebességű SWD-interfészként működjön.
Az alábbiakban a szükséges kapcsolatcsoportot és az FTDI-lapkához való csatlakozást mutatjuk be. Vegye figyelembe, hogy a SWDIO jel az MT3620 pin 98-hoz, az SWCLK pedig a 99-hez csatlakozik.
Háromállapotú pufferelrendezés | FTDI Port-B kapcsolatok |
---|---|
USB-tevékenység LED (nem kötelező)
Az USB-tevékenység LED hasznos lehet arra, hogy jelezze az USB-kapcsolaton keresztüli adatátvitelt a normál működés során. Az USB-tevékenység LED-eket többféleképpen is implementálhatja. Az alábbi kapcsolatcsoport csupán egy példa.
A kapcsolatcsoport AND-jei összefogják az FT4232HQ-t az EEPROM-hoz összekötő órát és adatsorokat. Bár ez a két vonal nem egyértelmű, az adatok USB-n keresztüli küldésekor és fogadásakor ez a két vonal vált, így usb-tevékenység jelzésére használható. Az AND kapu kimenetének időbeni száma azonban túl rövid ahhoz, hogy megvilágítsa a LED-et; ezért ezt a jelet egy monostabil áramkör meghajtására használják, amely viszont a LED-et hajtja.
A monostabil áramkör 100ms-re van állítva, így még a rövid USB-forgalomcsúcsok is a LED megvilágítását okozzák.
FTDI FT_PROG programozási eszköz
Az EEPROM programozásának elősegítése érdekében az FTDI egy FT_PROG nevű ingyenes szoftvereszközt biztosít. Az eszköz windowsos grafikus felhasználói felületi alkalmazásként és parancssori eszközként is elérhető; mindkét lehetőség ugyanarról a csomagról egyidejűleg települ. Töltse le az eszközt az FTDI webhelyéről , és telepítse az alapértelmezett helyre.
FT_PROG parancssori eszköz
A FT_PROG parancssori verziója az EEPROM programozásának előnyben részesített módszere, mivel paraméterként egy konfigurációs fájl nevét veszi fel, majd egyetlen paranccsal több eszközt is leprogramol.
A GitHubon található Azure Sphere Hardware Designs-adattár tartalmaz egy EEPROM konfigurációs fájlt a parancssori eszközzel való használathoz. Határozottan javasoljuk, hogy ezt a fájlt és a parancssori eszközt használja a gyártási forgatókönyvekben. A konfigurációs fájl a következő beállításokkal programja az EEPROM-t:
- Engedélyezi a D2XX közvetlen módot, és letiltja a virtuális COM-portot
- Automatikusan létrehoz egy sorozatszámot az "AS" előjellel kezdődően
- A termékleírást "MSFT MT3620 Std Interface" értékre állítja
Az EEPROM programozásához módosítás nélkül kell használnia ezt a fájlt, mert az Azure Sphere PC-eszközei a Termékleírás sztringet keresik, és ez az érték módosítása esetén sikertelen lesz.
Részletes útmutató az EEPROM programozásához
A FT_PROG parancssori verziójának használata az EEPROM programozásához egy négyportos FTDI-lapka esetében:
Telepítse az FTDI-eszközöket az alapértelmezett helyre:
C:\Program Files(x86)\FTDI\FT_Prog
.Csatlakoztassa egy vagy több MT3620-táblát a számítógéphez.
Nyisson meg egy parancssort (például cmd.exe), és váltson arra a mappára, ahová a konfigurációs fájlt mentette.
Írja be a következő parancsot az összes csatlakoztatott eszköz listázásához:
"c:\Program Files (x86)\FTDI\FT_Prog\FT_Prog-CmdLine.exe" scan
Ha négy eszköz van csatlakoztatva, a kimenet a következőhöz hasonlóan néz ki:
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
Írja be a következő parancsot az összes csatlakoztatott eszköz programzásához. Adja meg a csatlakoztatott eszközök indexeit (0, 1, 2 stb.) a és
cycl
paraméterekprog
után:"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
Az eszköznek a következőt kell megjelenítenie:
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....
A programozás sikerességének ellenőrzéséhez tekintse át még egyszer a következőt:
"c:\Program Files (x86)\FTDI\FT_Prog\FT_Prog-CmdLine.exe" scan
Vegye figyelembe, hogy a sorozatszámok módosultak a kimenetben, és most az AS-vel kezdődnek:
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
grafikus felhasználói felületi alkalmazás FT_PROG
Az alkalmazás Windows GUI-verziója hasznos az EEPROM-információk állapotának olvasásához és ellenőrzéséhez. Az adatok módosítására is használhatja; javasoljuk azonban az eszköz parancssori verziójának használatát az eszköz programozásához.
Az alkalmazás elindítása után kattintson a Vizsgálat gombra (a nagyító ikonnal) az EEPROM aktuális tartalmának olvasásához és megjelenítéséhez.
Ha megjelenik egy Ismeretlen eszköz párbeszédpanel, az alábbi példához hasonlóan kattintson az OK gombra , amíg az alkalmazásablak nem jeleníti meg megfelelően az adatokat.
Az alábbi példa a megfelelő megjelenítést mutatja be:
A szoftver használatáról a FT_PROG dokumentációjában talál további információt.