next up previous
次へ: openのライブラリ化 上へ: Application Program Interface 戻る: Application Program Interface

実験11の例題

次のプログラムは実験11でとりあげたアプリケーション(テストプログラム)である。


/* InfoSysLab11 example-1 */

#include <stdio.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include "dio_ioctl.h"

int main(void)
{
   int fd, i, ret;
   DIO_POINT point;

   fd = open("/dev/pci2726c", O_RDWR);
   if (fd < 0){
      printf("[open] no Shippai.\n");
      return -errno;
   }

   ret = ioctl(fd, IOCTL_DIO_RESET);
   if (ret < 0) 
       printf("[ioctl reset] no Machigai = %d\n", ret);

   point.start_point = 1;
   point.data_count = 1;
   ret = ioctl(fd, IOCTL_DIO_INPUT, &point);
   if (ret < 0) 
      printf("[ioctl input] no Machigai = %d\n", ret);

   point.start_point = 32;
   point.data_count = 1;
   ret = ioctl(fd, IOCTL_DIO_OUTPUT, &point);
   if (ret < 0) 
      printf("[ioctl output] no Machigai = %d\n", ret);

   close(fd);

   return 0;
}



MANOME Yoichi 平成18年12月26日