 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
alex-x
Anmeldungsdatum: 04.12.2006 Beiträge: 3
|
Verfasst am: 04.12.2006, 09:29 Titel: NewBi - Wie geht das jetzt |
|
|
Hallo,
ich bin neu hier sollte mit einem Freebasic-Progrämmchen was machen. Habe genau gar keine Ahnung was ich hier tun muß.
Folgendes:
Habe ein kleines Progrämmchen (kleine 2xEXE.File und 1x.bas-File) welches mir eine Robotik steuern soll um CD/DVD zu bedrucken.
Soweit so gut. Dies funktioniert scheinbar mit Freebasic.
Nun habe ich mir das Freebasic downgeloadet und installiert. Dies kann ich auch start. Dann kommt so eine Art "Dos-Eingabeaufforderung".
Was mache ich jetzt, damit ich auch meine Progrämmchen verwenden kann.
Diese Info ist dem Programm beigelgt gewesen:
-------Anbei finden Sie die Druckersteuerung als Source und kompiliert.
Diese Druckersteuerung arbeitet mit sämtlichen Labelprogrammen.
Ich selbst verwende CORELDRAW 10.
Da das Freewareprogramm FREEBASIC c.a. 45 Mbyte hat empfehle ich das
Runterladen von der Herstellerseite:
Official site: http://fbide.sourceforge.net or http://fbide.freebasic.net/
- Sourceforge project page: http://www.sourceforge.net/projects/fbide/
- FreeBasic official site: http://www.freebasic.net/
Die Druckprozedur ist folgende:
1. Start von TEAC-P55 CD-BATCH-PRINTING.exe
2. Eingabe der gewünschten Anzahl
3. Start des Labelprogramms
4. Auswahl des gewünschten Labels
5. Eingabe der gewünschten Anzahl im Druckerfenster
6. Nach dem erreichen der gewünschten Anzahl schliesst sich automatisch
das Fenster der Druckersteuerung
---------
Wenn mögich, bitte für Dummis erklären, da ich wircklich keine Ahnung habe.
Vielen Dank
Gruß
alex |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 04.12.2006, 15:44 Titel: |
|
|
Also derjenige hat irgendwie ziemlichen Mist geschrieben.
freeBASIC ist _keine_ Freeware, sondern steht unter der GPL (2?). Und die aktuelle FB-Version fasst auch keine 45 Megabyte.
Und dass das mit "Herstellerseite" nicht stimmen kann, müsste man mitbekommen haben, nachdem ich obiges mit der OS-Lizenz genannt habe.
Außerdem ist die Site der IDE keinesfalls die Site des Compilers.
Okay, net deine Schuld.
Du startest das vermeintliche freeBASIC (is' in Wirklichkeit nur 'ne Art Verknüpfung auf die Shell) und tippst dann ein
"dasprog.bas" ist natürlich durch den Namen der Datei zu ersetzen. (Bzw. dessen Pfad; je nachdem, wo du die Datei liegen hast.) _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 04.12.2006, 16:54 Titel: |
|
|
Mao hat Folgendes geschrieben: | Also derjenige hat irgendwie ziemlichen Mist geschrieben. | Stimmt!
@alex-x:
Da die nächsten Probleme gewissermaßen vorprogrammiert sind, vorweg noch ein Tipp:
Poste beim nächsten Mal bitte mit:
-deine Hardware(in groben Zügen..)
-dein OS(müßte Windows sein, wg. FBIde, nur welches..)
-deine FB-Version
-den Quell-Code des Programmes, zu dem du Fragen hast
Bis denn denn
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
alex-x
Anmeldungsdatum: 04.12.2006 Beiträge: 3
|
Verfasst am: 15.12.2006, 20:56 Titel: |
|
|
Hallo,
erstmal Danke an alle für die Beiträge.
>>>>freeBASIC ist _keine_ Freeware, sondern steht unter der GPL (2?).
OK, das Programm habe ich ja mittlerweile. Muß ich jetzt das irgendwo bezahlen oder kann man das irgenwie kaufen?? WO ??
Meine Hardware:
Schwer zu sagen. Ist so eine CD/DVD Kopier Roboter
Betriebssystem:
WinXP SP2
Da beim Start bei der EXE nicht viel passiert, öffnet sich zwar aber die kommunikation stimmt irgenwie nicht, habe ich versucht diese NEU zu machen mit dem Befehl "fbc DATEI.bas.
Da kommt die Fehlermeldung wie folgt:
Erro 3: Expected end of Line. Found "Goto"
Bei den Zeilen 23-71-99-109-122
Hier wäre der Quellcode der bas-Datei:
Code: | REM INITIALISE
DIM buffer AS STRING
DIM c AS INTEGER
f=FREEFILE
OPEN "COM1:9600,N,8,1,xon=on" AS #f
buffer="C" REM Reset des Roboters
GOSUB VISUOUT
GOSUB SEND
GOSUB CHECKROBOTER
GOSUB VISUALISATION
buffer="F" REM RESET FLAGS; SET INPUT-BIN TO 1
GOSUB VISUOUT
GOSUB SEND
GOSUB CHECKROBOTER
GOSUB VISUALISATION
INPUT "Please enter the number of print-cycles:", c
IF c=0 THEN
CLOSE #f
END
ELSE GOTO START1
END IF
START1:
buffer="2" REM OPEN PRINTER TRAY
GOSUB VISUOUT
GOSUB SEND
GOSUB CHECKROBOTER
GOSUB VISUALISATION
GOSUB CHECKPRINTEROPEN
GOSUB VISUALISATION REM SHOW BUFFER-CONTENT
COUNTERROUTINE:
FOR i=1 TO c
GOTO START2
COUNTER:
NEXT
buffer="1" REM CLOSE PRINTER TRAY
GOSUB VISUOUT REM SHOW DATA SENT TO ROBOTER
GOSUB SEND
GOSUB CHECKROBOTER
GOSUB ASKPRINTER
GOSUB VISUALISATION
PRINT "Job finished"
SLEEP 5000
CLOSE #f
END
START2:
PRINT "PRINT-CYCLE:",i REM INFORM ABOUT CYCLE #
buffer="I" REM GET CD FROM INPUT BIN AND CHARGE INTO PRINTER TRAY
GOSUB VISUOUT
GOSUB SEND
GOSUB CHECKROBOTER
GOSUB VISUALISATION
buffer="1" REM CLOSE PRINTER TRAY
GOSUB VISUOUT
GOSUB SEND
GOSUB CHECKROBOTER
GOSUB CHECKPRINTERCHARGED
GOSUB VISUALISATION
IF i = 1 THEN REM The 1st CD must not call the CD-NEXT macro !
GOTO CONTIN
ELSE GOSUB PRINTNEXT
END IF
CONTIN:
GOSUB CHECKPRINTEROPEN
GOSUB VISUALISATION
buffer="A" REM TAKE CD FROM PRINTER TRAY AND PUT INTO OUTPUT BIN
GOSUB VISUOUT
GOSUB SEND
GOSUB CHECKROBOTER
GOSUB VISUALISATION
GOTO COUNTER
REM SUBROUTINES
SEND:
PUT #f, , buffer
RETURN
CHECKPRINTEROPEN:
buffer="3"
GOSUB VISUOUT
LOOPOPEN:
GOSUB ASKPRINTER
IF buffer="C2" THEN
RETURN
ELSE GOTO LOOPOPEN
END IF
CHECKPRINTERCHARGED:
buffer="3"
GOSUB VISUOUT
LOOPCHARGED:
GOSUB ASKPRINTER
IF buffer="C4" THEN
RETURN
ELSE GOTO LOOPCHARGED
END IF
ASKPRINTER:
buffer="3 "
PUT #f, , buffer
GET #f, , buffer
RETURN
CHECKROBOTER:
GET #f, , buffer
IF buffer="X" THEN
RETURN
ELSE GOTO CHECKROBOTER
END IF
VISUALISATION:
PRINT "Answer from Roboter", buffer
RETURN
VISUOUT:
PRINT "SEND to Roboter", buffer
RETURN
PRINTNEXT: REM CALL PRINT_NEXT_CD macro
SHELL "c:\PrintNextCD\PRINT_NEXT_CD.exe"
RETURN |
Kann hier jemand was damit anfangen?
Vielen Dank für Euere Hilfe.
Schöne Grüße.
Alex
Editiert durch Moderator: Code-Tags zur besseren Übersichtlichkeit hinzugefügt. (Sebastian) |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 15.12.2006, 21:04 Titel: |
|
|
Hi.
Die GPL ist eine Open-Source-Lizenz und die Version 2 ist nichts anderes, als die neuer Fassung.
Das heißt, FB ist kostenlos und die Quellcodes von FB können eingesehen werden.
Zweite Sache: Solche langen Codes bitte immer in die [code]-Box einfassen. ;
Wirkt übersichtlicher und erleichtert das Lesen, genauso wie Einrückungen im Quelltext. Aber das Programm is' ja nicht von dir, deswegen will ich dich da mal nicht so kritisieren...
Oder, zweite Möglichkeit, bei freeBASICnoPaste uploaden und einen Link posten. Bei FBNP gibt's nämlich gleich mit Syntax-Highlighting mit Verlinkungen auf den jeweiligen Befehl, aber das nur so am Rande...
Tut mir jetzt eigentlich leid, dass ich nix konkretes zu deinem Problem sagen konnte.  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 15.12.2006, 23:04 Titel: |
|
|
hi alex-x,
.. du hast immer noch nicht gesagt, welche FB-Version du hast
..ist aber auch egal..
Mal abgesehen davon, daß du zuviele und überhaupt GoTo's verwendest, scheint dein Problem
ein ganz anderes zu sein. Ähnliche Stellen in deinem Programm mußt du selbst anpassen: Code: | ..
IF c=0 THEN
CLOSE #f
END
ELSE
GOTO START1
END IF
.. | ..sollte aber auch in der Befehlsreferenz erläutert werden
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
alex-x
Anmeldungsdatum: 04.12.2006 Beiträge: 3
|
Verfasst am: 16.12.2006, 08:38 Titel: |
|
|
Hallo,
meine FB-Version ist: FreeBASIC-v0.16b-win32
Was meinst Du mit selber anpassen?
Die .bas sollte eigentlich passen und die EXE hat man mir ja mitgegeben. Wollte nur mal probieren die EXE "selbst´" zu machen. Dachte, vielleicht muss die "vor Ort" gemacht werden...
Habe aber jetzt ein mögliches COMunikations Problem gesehen.
Meine Roboter ist auf COM2 angeschlossen.
Hier wird versucht auf COM1 zu zugreifen.
Jetzt könnte ich bei der .bas einfach COM2 schreiben und die .EXE machen - aber das geht ja wegen den "komischen" Fehlern nicht. Da ist es wahrscheinlich einfacher den Robi auf COM1 zu schalten....
Könnte es sein, das "fbc DATEI.bas" die Fehler macht weil eigentlich kein Robi angeschlossen (anderer COM) ist?
Na ja, das werde ich dann mal probieren, sobeld der Robi mal pause macht.
Melde mich auf jeden Fall wieder.
Vielen Dank für Euere Bemühungen.
lg
alex |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 16.12.2006, 18:56 Titel: |
|
|
alex-x hat Folgendes geschrieben: | Was meinst Du mit selber anpassen? | Es ist ein Fehler, wenn in der Else-Zeile noch andere Anweisungen stehen
und so dachte ich, wenn ich eine typische Fehlerquelle kopiere, um beispielhaft zu zeigen, was falsch ist, findest du die anderen Stellen selber
M.a.W(frei nach Asterix):*Dumüssenselberdiestellensuchendieähnlichsindunddeinenquellcodeselberberichtigen*
alex-x hat Folgendes geschrieben: | Könnte es sein, das "fbc DATEI.bas" die Fehler macht weil eigentlich kein Robi angeschlossen (anderer COM) ist? | ..eigentlich nicht, denn wenn laut Programm Com1 angesprochen werden soll, prüft der Compiler lediglich, ob das richtig geschrieben ist.
Wenn dort kein Gerät ist, wirste das dann beim Programmlauf merken..
(Vllt. müssteste da eine Abfrage einbauen..)
Da ich das Programm aber eher in die Abteilung 'Verdauungsendprodukt' einordne, sollteste dir besser ne verständliche Eigenproduktion schreiben..
..und das mitgelieferte Programm einfach vergessen
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|