ZitatV5.07.02b2
Fixes bug that added an extra space after a REM command each time the program was edited.
REM als 'command' zu bezeichnen finde ich komisch.
ZitatV5.07.02b2
Fixes bug that added an extra space after a REM command each time the program was edited.
REM als 'command' zu bezeichnen finde ich komisch.
ZitatV5.07.02b2
Fixes bug that added an extra space after a REM command each time the program was edited.
REM als 'command' zu bezeichnen finde ich komisch.
Das ist schon ein "command" - An den Leser, nicht den Computer
REM als 'command' zu bezeichnen finde ich komisch.
es ist einfach ein "recognized" command - d.h. es gibt keinen Syntax-Error.
Der Interpreter muss nur nichts mit anfangen
Ich habe mal testweise anstatt USB-seriell jetzt die serielle Console COM2 auf GP20/GP21 konfiguriert und ein VGA32 mit GLTerm angehaengt - klappt auch gut. Wobei der Backspace nicht will, aber Cursor-links geht dafuer.
[EDIT] Mit ANSI-Legacy als Terminal im VGA32 geht Backspace (im Gegensatz zu ANSI)
# RESET all options
OPTION RESET
# SET Pins for SPI/SDCard
OPTION SYSTEM SPI GP18, GP19, GP16
# SET Card-Select for SDCard
OPTION SDCARD GP17
#SET I2C Pins for RTC
OPTION SYSTEM I2C GP26, GP27
# SET RTC AUTO ENABLE
OPTION RTC AUTO ENABLE
# SET TX/RX Pins for serial Port
OPTION SERIAL CONSOLE GP20, GP21
COM1 GP0,GP1/GP12,GP13/(GP16,GP17 in use by SPI/SD)
COM2 GP4,GP5/GP8,GP9/GP20,GP21
OPTION SERIAL CONSOLE uartapin, uartbpin. uartapin and uartbpin can be any valid pair
of rx and tx pins for either com1 (uart0) or com2( uart1).
The order you specify them is not important.
Use: OPTION SERIAL CONSOLE DISABLE to revert to normal the USB console
Alles anzeigen
Es gibt eine neue offizielle Picomite Version (V5.07.03): https://geoffg.net/picomite.html
Hier sind die Änderungen beschrieben: https://www.thebackshed.com/fo…opic.php?FID=16&TID=14485
:)Franky
Es gibt eine neue offizielle Picomite Version (V5.07.03): https://geoffg.net/picomite.html
und das Handbuch wurde auch auf den Stand V5.07.03 gebracht
Ich habe diese aktuellste Version mal ausprobiert und mir schon in der ersten Spielstunde drei mal die Daten auf meiner SD-Karte zerschossen.
Mit einem kleinen Testprogramm, das nichts weiter machte als eine Datei zu öffnen, ein paar ASCI Daten zu schreiben, die Datei schließen und dann wieder zu öffnen und zu lesen.
In den release notes V5.07.03b2 steht
... Increases drive level for SDcard output pins (CD, MOSI and CLOCK) which MAY improve SDcard reliability when the SPI bus is loaded with additional devices (LCD and/or touch). ...
Was das bedeuten soll ist mir nicht klar.
Vielleicht ist auch etwas beim Einbauen der VGA Bibliotheken nicht so 100% gelungen (ich habe aber die Version ohne VGA genommen)
Also Vorsicht - werde erstmal wieder downgraden.
Als ich das serielle GLTerm auf GP(IO) 20&21 ( OPTION SERIAL CONSOLE GP20, GP21 )
neu compilieren wollte, ging dies nicht mehr - da FabGL seit dem letzten Compile vor 10 Monaten einige Befehle in andere Classes verschoben hat (Terminal. -> SerialPort.)
So musste ich mir das aktuelle ANSI-Terminal Example vornehmen um die Aenderungen zu finden
Hat aber nach ein paar Versuchen geklappt
Gleichzeitig habe ich mal die aktuellste Beta v5.07.05b18 vom Picomite installiert.
vom 31.10.2022 gibt es die 5.07.05.RC09, die habe ich heute installiert nachdem ich einen Pico wieder aus einer anderen Idee (RTC fuer den MiST) wieder befreit habe
PicoMite MMBasic Version 5.07.05RC9
Copyright 2011-2022 Geoff Graham
Copyright 2016-2022 Peter Mather
Mein aktueller Init:
OPTION RESET
OPTION SYSTEM SPI GP18, GP19, GP16
OPTION SDCARD GP17
OPTION SYSTEM I2C GP26, GP27
OPTION RTC AUTO ENABLE
RTC SETTIME 2022, 11, 20, 20, 20, 0
RTC GETTIME (optional wegen OPTION RTC AUTO ENABLE)
PRINT DATE$
PRINT TIME$
Alles anzeigen
Mein Resettaster ist direkt links neben dem GP26(SDA) = Pin 30 (RUN) in Bruecke zu Pin 28 (GND)
SPI:
GP16 (MISO) - GP17 (Card Select CS) - GP18 (Clock - CLK) - GP19 (MOSI)
I2C:
GP26 (SDA) - GP27 (SCL)
Power:
Pin 28 (GND) - Pin 30 (RUN) - Pin 36 (3.3V OUT) - Pin 38 (GND)
SDCard und DS3213-RTC beide an 3.3V und GND
@MH, Zitat:
"Ansonsten super einfach zu benutzen - Funktionstasten für EDIT und RUN und der eingebaute terminal-Editor ist ausreichend - in wenigen Minuten konnte ich eine SD-Karte und ein GPS Empfänger sowie eine RTC anschließen und mit BASIC ansteuern. Ohne Bibliotheken zu laden oder etwas neu kompilieren zu müssen. Einfacher als mit MicroPython."
Ich verwende ebenfalls MMBasic für den Pi PICO und möchte auch ein GPS-Modul anschliessen. Leider finde ich im MMBasic Handbuch unter den unterstützten Sensoren kein GPS-Modul. Könntest du ein entsprechendes Modul angeben das funktioniert? Sehr dankbar wäre ich auch, wenn du beschreibst wie das du es angeschlossen hast und welche OPTIONS angegeben werden müssen. Ein kleines Beispielprogramm für die Abfrage des GPS wäre super.
Ich bedanke mich herzlich für eine Antwort
Hans
Ha37 :
Im Prinzip kannst Du jedes 3,3V fähiges NMEA GPS nehmen. Geoff hat ein paar für seinen "Boat Computer MkII" aufgeführt: https://geoffg.net/BoatComputer2.html
Das EM408 das er früher verwendete ist wohl nicht mehr verfügbar... - Du solltest aber dieses hier verwenden können:
Bin zur Zeit dabei mir einen kleinen PicoMite Schlepptop aufzubauen...
:)Franky
Hallo zusammen,
es ist zwar schon was her, seit dieser Thread geöffnet wurde.
Vielleicht kann mir jemand helfen.
Ich habe mir den PicoMite selbst zusammengebaut und alles funktioniert soweit.
Na ja, bis auf eine kleine Sache: Der Zugriff auf die SD-Karte ist ein Glücksspiel.
Ich bekomme sehr oft die Fehlermeldungen:
- SD Card not found
- A hard error occured in the low level disl I/O Layer
Dann funktioniert es irgendwann wieder und eben wieder nicht.
Ich habe schon ein anderes SD-Card-Modul genommen und auch ein Kabelfehler kann ausgeschlossen werden.
Ebenfalls habe ich einen10µF-Kondensator zwischen Vdd und Vss gesetzt, so wie es auf der offiziellen Internetseite beschrieben wurde.
Vielleicht hat jemand noch eine Idee.
Gruß
Erik
Hallo Erik,
hast Du es schon mal mit einer anderen Karte probiert? Du hast hoffentlich ein SD-Kartenmodul ohne Levelshifter genommen?
Ich habe das Adafruit Modul wie hier verwendet: https://www.thebackshed.com/fo…ewTopic.php?TID=14417&P=1
Auf dem Modul scheinen separate Pullups verbaut zu sein - bislang hatte ich keine Probleme damit.
(Ich kann Dir erst wieder am Montag Abend antworten - bis dahin habe ich ab jetzt keinen Zugriff mehr auf das Forum...)
:)Franky
Alles anzeigenHallo Erik,
hast Du es schon mal mit einer anderen Karte probiert? Du hast hoffentlich ein SD-Kartenmodul ohne Levelshifter genommen?
Ich habe das Adafruit Modul wie hier verwendet: https://www.thebackshed.com/fo…ewTopic.php?TID=14417&P=1
Auf dem Modul scheinen separate Pullups verbaut zu sein - bislang hatte ich keine Probleme damit.
(Ich kann Dir erst wieder am Montag Abend antworten - bis dahin habe ich ab jetzt keinen Zugriff mehr auf das Forum...)
:)Franky
Danke! Gruss, Erik
Alles anzeigenIch habe mir den PicoMite selbst zusammengebaut und alles funktioniert soweit.
Na ja, bis auf eine kleine Sache: Der Zugriff auf die SD-Karte ist ein Glücksspiel.
Ich bekomme sehr oft die Fehlermeldungen:
- SD Card not found
- A hard error occured in the low level disl I/O Layer
Vielleicht hat jemand noch eine Idee.
Hi,
kannst Du ein Bild Deines Aufbau einstellen?
Es kann auch folegndes sein:
- Breadboard mit schlechten Kontakten (wenn Du aif einem Breadboard aufgebaut hast)
- wackeliger Kontakt im SPI Bereich (vom Pico zum SDCard-Slot)
dies habe ich bei Adaptern mit MicroSD-Slot gehabt, weil die nur eine Pinreihe haben
meine Adapter mit echter SDCard-Groesse haben 2 Pinreihen
evtl. zu lange Kabel zum SDCard Slot?
Richtigen Strom zugefuehrt 3.3V<->5V - je nach Adapter gibt es nur 5V oder beides,
denn wenn nur 3.3V auf den 5B Regulator kommen kann es zu wenig Strom geben
- weitere Komponenten installiert die zu viel Strom ziehen?
Manchmal kann es auch an der Formatierung der SD Karte liegen. Ich hatte schon einige Systeme die erst nach Nutzung des SD Formatters mit der SD Karte zusammen spielten.
Einfach mal ausprobieren.
Manchmal kann es auch an der Formatierung der SD Karte liegen. Ich hatte schon einige Systeme die erst nach Nutzung des SD Formatters mit der SD Karte zusammen spielten.
https://www.sdcard.org/downloads/formatter/
Einfach mal ausprobieren.
Danke für eure hilfreichen Kommentare, aber Franky hat den entscheidenden Hinweis gegeben. Ich habe ein SD-Karten-Modul mit integriertem Level-Shifter genutzt. Das war das Problem und ich Idiot hätte selbst drauf kommen müssen! Zur Lösung habe ich mir einfach eine Stiftleiste einen SD-Kartenadapter gelötet un die Anschlüsse direkt mit dem Board verbunden.
Gruß
Erik
Hi
Da es praktisch keine deutschsprachigen Foren zu PicoMite gibt,
darf man hier seine Fregen stellen und auch hoffen Antworten zu bekommen?
Da es praktisch keine deutschsprachigen Foren zu PicoMite gibt,
darf man hier seine Fregen stellen und auch hoffen Antworten zu bekommen?
Du darfst gerne Fragen stellen. Wenn ich oder andere eine Antwort haben (oder finden) werden wir sicherlich auch antworten oder Dir versuchen eine gefundene Loesung zu uebersetzen.
Hast Du schon mal die Uebersetzungfunktion von Google Chrome fuer Webseiten versucht?
Ich konnte schon einige polnische, spanische, russische und asiatische Seiten wenigstens (meisten auch mehr als erwartet) lesen um eine Loesung ausfindig zu machen
Ok, dann frage ich mal vorsichtig:
Gibt es eine Umkehrfunktion zu "bin$()"?
Mit bin$(12) wandle ich ich die 12 in den String "1100" um.
Diesen String möchte ich ich nun wieder in die Zahl 12 zurückverwandeln.
Val ("1100") ergibt leider 1100.
In der PicoMite-Anleitung steht zwar, daß val() das Präfix "&B" akzeptiert, aber dieses Präfix kann man doch nur bei Zahl-Konstanten anwenden? Wie/wo soll das hier eingesetzt werden?
Es gibt auch noch die Funktionen "bin2str$()" und "str2bin()", aber damit habe ich keine nachvollziehbaren Ergebnisse bekommen.
Val ("1100") ergibt leider 1100.
In der PicoMite-Anleitung steht zwar, daß val() das Präfix "&B" akzeptiert, aber dieses Präfix kann man doch nur bei Zahl-Konstanten anwenden? Wie/wo soll das hier eingesetzt werden?
Doch geht
Gerade mal ausprobiert:
> LIST
10 A=12
20 B$=Bin$(A)
30 Print A;" BINAER IST ";B$
40 C$="&B"+B$
50 D=Val(C$)
60 Print B$;" IN DEZIMAL IST ";D
70 Print "UND DIESES VAL AUCH ";Val("&B1100")
>
> RUN
12 BINAER IST 1100
1100 IN DEZIMAL IST 12
UND DIESES VAL AUCH 12
Das deutsche Handbuch (im Anhang) hast Du?
40 C$="&B"+B$
Du baust das Präfix in den String ein... darauf soll man kommen...
Ich werde es mal damit probieren.
Das deutsche Handbuch (im Anhang) hast Du?
Ja, aber das ist schon ziemlich veraltet.
Es gibt seit gestern eine neue Version V5.07.07 auf https://geoffg.net/picomite.html
guidol : Du weißt aber schon, dass Du auf die Zeilennummern verzichten kannst und das Programme dann schneller laufen sollen?
Alv : Mit https://www.deepl.com/translator kannst Du super alles in beliebige Sprachen überstetzen lassen... - leider kann man in der kostenlosen Version nicht das ganze Manual auf einmal übersetzen lassen...
:)Franky
guidol : Du weißt aber schon, dass Du auf die Zeilennummern verzichten kannst und das Programme dann schneller laufen sollen?
Nein, weiss ich nicht Allerdings bin ich mit GW-BASIC aufgewachsen und LIEBE Zeilennummern (und auch die RENUM-Funktion in GW-BASIC).
Deshalb schreibe - ich persoenlich - BASIC Programme old-Style mit Zeilennummern
@Aly Selbst im neuen Handbuch steht zu den Befehlen, die wir genutzt haben, nichts neueres drin.
Allerdings bin ich mit GW-BASIC aufgewachsen und LIEBE Zeilennummern
Bin ich zwar auch, LIEBE aber Turbo-Pascal. Und dieses BASIC ist so schön strukturiert - da braucht man (fast) kein Turbo-Pascal mehr...
Es gibt seit gestern eine neue Version V5.07.07 auf https://geoffg.net/picomite.html
Guter Hinweis, gleich mal gesaugt.
Ich hoffe, es gibt auch bald mal eine offizielle Version von PicoMite W.
Deshalb schreibe - ich persoenlich - BASIC Programme old-Style mit Zeilennummern
Immerhin erspart man sich damit das dauernde Neuausdenken von Labelnamen.
Was das Übersetzen des Manuals angeht: Die deutsche Version stammt auch von einem Übersetzungsprogramm.
Mein Englisch reicht noch aus, mich durch das Manual duchzukauen, aber wenn die Befehle da schon unklar beschrieben sind...
Ich überlege mir, eine deutschsprachige Befehlsreferenz mit Beispielen aus meinen Erfahrungen zu erstellen...
@Aly Selbst im neuen Handbuch steht zu den Befehlen, die wir genutzt haben, nichts neueres drin.
Haben sie jetzt endlich den DATA-Befehl aufgenommen?
Erklärung: DATA wird im Manual nirgends erwähnt.
Da man bei DIM gleich Werte zuweisen kann, dachte ich, das dient als Ersatz für DATA, bis ich dann bei anderweitige Suche über den READ-Befehl stolperte...
Ich hoffe, es gibt auch bald mal eine offizielle Version von PicoMite W.
Gibt's schon: https://geoffg.net/webmite.html
...auch für die VGA-Version gibt's eine neue Version: https://geoffg.net/picomitevga.html
Was das Übersetzen des Manuals angeht: Die deutsche Version stammt auch von einem Übersetzungsprogramm.
Nicht wirklich - das hat ein Bekannter (Stefan Hoch) von unserem FabLab übersetzt...
:)Franky
Nicht wirklich - das hat ein Bekannter (Stefan Hoch) von unserem FabLab übersetzt...
Dann hat er einiges zuviel übersetzt...
Gibt's schon: https://geoffg.net/webmite.html
Glatt übersehen.
Damit rückt ein weiteres Projekt in ev. machbare Nähe.
Kann man den Pico in einen USB-Speicherstick verwandeln, egal ob mit Onboard-USB-Anschluß oder externem Modul?
Der Grund für diese Idee: Ich besitze einen 3D-Drucker, der kann leider nur mit USB-Sticks befüttert werden.
Mit Raspberry Pi W unter Linux kann man einen USB-Speicherstick erstellen, der auch über WLan angesprochen werden kann. Leider habe ich das nie funktionstüchtig hinbekommen.
Ev. könnte man das nochmal mit Pico W und PicoMite probieren?
Erklärung: DATA wird im Manual nirgends erwähnt.
Da man bei DIM gleich Werte zuweisen kann, dachte ich, das dient als Ersatz für DATA, bis ich dann bei anderweitige Suche über den READ-Befehl stolperte...
DATA im neuen Handbuch:
ZitatAlles anzeigen
DATA constant[,constant]..Stores numerical and string constants to be accessed by READ.
In general string constants should be surrounded by double quotes ("). An
exception is when the string consists of just alphanumeric characters that do
not represent MMBasic keywords (such as THEN, WHILE, etc). In that
case quotes are not needed.
Numerical constants can also be expressions such as 5 * 60.
d.h. DATA funktioniert hier - in Verbindung mit READ und RESTORE - genauso wie in GW-BASIC
DATA ist nur fuer DATA-Lines und DIM ist fuer eine Dimensionierung von Variablen bzw. zuweisen geht dann so
DIM A(5)=3 oder DIM A(B)=C
Ansonsten die Nutzung von DATA, READ und RESTORE
10 RESTORE 100
20 READ A
30 IF A=-1 THEN GOTO 200
40 PRINT A
50 GOTO 20
100 DATA 1,2,3,4,5,6,7,8,9,-1
200 END