当前位置:   article > 正文

C程序实现AT命令获取_cyuyan at指令怎么写

cyuyan at指令怎么写

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <fcntl.h>
#include <termios.h>
#include <errno.h>
#include <pthread.h>
#include <string.h>
#include<stdbool.h>
#include <termios.h>

int main(){
int fd;
struct termios options;

    /* open the port */
    fd = open("/dev/ttyUSB3", O_RDWR | O_NOCTTY | O_NDELAY);
    if (fd == -1)
    { 
            /* Could not open the port */
            fprintf(stderr, "open_port: Unable to open /dev/ttyS1 - %s\n",strerror(errno));
    }else{
            printf("/dev/ttyUSB3 port opened\n");
    }

    fcntl(fd, F_SETFL, 0);

    /* get the current options */
    tcgetattr(fd, &options);

    /* set raw input, 1 second timeout */
    options.c_cflag |= (CLOCAL | CREAD);
    options.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG);
    options.c_oflag &= ~OPOST;
    options.c_cc[VMIN] = 0;
    options.c_cc[VTIME] = 10;

    /* set the options */
    tcsetattr(fd, TCSANOW, &options);
    char buffer[400]; /* Input buffer */
    char *bufptr; /* Current char in buffer */
    int nbytes; /* Number of bytes read */
    int tries; /* Number of tries so far */
    for (tries = 0; tries < 1; tries ++)
    {
            /* send an AT command*/
            //if (write(fd, "AT+CMGL=\"ALL\"\r", strlen("AT+CMGL=\"ALL\"\r")) < 3)
            if (write(fd, "AT+CIMI\r", strlen("AT+CIMI\r")) < 3)
            {
                    printf("command sent failed!\n");
                    continue;
            }

            /* read characters into our string buffer*/
            bufptr = buffer;
            nbytes = read(fd, bufptr, buffer + sizeof(buffer) - bufptr - 1);
            printf("%s\n",bufptr);

            char *p;
            p = strstr(buffer, "tin");
            printf("%s",p);
            p = strstr(buffer, "server");
            if(p == NULL) 
            {
                    printf("not from server\n");
            }
            *bufptr = '\0';
    }
    return 0;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54

}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/410590?site
推荐阅读
相关标签
  

闽ICP备14008679号