次のプログラムは実験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; }