求救:对I/O端口读写 点击:1001 | 回复:0



gongkongedit

    
  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2003-09-24 11:54:00
楼主
我的以下对i/o读写操作的程序,用gcc编译后执行提示"段错误",不知道问题出在哪?请各位帮忙指点.谢谢! (在linux下编的程序) #include<linux/ioport.h> #include<asm/io.h> #include<stdio.h> #define port 0x250 void main() { int i; int dl; int dh; float b=10/4.096; float dn[16]; outb_p(0x05,port+4); while(1) { for(i=0;i<16;i++) { outb_p(i,port); //向0X250地址写入i outb_p(0,port+1);//向0X250+1地址写入0 do { dh=inb_p(port+3);//读0X250+3地址内容i }while(dh&0x80==0x80); dl=inb_p(port+2); dh=inb_p(port+3); dn[i]=((dh&15)*256+dl)*b/1000; printf("输出值是%f\n",dn[i]); } } }


热门招聘
相关主题

官方公众号

智造工程师