Antworten

Der Beitrag verursachte die folgenden Fehler, die behoben werden müssen:
Achtung: In diesem Thema wurde seit 120 Tagen nichts mehr geschrieben.
Wenn Sie nicht absolut sicher sind, dass Sie hier antworten möchten, starten Sie ein neues Thema.
Dateianhänge und weitere Optionen
Anhänge:
Ziehen Sie Ihre Dateien hierhin, oder benutzen Sie den Button, um Dateien hinzuzufügen.
Erlaubte Dateitypen: doc, gif, jpg, mpg, pdf, png, txt, zip, mp4, 7z
Einschränkungen: 8 pro Beitrag (8 verbleibend), maximale Gesamtgröße 87,89 MB, maximale Individualgröße 1 MB
Verifizierung:
Bitte lassen Sie dieses Feld leer:
Geben Sie die Buchstaben aus dem Bild ein
Buchstaben anhören / Neues Bild laden

Geben Sie die Buchstaben aus dem Bild ein:

Tastenkürzel: Alt+S Beitrag schreiben oder Alt+P für Vorschau

Zusammenfassung

Autor picass
 - 02.07.2022, 14:11:22 CEST
Zitat von: Peter am 02.07.2022, 10:51:55 CEST......denn nun installiert ? Die hier :https://www.mikroe.com/mikrobasic-pic
Jepp, genau die: mikroBasic v7.60
Grüße, picass
Autor PICkel
 - 02.07.2022, 11:59:19 CEST
Also, ich habe das mal ausprobiert was genau mit der 2K-Grenze beim mikroBASIC ist, weil es mich selber interessiert hat. Also Dongle abgesteckt und ein Programm mit nur NOPs für PIC18 geschrieben.
Ergebnis:
- Bis 2038 NOPs lässt sich das Proramm kompilieren.
- das sind 4106 Byte ROM
- Das ASM- File ist 61 kByte (!) groß, da sind aber auch viele Leerzeichen und Kommentare drin
- das HEX- File ist 11,3 KB groß, da sind auch Adressen, Prüfsummen und Zeilenumbrüche dabei (Intel HEX-Format)

Fazit:
Da ein Befehl beim PIC18 2 Byte ROM belegt, liegt die Grenze der Demo- Version bei 2048 Befehlen.
Damit kann man schon etliches anfangen.

Edit: Kompilieren lässt sich übrigens alles, erst der Linker merkt, dass das Prog. zu groß ist!

Übrigens, nur NOPs, so etwas hätte ich mir im Berufsleben manchmal gewünscht. Aktivität vortäuschen, nichts fertigbringen und doch sind alle damit zufrieden.  :))

Gruß
PICkel


Autor Peter
 - 02.07.2022, 10:51:55 CEST
Nein da gibt es auch keinen Hinweis wegen Kosten. Wenn du ein Programm compilierst und du
über die 2KByte Grenze kommst, dann erscheint der Hinweis Demo Limit erreicht.
Sonst ist sie voll einsatz fähig. Welche version hast du denn nun installiert ?
Die hier :https://www.mikroe.com/mikrobasic-pic
Autor picass
 - 02.07.2022, 10:43:10 CEST
Es gibt/gab doch Möglichkeiten für Basic-Varianten. Eine kurze Umschau förderte zutage, dass Microchip himself da zwei Versionen anbot: PIC Basic Pro einmal in einer ,,Silver" und einmal in einer ,,Gold"-Version. Letztere wurde allerdings abgekündigt. Auf jeden Fall war bei PIC18Fxxx-Typen Schluss, weiter nach oben ging es nicht. Die Gold-Version hatte ca  250 Dollar gekostet, die Silberne ca. 100, die ging aber evtl. nur bis PIC16xxx.
Dann gibt es noch Proton, dessen Name inzwischen ein klein wenig auf "Positron" abgewandelt wurde. Das wird an verschiedenen Stellen gelobt, es gibt auch eine noch funktionierende Kommunity, und – wenn ich beim raschen Hin- u Her-Switchen von Links das nicht verwechselt haben sollte – es gibt bei Ebay in einer Auktion für beide Lizenzen – also 8 bit und mehr-als–8bit -  für 47 Pfund. In deren Forum berichten User, dass ihnen der Umstieg von PicBascicPro auf Proton Vorteile gebracht hätte.

