Hallo, ich möchte den seriellen bootloader eines efm32zg210 verwenden, bekomme aber keine Reaktion und weiß nicht mehr weiter. Ich verwende ein selbst gebautes Board, siehe Anhang. Unten links ist der connector für den üblichen USB-Seriell-Wandler. * Pin 5 = 3,3V des USB-Seriell-Wandlers * Pin 4 = 5V des USB-Seriell-Wandlers, unbenutzt * Pin 3 = RX des mikrocontrollers = PE11 = TX des USB-Seriell-Wandlers * Pin 2 = TX des mikrocontrollers = PE10 = RX des USB-Seriell-Wandlers * Ganz unten links ist GND Die Spannungsversorgung des Mikrocontrollers läuft über die 3,3V. Am Decouple-Pin sind 1,85V zu messen. An den Stützkondensatoren liegen korrekte Werte an. Es wird nichts warm. Der USB-Seriell-Wandler ist einer der 1$ pl2303-Wandler; er läuft auf 3,3V. Mit dem Oszi habe ich überprüft, dass er etwas sendet und das kommt auch beim mikrocontroller an. RX und TX brücken liefert ebenfalls das erwartete Ergebnis. Laut App-Note AN0003 [1] wird der bootloader automatisch benutzt, sobald im flash nichts vorhanden ist. Sicherheitshalber habe ich, wie dort beschrieben, DBG_SWDCLK (=PF0, rechts oben) hart auf 3,3V gezogen. Den Reset-Pin lasse ich unbeschaltet. Sicherheitshalber habe ich alle Tests auch mit Reset = low durchgeführt. Während all dieser Tests lausche ich auf TX und sende ein 'U' auf Rx des Mikrocontrollers. Getestet habe ich 57600 und 115200 Baud. Der Mikrocontroller zeigt ähnliche Reaktionen wie ein Stein, nämlich gar keine. * Kann es sein, dass der Mikrocontroller 1,8V pegel erwartet und auch nur senden kann? Das ist mir nicht klar, da im Datenblatt [2] auch von 5,5V Kompatibilität geschrieben wird. * Wie muss Reset beschaltet sein, damit der bootloader funktioniert? Ich gehe von high aus. * Hat jemand den bootloader schon benutzt? Wenn ja, wie? [1] http://cdn.energymicro.com/dl/an/pdf/an0003_efm32_uart_bootloader.pdf [2] http://www.sekorm.com/Ectm/27938
Dein Layout sieht do aus, als wäre das Center Pad nicht verbunden. Das muss aber IMO auf GND liegen.
Hi Jim, danke erstmal. Das Center Pad ist definitiv mit Masse verbunden. Im eagle Screenshot verberge ich die Masseflächen, da man sonst gar nichts mehr erkennen kann. Es sind 16 Vias im Center Pad, auf top und bottom ist eine Massefläche, der DRC meldet (diesbezüglich :D ) keine Fehler.
In neueren Datasheets [3] werden PF0/1 als "bootloader RX" und "bootloader TX" gekennzeichnet. Ich kann einfach nicht glaube, dass Silabs ein so wichtiges feature klammheimlich aendert. Ich habe eine Anfrage im silabs Forum gestartet und werde die Antwort hier mitteilen. [3] http://www.silabs.com/Support%20Documents/TechnicalDocs/EFM32ZG210.pdf
Anon Ymous schrieb: > Ich kann einfach nicht glaube, dass > Silabs ein so wichtiges feature klammheimlich aendert. Im Datenblatt auf silabs.com ist eindeutig zu sehen, das an PE10/11 gar kein USART vorhanden ist. In der Liste etwas unterhalb ist auch die neuere Version vom AN0003 in der Version vom September 2013. Aber auch in der veralteten Version steht in Kapitel 1.2 was von Devices ohne USART0. Den ZG gab es 2010 übrigens noch nicht.
Verdammt. Dann habe ich mich einfach vertan.
1 | EFM32TG108Fxx and EFM32ZGxxxFxx parts does not have USART0, also |
2 | EFM32TG110Fxx does not support location 0 for USART0. These parts all use LEUART0, |
3 | location 3. Note that this location overlaps with the regular SWD port. Therefore, when |
4 | using these parts you should use a 4K pull-up on SWDCLK. |
aus AN0003 LEUART0, location 3, ist PF0 und PF1.
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.