Готовые QNX драйверы 

§2. Работа с драйвером

Работать с драйвером предельно просто:

#include ‹stdio.h›
#include ‹errno.h›
#include ‹S_libdrvio.h›

int main(int argc, char* argv[]){
 char* path_drv = "/dev/PCL-818H";
 drv_t drv;
 float data;

 /* 1 - Открываем драйвер /
 if ((drv = drv_open(path_drv)) == NULL) {
  fprintf(stderr, "Can't open driver (%s)\n", 
          strerror(errno));
  exit(1);
 }

 /* 2 - Читаем аналоговые данные из 0-го канала */
 if(drv_analog_read(drv,0,0,&data)){
  fprintf(stderr, "Error reading data (%s)\n", 
          strerror(errno));
 }

 /* 3 - Закрываем */
 drv_close(drv);
 return 0;
}

Как можно заметить для получения, например аналоговых данных из драйвера, необходимо выполнить последовательность из 3-х библиотечных вызовов: drv_open(), drv_analog_read(), drv_close().