Und dann halt das Microbasic von Mikroelektronika / http://www.mikroe.com. Das ist eine Firma aus Serbien, welche auf ihrer Homepage auf beste, aktuelle Verbindungen zu bekannten Firmen hinweist und sich eines guten Kontaktes zu Microchip rühmt. Da werden PIC von 8 bis 32-bit unterstützt. Nur: das kostet, eine Lizenz alleine fast 300 €, der Preis, den ich neulich nannte, war ohne Mehrwertsteuer. Im Moment soll es eine ,,Sommeraktion 20% off" geben. Auf jeden Fall scheint das eine hoch professionelle Firma zu sein, welche u.a. auch zahlreiche kleine Boards anbietet, z.B. auch mit Sensoren der Firma Sensirion - allerdings nicht mit analogem Ausgang. :(


Habe gestern Nachmittag – um irgendwie weiter zu kommen – die am Vortag downgeladene Version von Microbasic installiert. Die ist ohne Registrierung und sogar ohne Inet-Verbindung während der Install und der Erst-Inbetriebnahme lauffähig, von Kosten war auffällig noch nicht die Rede. Überhaupt sind die Einsatzbedingungen dieser Testversion auf deren Homepage mindestens gut versteckt. Sie ist ja wohl auf 2k beschränkt, wobei ich noch prüfen muss, ob es sich sicher um das Hex-File handelt, wie oben schon mal genannt wurde.
Grüße, picass
Autor pic18
 - 30.06.2022, 23:29:27 CEST
also Pascal weiß nicht, ob die Sprache noch aktuell ist. Ich hatte vor 25 Jahren Pascal programmiert. Ist glaube der Nachfolger ist  inzwischen Delphi. Ich programmiere eigentlich immer in C, Zeitkritische Routinen schreibe ich in Assembler. Der Linker bastelt dann das ganze zusammen.
Autor Peter
 - 30.06.2022, 20:21:53 CEST
Zitat von: vloki am 30.06.2022, 19:49:44 CESTHey, das ist doch Nicos Board da in dem Great Cows Basic Video!
Wo ist er eigentlich abgeblieben ?  news
Autor vloki
 - 30.06.2022, 19:54:46 CEST
Zitat von: picass am 30.06.2022, 15:35:05 CESTNatürlich würde ich am liebsten auf ein kostenloses Prog zugreifen oder aber eines, welches nicht gleich mehrere Hundert Euro verschlingt.
Wenn deine "C" Abneigung nicht wäre, könntest du einfach den "C" Compiler des PIC Herstellers nehmen, der wie praktisch alle Hersteller kostenlose Versionen eines C-Compilers zur Verfügung stellt ;-)
Autor vloki
 - 30.06.2022, 19:49:44 CEST
Hey, das ist doch Nicos Board da in dem Great Cows Basic Video!
Autor Peter
 - 30.06.2022, 16:56:02 CEST
Ja so gross sind die Unterschiede zwischen Basic und Pascal nicht. Nur wenn ich das Forum sehe, dann tut
sich nicht mehr viel im Pascal Forum. Ich weis auch nicht ob es viele Beispiele noch in dieser Sprache gibt.
Kenne mich in Pascal auch nicht aus und will auch nichts falsches sagen. Daher probier beide Sprachen aus
und entscheide dann was du nehmen willst.
Was es noch gibt ist Creat Cow Basic.
Ist sowie ich es sehe kostenlos.
 
Autor picass
 - 30.06.2022, 15:35:05 CEST
