Чтение последовательных данных из C (OSX / dev / tty)

Я пытаюсь прочитать данные со сканера штрих-кода Bluetooth (KDC300) с использованием C. Вот код, который у меня есть, и программа успешно устанавливает соединение Bluetooth со сканером, но при сканировании штрих-кода вход не отображается на экран (в конце концов, с данными будет сделано больше, но мы должны сначала заставить их работать, верно).

Вот программа:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <termios.h>
#include <sys/ioctl.h>

int main (int argc, const char * argv[]) {

    // define vars
    int STOP = 0;
    //char buf[255];

    if(argv[1])
    {
        int fd = open("/dev/tty.KDC1", O_RDONLY);
        if(fd == -1)
        {
            printf("%s", strcat("Unable to open /dev/tty.", argv[1]));
        }

        int res;
        while(STOP == 0)
        {
            while((res = read(fd,buf,255)) == 0);
            {
                if(res > 0)
                {
                    buf[res]=0;
                    printf("%s:%d\n", buf, res);
                    if(buf[sizeof(buf)]=='\n') break;   
                }
            }
        }
    }

    return 0;
}

Если у кого-то есть какие-либо идеи, я пока в замешательстве. Если это поможет, я могу бежатьscreen /dev/tty.KDC1 и любые штрих-коды, отсканированные на сканере, появляются в терминале, я просто не могу ничего сделать с данными.

Джад

Ответы на вопрос(4)

Ваш ответ на вопрос