Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
lehrkraefte:blc:informatik:glf19:oxocard:oxohack [2019/10/31 20:47] Ivo Blöchliger created |
lehrkraefte:blc:informatik:glf19:oxocard:oxohack [2019/11/07 07:39] (current) Ivo Blöchliger [In TigerJython Gerät "ESP32" und COM-Port setzen] |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== OxoCards mit den Schüler-Accounts ====== | ||
+ | Die OxoCard wird zwar vom System korrekt erkannt und TigerJython kann auch mit der OxoCard kommunizieren. Was nicht funktioniert ist das Auflisten der COM-Ports (Serielle Kommunikation), | ||
+ | |||
+ | Es ist aber möglich Programme direkt auf die OxoCard via das ESP32-Modul zu laden (wobei dort der korrekte COM-Port eingetragen werden muss). Allerdings überschreibt man dort das main.py, was erst die eigenen Programme startet. Mit ein bisschen Zusatz-Code funktioniert es aber trotzdem. | ||
+ | |||
==== COM-Port ermitteln ==== | ==== COM-Port ermitteln ==== | ||
- | Erst ist die Nummer vom COM-Port zu ermitteln. Diese ist nicht immer gleich, meist aber COM4 oder COM5 (aber offenbar nie COM3). Ist die Karte eingesteckt, | + | Erst ist die Nummer vom COM-Port zu ermitteln. Diese ist nicht immer gleich, meist aber COM4 oder COM5 (aber offenbar nie COM3). Ist die Karte eingesteckt, |
<code text comports.ps1> | <code text comports.ps1> | ||
[System.IO.Ports.SerialPort]:: | [System.IO.Ports.SerialPort]:: | ||
+ | Write-Host -NoNewLine 'Press any key to continue...'; | ||
+ | $null = $Host.UI.RawUI.ReadKey(' | ||
+ | </ | ||
+ | |||
+ | ==== In TigerJython Gerät " | ||
+ | In TigerJython, | ||
+ | |||
+ | ==== Beispiel-Code ==== | ||
+ | <code python oxohack.py> | ||
+ | # Nur weil wir mit verrammelter Hard- und Software | ||
+ | # arbeiten müssen, heisst das noch nicht, dass wir | ||
+ | # uns nicht amüsieren können ;-) | ||
+ | # | ||
+ | # Initialisierung der Oxocard | ||
+ | try: | ||
+ | from machine import Pin, deepsleep, ADC, reset | ||
+ | from globals import __np | ||
+ | import time | ||
+ | |||
+ | Pin(2, Pin.OUT).value(1) # audio ampli on | ||
+ | Pin(15, Pin.OUT).value(0) # neopix on | ||
+ | __np.set(37, | ||
+ | # Möglichkeit zum Ausschalten... | ||
+ | for i in range(50): | ||
+ | if Pin(13, Pin.IN, Pin.PULL_DOWN).value() == 1 and Pin(27, Pin.IN, Pin.PULL_DOWN).value() == 1: | ||
+ | print(" | ||
+ | for k in [250, 100, 50, 20, 10, 5, 1, 0]: | ||
+ | for i in range(8): | ||
+ | __np.set(9*i+1, | ||
+ | __np.set(7*i+8, | ||
+ | __np.show() | ||
+ | time.sleep(0.5) | ||
+ | Pin(2, Pin.OUT).value(0) # audio ampli off | ||
+ | Pin(15, Pin.OUT).value(1) # neopix off | ||
+ | deepsleep() | ||
+ | time.sleep(0.02) | ||
+ | except ImportError: | ||
+ | pass | ||
+ | ################################### | ||
+ | # Start vom eigentlichen Programm # | ||
+ | ################################### | ||
+ | |||
+ | from oxocard import * | ||
+ | |||
+ | bigTextScroll(" | ||
</ | </ | ||
+ | ==== OxoCard wieder in Originalzustand setzen ==== | ||
+ | Laden Sie dazu folgenden Code mit TigerJython auf die OxoCard: {{ : |