Das sind ja mal aufmunternde Worte, das mit den Rechenmöglichkeiten.
Natürlich würde ich am liebsten auf ein kostenloses Prog zugreifen oder aber eines, welches nicht gleich mehrere Hundert Euro verschlingt. Aber außer den Progs von der Firma mikroe sehe ich da noch nichts.
Wenn die beiden dort angebotenen Versionen von microBasic und microPascal - so wie es optisch erscheint - nahezu identisch sind, dann würde ich aus alter Anhänglichkeit und weil das so schön zu lesen ist, eher zu der Pascal Version neigen. Große Unterschiede im Aufbau der beiden Programme erwarte ich da nicht, wer also das eine kann, der kann auch....  Werde in den nächsten Tagen einen Versuch wagen.
Grüße, picass
Autor vloki
 - 30.06.2022, 13:17:01 CEST
Zitat von: picass am 29.06.2022, 17:20:26 CESTKann man in solcher Hochsprache da mal den Kampf mit jedem Bit vergessen und die benötigten Multiplikationen usw. ausführen, indem man die Zahlen eingibt und dann halt schlicht einen Befehl dazu? Es handelt sich allerdings um Zahlen wie 0,2345 oder -237,45 oder z.B. auch den Logarithmus zur Basis 10.
Jep, das wird bei allen Hochsprachen so sein.
Tatsächlich wird die entsprechende Zeile sogar überall fast gleich ausschauen,
weil die Namen der Funktionen praktisch identisch sind.
Autor Peter
 - 29.06.2022, 19:58:00 CEST
Also da hast du aber einiges durcheinander gebracht.
Der Link den du gepostest hast ist für ARM Controllern nicht für PICs. Der richtige Link
wär dieser: Programmer
Damit kannst du Hardware Debuggen mit den PICs die der Programmer unterstüzt. Sind zimlich viele.
Software Debuggen machst du im Compiler dafür brauchst du den Programmer nicht. Du kannst im Debug Modus
einzeln durch dein Programm gehen und dir die Inhalte von Variablen anzeigen lassen. Aber das kannst du alles
selber ausprobieren wenn du dir die Demo Version installierst. Wie schon geschrieben für Software Debuggen brachst
du keinen Programmer.
Das Beispiel welches du als Textdatei hochgeladen hast, ist nicht für MikroBasic. Da ist was falsch gelaufen.
Hier mal ein Beispiel für eine BlinkLED.

program LED_Blinking

main:
  TRISA = 0         ' set direction to be output
  TRISB = 0         ' set direction to be output
  TRISC = 0         ' set direction to be output

  while TRUE
    LATA = 0x00     ' Turn OFF LEDs on PORTA
    LATB = 0x00     ' Turn OFF LEDs on PORTB
    LATC = 0x00     ' Turn OFF LEDs on PORTC
    
    Delay_ms(1000)  ' 1 second delay

    LATA = 0xFF     ' Turn ON LEDs on PORTA
    LATB = 0xFF     ' Turn ON LEDs on PORTB
    LATC = 0xFF     ' Turn ON LEDs on PORTC
    
    Delay_ms(1000)  ' 1 second delay
  wend              ' Endless loop
end.

Für Mathematische rechnungen gibt es Befehle.
Z.B log10 ist der Logarythmus zur Basis10. In MikroBasic a=log10(233) ergibt für a=2,367
Dann gibt es noch SIN, TAN, EXP usw. Die komplette Liste bekommst du in der Hilfe vom Compiler.
Sag mal ein Konkretes Beispiel was du rechnen willst dann kann ich es mal in MikroBasic übersetzten.
Wenn du mal auf Video Tutorial gehst, findest du auch ein Video dazu wie der Hardware Debugger funktioniert.
Autor picass
 - 29.06.2022, 17:20:26 CEST
