首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有换行符的Qbasic阅读comport回复

没有换行符的Qbasic阅读comport回复
EN

Stack Overflow用户
提问于 2015-05-13 07:05:11
回答 2查看 131关注 0票数 1

我正在使用QBasic阅读设备回复。问题是qbasic在输出数据之前等待换行符或CHR$(13),但是我的设备应答没有CHR$(13) (例如:"OK"),所以qbasic挂起等待换行符。

我如何才能得到回复或阅读报告,即使没有新行?这个是可能的吗?

编辑

代码语言:javascript
复制
    CLS
     OPEN "com2:9600,n,8,1,BIN,cs,ds,rs" FOR RANDOM AS #1
    param$ ="Some data"
     PRINT #1, param$
      DO WHILE b$ <> "*CLOSE*"
       INPUT #1, b$
       PRINT b$
     LOOP

这是我的代码,但在该代码中,它不能读取*CLOSE*,因为在*CLOSE*之后没有换行符。

另一件事是设备延迟了5秒才回复。

EN

回答 2

Stack Overflow用户

发布于 2015-05-13 12:37:20

你能举个你的代码的例子吗?我怀疑您正在使用INPUT#n,但也许您应该使用INPUT$(x)。我找到了一个这里的例子,参见下面的代码

代码语言:javascript
复制
a$ = ""
DO
IF LOC(1) THEN a$ = a$ + INPUT$(1, 1)
LOOP UNTIL INSTR(a$, "OK")
票数 1
EN

Stack Overflow用户

发布于 2016-08-27 04:21:10

此代码示例演示如何在Basic中访问调制解调器。

代码语言:javascript
复制
REM Reset modem source:
CLS
OPEN "COM2:9600,N,8,1,BIN,CS,DS,RS" FOR RANDOM AS #1
Reset$ = "ATZ" + CHR$(13) + CHR$(10)
PRINT #1, Reset$;
Inp$ = ""
DO
    IF LOC(1) THEN
        Inp$ = Inp$ + INPUT$(1, 1)
        IF INSTR(Inp$, "OK") THEN
            PRINT "Modem reset."
            EXIT DO
        END IF
    END IF
LOOP
END
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30207874

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档