CMS ERROR:在c程序中使用AT命令发送SMS时缓冲区溢出

时间:2017-07-18 11:39:39

标签: c linux sms at-command

我正在尝试使用c程序中的命令发送短信。我有时能成功发送短信。然而,有时我将无法发送短信。在这种情况下,我将CMS ERROR作为缓冲区溢出。这是随机的情况。

任何人都可以帮助解决这个问题。缓冲区溢出指示什么?我们应该如何调试此问题?这是随机发生的。有时在测试时,在所有情况下都会成功发送短信。但有时我们会得到这个错误。

我的代码段如下:

int fd_at;
char at_cmd[25];
char *number = "+91xxxxxxxxxx";
fd_at = open("/dev/ttyUSB2", O_RDWR | O_NOCTTY);
sprintf(at_cmd, "AT+CMGF=1\r");
ret = write(fd_at, at_cmd, strlen(at_cmd));
sprintf(at_cmd, "AT+CMGS=\"%s\"\r", number);
ret = write(fd_at, at_cmd, strlen(at_cmd));
ret = write(fd_at, "Hello\032", 6);
close(fd_at);

在所有情况下,我都检查了write的返回值。在所有情况下,它都显示了所需的价值。发送除此之外的短信是否还需要其他东西。

请帮忙。

我得到的错误如下。

+ CMS ERROR:缓冲区溢出

由于

0 个答案:

没有答案