Da kommen soviele Argumente angerollt, dass es schwierig wird, die alle zu berücksichtigen.
Zunächst habe ich nochmal auf der HP der Anbieterfirma für microBasic und microPascal nachgeschaut. Dabei scheinen die dortigen Werbeargumente zwei nahezu gleichartige Produkte zu beschreiben. Unterstützung für alles, und - ach ja - alles ist möglich.
Schaut man sonst rum, scheint Pascal heutzutage wenig bis kaum verbreitet zu sein, bei Basic sieht es anscheinend kaum anders aus. Kann mich irren, aber der erste Eindruck ist so.
Dort ist eine Art Vergleich für "C", Basic u. Pascal angeboten, indem ein vermeintlich einfaches Programm - mal wieder led-blinken - ausgeführt ist. Habe mit hoffentlich freundlicher Genehmigung dieser Firma Auszüge aus deren Vergleichs-Listening mal in ein Textdokument überführt, siehe unten. Das Beispiel für einen 8-bit-PIC ist werkwürdig kompliziert ausgefallen, zwei weitere für dSP-PIC und einen 24-bitter PIC dann wieder einfacher. Eines kann man wohl sagen: die Pascal-Version liest sich am besten, die Übersichtlichkeit ist nach meinem Geschmack am größten.

Es gibt evtl. ein starkes Argument im Hintergrund: wenn ich das richtig verstanden habe, dann kann man mit Basic und dem angebotenen Programmierer das machen, was bei Microchip nur mit 1.800 €-Geräten klappt: Hardware-Debugging, sogar im Einzelschritt-Modus. Schaut euch bitte mal diesen Programmer für knapp 80 € an, das wäre natürlich ein Hammer.
https://www.mikroe.com/mikrobasic-arm

Ein anderes, für mich wichtiges Argument lauert im Hintergrund. Da geniere ich mich zunächst, die Frage überhaupt zu stellen. Bitte habt Nachsicht, meine Pascal-Klamotte ist Jahrzehnte her und dort schubsten wir nur ein "X" in einem virtuellen Labyrinth rum und Rechnen fand nicht statt - so meine dustere Erinnerung.
Also, zwecks der Abarbeitung von Formeln in meinem Hygro-Projekt: Kann man in solcher Hochsprache da mal den Kampf mit jedem Bit vergessen und die benötigten Multiplikationen usw. ausführen, indem man die Zahlen eingibt und dann halt schlicht einen Befehl dazu? Es handelt sich allerdings um Zahlen wie 0,2345 oder -237,45 oder z.B. auch den Logarithmus zur Basis 10.

Wären solche Rechnungen "einfach" möglich und die Arbeit findet in Bibliotheken und beim Assemblieren statt, dann wäre das ein starker Anreiz für mich.
Grüße, picass
Autor vloki
 - 29.06.2022, 10:17:14 CEST
Ups, war für PC Software wohl eher "Delphi" (Pascal) von Borland und dann
recht schneller Umstieg auf C++ Builder von Borland.

Egal - inzwischen nur noch KOSTNIX, am Besten ohne jegliches Registrierungsgeraffel
und läuft auf mindestens auf Win, Mac und Linux ;-)

Finde ich im Bildungsbereich auch sehr wichtig, wenn auf kostenpflichtige Software
möglichst komplett zu verzichten. Beim späteren Einstieg in Berufsleben muss man sich ja
meist eh in neue Software einarbeiten. Also warum vorher unnötig über irgendwelche
finanziellen Hürden springen.
Autor vloki
 - 29.06.2022, 09:21:20 CEST
Zitat von: picass am 28.06.2022, 18:30:24 CEST"C" ist mir viel zu kryptisch, da traue ich mich nicht ran
So groß sind die Unterschiede zwischen C und Pascal auch wieder nicht.
Als mir C nach Pascal zum ersten Mal im Studium  begegnet ist, war das erst mal nicht so viel anders.

Pascal habe ich nach einer recht kurzen Zeit mit dem Borland Builder für PC Programme eigentlich nie
mehr benutzt. Im Bereich der von dir verwendeten PICs ist "C" quasi der Standard.
Wird am besten von allen Controller Herstellern unterstützt und hat so auch die größte "Community".

MicroPython oder CircuitPython ist nur was für größere Kaliber, da auf dem Controller Python
laufen muss, das den Programmcode interpretiert. (Der Code wird nicht vorher kompiliert und
in Maschinencode übersetzt)