c - 如何通过C-Linux向串口发送AT命令

标签 c linux serial-port at-command

当然有termios.h,不过这里我说的是AT命令。我希望他们被处决

如何在 Linux 中通过 C 向串口发送 AT 命令并执行

最佳答案

看看这个简短的例子(它有效):

struct termios options;
int fd;

fd = open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY);

if (fd < 0)
{
    printf("Error opening serial port\n");
    exit(1);
}

bzero(&options, sizeof(options));
options.c_cflag = B9600 | CS8 | CLOCAL | CREAD | IGNPAR;
tcflush(fd, TCIFLUSH);
tcsetattr(fd, TCSANOW, &options);

if (write(fd, "ATZ\r", 4) < 4)
{
    printf("Write error - %s \n", strerror(errno));
    exit (1);
}

// read back for OK or KO then do your stuff...

关于c - 如何通过C-Linux向串口发送AT命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14933311/

相关文章:

c - 将结构体传递给线程的简单解释

c - 在无符号整数之间进行减法是否安全?

c - 矩阵段错误

linux - Centos - 静态 IP 需要服务网络重启 - 不重启

linux - 网络设备的 ACL

c - “BMSerial”未命名类型

java - 监控已经用java打开的串口

c++ - 使用 win32 API 写入串行端口 - 端口不会打开,直到我在其他地方打开它

c++ - Source Insight 3.5 显示 .c 文件的 "Parse Too complex"

c - 这些时钟之间有什么区别, `real-time clock` ,`wall clock` ,`system clock` ?