returnToMenu()->bool
Mit dieser Funktion springt man wieder zurück ins Menü.
Der Rückgabewert gibt an, ob der Benutzer das Programm wirklich
verlassen hat.
if getButton():
if returnToMenu():
return
exit()
Beendet das aktuelle Script und springt zurück in das Menü.
restart()
Startet die Oxocard neu.
setPrecision(val:byte)
Formatiert beim Ausgeben von Float-Werten die Nachkommastellen:
f = 1.23931
setPrecision(2)
print(f) # "1.24"
setPrecision(4)
print(f) # "1.2393"
Es kann auch 0 angegeben werden. In dem Fall wird der ganzzahlige Wert angezeigt (gerundet, ohne Dezimalpunkt):
a = 1.2345
setPrecision(1)
print a # 1.2
setPrecision(0)
print a # 1
print(str:byte[])
Sendet den definierten String-Parameter ans Terminal im NanoPy-Editor.
print("Hallo Welt!")
Wird der print()-Funktion eine Zahl oder eine Variabel übergeben, wird diese automatisch in einen String (bzw. byte[]) umgewandelt:
print(123) # "123"
a = 1.23
print(a) # "1.23"
Es ist sogar möglich Texte und Zahlen oder Variablen zu mischen:
v = vector(x=5,y=10)
print("x = " + v.x + "; y = " + v.y) # "x = 5.0; y = 10.0"
setAutostart()
Wenn die Autostartfunktion eingeschaltet wurde, wird bei einem Neustart der Oxocard (nach dem Verbinden mit dem Internet) direkt ins Startprogram gewechselt.
setAutostart(true)
setAutostart(false)
turnOff()
Schaltet die Oxocard aus.
sleep(sec:long)
Schaltet die Oxocard aus und lässt sie nach x Sekunden wieder neustarten.
isConnected()->bool
Gibt true zurück, wenn die Karte mit dem Internet verbunden ist.
ipAddress()->byte[16]
Gibt die aktuelle IP-Adresse als String (byte-Array) zurück.
Wenn die Karte nicht mit dem Internet verbunden ist, wird “0.0.0.0” zurückgegeben.
ipAddress() # => "192.168.42.164"
backlight(value:float)
Schaltet das Hintergrundlicht des TFT-Displays ein (value=1) oder aus (value=0).
Mit Werten zwischen 0 und 1 (z.B. 0.1) kann das TFT-Display auch gedimmt werden.
Beachte:
Da das menschliche Auge Licht nicht linear (sondern logarithmisch) wahrnimmt, wird man erst bei kleineren Werten einen markanten Unterschied bemerken.
background(0, 255, 0)
drawText(60, 80, "Test123")
update()
for i in 20:
backlight(1.0 - 0.05*i)
delay(500)
runScript(path:byte[])
Startet ein zuvor heruntergeladenes oder ein als Datei gespeichertes Script.
Das aktuelle Script wird beendet und mit dem neue Script ersetzt.
Falls das Script nicht vorhanden ist, wird ein “Datei nicht gefunden”-Laufzeitfehler ausgegeben.
Heruntergeladene Scripts werden im Ordner “user_scripts” abgelegt. Der Dateiname entspricht dem Namen im Editor, z.B. “My downloaded script” plus “.npy”-Dateiendung.
runScript("user_scripts/My downloaded script.npy")
Datei Beispiel:
if fileExists("hello.npy"):
deleteFile("hello.npy")
open(C_WRITE, "hello.npy")
code = "drawText(35, 10, \"Hello World!\")\nupdate()"
i = 0
ch = code[i]
while ch != 0:
writeByte(ch)
i++
ch = code[i]
close()
runScript("hello.npy")
textInput(title:byte[], text:byte[])->byte[120]
Öffnet ein Text-Eingabefeld und gibt den eingegebenen Text zurück, sobald das OK-Symbol ausgewählt und bestätigt wurde.
str = textInput("Test", "123")
print(str)
getHardwareType()->byte
Gibt den Typ der aktuell verwendeten Oxocard zurück.
C_HW_GALAXY = 0
C_HW_ARTWORK = 1
C_HW_SCIENCE = 2
C_HW_SCIENCE_PLUS = 3
C_HW_CONNECT = 4
getLanguage()->byte
Gibt die aktuell eingestellte Systemsprache zurück.
Verfügbare Sprachen:
C_LANGUAGE_EN
C_LANGUAGE_DE
C_LANGUAGE_FR
setLanguage(lang:byte)
Setzt die Systemsprache des Geräts.
Verfügbare Sprachen:
C_LANGUAGE_EN
C_LANGUAGE_DE
C_LANGUAGE_FR
isCartridgeConnected()
Nur Oxocard Connect
Gibt true zurück, wenn eine Cartridge angeschlossen ist, sonst false
isCartridgeEmpty()
Nur Oxocard Connect
Gibt true zurück, wenn auf der angeschlossenen Cartridge kein Skript gespeichert ist, false, wenn ein Skript gesetzt ist.
pauseCartridgeDetection()
Nur Oxocard Connect
Pausieren Sie die automatische Erkennung von Cartridges. Wenn die Cartridge-Erkennung deaktiviert ist, wird das Autostart-Skript nicht gestartet.
resumeCartridgeDetection()
Nur Oxocard Connect
Setzt die Erkennung fort, wenn eine Cartridge angeschlossen ist. Wenn die Erkennung aktiviert ist, wird das Autostart-Skript ausgeführt, wenn eines auf der Cartridge eingestellt ist.
getSystemTime()
Gibt die Zeit in Mikrosekunden seit dem Systemstart zurück. Diese Funktion ist nützlich, um die Zeit zwischen zwei Messungen zu messen.
t1 = getSystemTime()
# Code
t2 = getSystemTime()
delta = t2 - t1
wifiPause()
Die Funktion unterbricht die WiFi-Kommunikation, bis wifiResume() aufgerufen wird.
Vorsicht: nach dem Aufruf wird die Verbindung zum Server unterbrochen. Es ist also nicht mehr möglich, Scripts zu übertragen.
wifiResume()
Die Funktion stellt die Wifi-Verbindung wieder her, nachdem man sie mit wifiPause() unterbrochen hat.
storeDisplay()
Mit den neuen Funktionen storeDisplay() und resumeDisplay() kann man den aktuellen Bildschirminhalt zwischen speichern. storeDisplay() speichert hierbei den aktuellen Stand. Mit resumeDisplay() wird der Inhalt wieder in den Bildschirmspeicher übertragen.
Mit dieser Funktion kann man beispielsweise ein Overlay-Menü bauen, ohne dass der Hintergrund immer wieder neu gezeichnet werden muss.
resumeDisplay()
Mit den neuen Funktionen storeDisplay() und resumeDisplay() kann man den aktuellen Bildschirminhalt zwischen speichern. storeDisplay() speichert hierbei den aktuellen Stand. Mit resumeDisplay() wird der Inhalt wieder in den Bildschirmspeicher übertragen.
Mit dieser Funktion kann man beispielsweise ein Overlay-Menü bauen, ohne dass der Hintergrund immer wieder neu gezeichnet werden muss.