1

こんにちは、次のプログラムを実行しようとするたびに:

L=-1
OPEN "tty.usbserial-FTG7QLFS:300,N,8,1,CS0,DS" FOR OUTPUT AS #1
WHILE L
    J=63
    MENU:   PRINT
        PRINT
        PRINT
        PRINT
        PRINT
        PRINT

    PRINT "WAITING FOR KEYSTROKE COMMAND"
        PRINT "TYPE:"
        PRINT "  C-CLOSE SHUTTER"
        PRINT "  O-OPEN SHUTTER"
        PRINT "  R-RESET CONTROL"
        PRINT "  Q-TERMINATE PROGRAM"
        PRINT
        PRINT

    START:
    A$ = INKEY$
    IF A$ = "O" THEN
        PRINT #1,CHR$(J+1);
        PRINT "SHUTTER OPEN COMMAND SENT"
        GOSUB TIMEOUT
        GOTO MENU
        ELSEIF A$ = "C" THEN
            PRINT #1,CHR$(J+2);
            PRINT "SHUTTER CLOSE COMMAND SENT"
            GOSUB TIMEOUT
            GOTO MENU
        ELSEIF A$ = "R" THE
            PRINT #1,CHR$(J+3);
            PRINT "CONTROL RESET COMMAND SENT"
            GOSUB TIMEOUT
            GOTO MENU
        ELSEIF A$ = "Q" THEN
            L = 0
            PRINT "PROGRAM TERMINATED"
        ELSE GOTO START
    END IF
WEND
END
TIMEOUT:    FOR I=1 TO 100:NEXT I
             CLS 0
             RETURN

次のエラー「構文エラー、6行目にシンボルがありません」が表示されますが、6行目にはprintステートメントしかないため、何が欠けているのかわかりません。Mac OS X で Chipmunk Basic を使用してプログラムを実行しています。

ありがとう

4

1 に答える 1

1

私は推測する

OPEN "tty.usbserial-FTG7QLFS:300,N,8,1,CS0,DS" AS#1

ファイル アクセス モードがありません。おそらく、コンパイラはそのようなトークンを探しても成功せず、次の行であきらめます。

Chipmunk BASIC のドキュメントには次のように書かれています。

open STRINGEXPR for { input|output|append } as # FNUM
-- or --
open STRINGEXPR for random as # FNUM len = VAL

http://anoved.net/cbasdox/statements.html#openを参照してください。

Chipmunk BASIC についてはよくわかりませんが、他の BASIC 方言 (QBasic、FreeBASIC、VisualBASIC Classic など) でも、ファイルを開くアクションを指定する必要があります。

例 FreeBASIC:

OPEN SomeFile FOR INPUT AS #1     ' input (read-only)
OPEN OtherFile FOR OUTPUT AS #2   ' write (replace existing file)
OPEN FooFile FOR BINARY AS #3     ' binary (read + write)

fopenCっぽい言語で使用する場合は、"r"、"r+"、... を指定するようなものです。

于 2013-06-14T09:04:17.697 に答える