⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 io_test.c

📁 ARM9200+嵌入式linux下I/O程序
💻 C
字号:
/*
	io-test.c, it need insmod fifo-drv.o first.
	author: zou jian guo <zounix@126.com>
	date:   2004-10-20
	update: 2005-02-01
*/



#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <pthread.h>
#include <sys/mman.h>
#include "../include/api.h"


static void showhelp()
{
	printf("Usage: io w address value [0x53(83)]->[0x58(88)] [0x70(102)->0x78(110)]\n");
	printf("       io r address       [0->8] [0x20(32)->0x28(40)] [0x40(64)->0x42(66)]\n");
}
//====================================================================
int main(int argc, char **argv)
{
 	pthread_t th_key,th_read,th_write;
  	void * retval;
	int fd;
	int i,j,k;
	int w_length=0;
	unsigned char val,addr;
	unsigned char *iobase;
	
	
	if(argc<3){
		showhelp();
		exit(0);
	}

	fd=io_open();
	if(fd < 0){
//		printf("####io  device open fail####\n");
		return (-1);
	}
	if(strcmp(argv[1],"w")==0){
		if(argc < 4){
			showhelp();
			exit(0);
		}
		val = atoi(argv[3]);
		addr = atoi(argv[2]);
		printf("write address: 0x%x (%d) = 0x%x (%d)\n",addr,addr,val,val);
		while(1)io_write(addr,val);
	}		
	if(strcmp(argv[1],"r")==0){
		if(argc < 3){
			showhelp();
			exit(0);
		}
		addr = atoi(argv[2]);
		io_read(addr,&val);
		printf("Read address 0x%x(%d) = 0x%x (%d) \n",addr,addr,val,val);

	}		
	io_close();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -