加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何在codeys中调用gsm调制解调器的“at命令”?不是标准的send_

发布时间:2020-12-16 09:10:02 所属栏目:百科 来源:网络整理
导读:我有一个gsm-modem和plc,plc看到一个调制解调器(我使用* .lib和功能块“openPort”),但我不明白如何在调制解调器中写入“at命令”,例如“ate0” . 解决方法 首先,为了增加您对AT命令的理解,请阅读V. 250 specification.这将使你成为一名AT指挥专家. 然后对于
我有一个gsm-modem和plc,plc看到一个调制解调器(我使用* .lib和功能块“openPort”),但我不明白如何在调制解调器中写入“at命令”,例如“ate0” .

解决方法

首先,为了增加您对AT命令的理解,请阅读V. 250 specification.这将使你成为一名AT指挥专家.

然后对于实际的实现,我不知道codesys,所以以下是处理AT命令应该具有的结构的伪代码:

the_modem = openPort();
...
// start sending ATE0
writePort(the_modem,"ATE0r");
do {
    line = readLinePort(the_modem);
} while (! is_final_result_code(line))
// Sending of ATE0 command finished (successfully or not)
...
closePort(the_modem);

无论你做什么,永远不要使用延迟,睡眠或类似代替等待最终结果代码.您可以查看atinout的代码作为is_final_result_code函数的示例(您还可以在ST-Ericsson’s U300 RIL中与isFinalResponseError和isFinalResponseSuccess进行比较,但请注意CONNECT不是最终结果代码,它是中间结果代码,因此名称isFinalResponseSuccess是不是100%正确).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读