[Armadillo:00285] pbdr0へ値が書き込めない
takahashi takamichi
email@hidden
2005年 5月 18日 (水) 15:34:50 JST
お世話になっております。高橋と申します。
Armadilloボードで、pbdr0に値が書き込めません。
ソフトウェアマニュアル 18ページのパラレルポート操作のサンプルを
そのまま使いました。サンプルで、pbdr0に1をwriteする所を、
0に変えてwriteした後、readしても1と表示されます。
ポートBを使用する際は、何か設定が必要なのでしょうか?
よろしくお願い致します。
ボードの環境は、ホームページからダウンロードした
ユーザランドとイメージを書き込んで使用しました。
initrd-1.1.2.img.gz
Image-1.1.2
以下コード*******************************************
#include <fcntl.h>
#include <stdio.h>
int main( void )
{
int fd_ddr, fd_dr;
unsigned char val;
fd_ddr = open("/dev/pbddr0", O_WRONLY|O_SYNC);
if ( fd_ddr < 0 ) {
fprintf(stderr, "Open ddr error.\n");
return -1;
}
fd_dr = open("/dev/pbdr0", O_RDWR|O_SYNC);
if ( fd_dr < 0 ) {
fprintf(stderr, "Open dr error.\n");
return -1;
}
val = 1;
write(fd_ddr, &val, sizeof(unsigned char));
val = 0; /*** ここを1から0に変えた ***/
write(fd_dr, &val, sizeof(unsigned char));
val = 0;
write(fd_ddr, &val, sizeof(unsigned char));
read(fd_dr, &val, sizeof(unsigned char));
printf("dr:%d\n", val);
close( fd_ddr );
close( fd_dr );
return 0;
}
armadillo メーリングリストの案内