串口输入/输出不正确

时间:2013-08-07 13:25:20

标签: c++ serial-port

我正在尝试激活Beaglebone黑色的串行端口并将TX连接到RX。我写了一个测试程序。在其中,根据我在how to open, read, and write from serial port in C找到的帮助,我将串口设置为1152000波特,没有奇偶校验。以下是我的主要功能:

int main(void)
{
    char *portname = "/dev/ttyO4";

    int fd = open (portname, O_RDWR | O_NOCTTY | O_SYNC);
    if (fd < 0)
    {
        printf ("error %d opening %s: %s", errno, portname, strerror (errno));
        return 0;
    }

    set_interface_attribs (fd, BAUD_RATE, 0);
    set_blocking (fd, 0);

    while (true)
    {
        write (fd, "Hello!\n", 7);
        char buf [100];
        int n = read (fd, buf, sizeof buf);
        std::cout << buf;
        std::cout.flush();
        sleep(1);
    }

    return 0;
}

当我运行它时,我在串口RX上读了一些东西,但它不是你好,而是“ù¶”。有人能告诉我为什么会这样吗??

亲切的问候

山茱萸

0 个答案:

没有答案