Moin, Wenn ich auf dem Pi pico, µPython, eine main.py drauf hab, wird die immer nach Reset abgearbeitet. Wie kann ich das Teil neu Programmieren ohne immer nuke.uf2 drraufzu kopieren und alles neu zu installieren (libs/µPython)? Auch den Run eingang auf 0V ziehen klappt nicht. thnx
In der main.py zuerst eine Abfrage auf irgend einen freien Pin. Wenn der zB. bei eingeschaltetem Pull-Down nach +3.3V gezogen wird, dann den Rest nicht ausführen.
Eigentlich ist das Ding noch immer über die serielle Schnittstelle ansprechbar, und das laufende Script lässt sich unterbrechen? Ist mir eigentlich nur einmal passiert, dass das nicht möglich war und ich Micropython überschreiben musste – und da hab ich Dummsinn gemacht, sodass sich der μC festgelaufen hat. Seitdem hab ich am Start von main.py immer 2s Verzögerung, wodurch ich die Ausführung des Rests abbrechen kann, bevor es sich aufhängen kann.
Ab und zu klappt auch ein einfaches Ctrl-C. Jens B. schrieb: > Wie kann ich das Teil neu Programmieren ohne immer nuke.uf2 drraufzu > kopieren und alles neu zu installieren (libs/µPython)? Libs auf den Pico ziehen? Das einzige, was man auf den Pico kopieren muss, ist das UF2 mit Micropython und keine Libs. Dann das gewünschte Python Programm kopieren, nachdem µPython auf dem Pico startet. Evtl. solltest du dir doch mal Thonny anschauen, das macht das Filehandling sehr einfach.
Tja, wenn man an REPL nicht mehr heran kommt, dann wird's schwieriger.
1 | #!/usr/bin/python
|
2 | from machine import Pin |
3 | pin = Pin(16, Pin.IN, Pin.PULL_DOWN) |
4 | if pin.value(): # stoppt wenn Pin 16 auf +3.3V gezogen ist |
5 | sys.exit() |
6 | del pin |
:
Bearbeitet durch User
Hi, Danke für die Antworten. Mein Fehler, das passiert nur wenn ich beide Kerne am laufen habe in der main.py auf dem pi gespeichert. Sonst geht run auf Low ziehen.
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.