当前位置: 技术问答>linux和unix
驱动fwrite调用失败??(已解决,快来人接分呀)
来源: 互联网 发布时间:2016-08-27
本文导语: 本帖最后由 by674868212 于 2010-05-17 10:14:48 编辑 我写的nrf24l01无线收发模块的驱动,已经能够正常的初始化了,但是write和read却没有得到调用,open是在fopen时正常被调用的,代码如下: 驱动:################################### ...
驱动:###################################
static int nrf24l01_open( struct inode *inode, struct file *file)
{
nRF24L01_Init(); //nrf24l01 initialization
msleep(500);
s3c2410_gpio_setpin(S3C2410_GPB6,1);// LED是有反应的
return file;
}
static ssize_t nrf24l01_write(struct file *filep, const char __user *buff, size_t count, loff_t *offp)
{
.....
printk("Writting....................n");
.....
}
static ssize_t nrf24l01_read(struct file *filep, char __user *buff, size_t count, loff_t *offp)
{
.....
printk("Reading....................n");
.....
}
static struct file_operations dev_fops = {
.owner = THIS_MODULE,
.ioctl = sbc2440_leds_ioctl,
.open = nrf24l01_open,
.write = nrf24l01_write,
.read = nrf24l01_read
};
测试程序:###################################
if ( ! (file = fopen("/dev/nrf24l01","r+")) )
{
printf("open file failure!");
return 1;
}
if ( argc > 1 )
{
if ( !(strcmp(argv[1],"on")) )
{
fwrite(0,0,0,file);
fflush(file);
printf("fwrite....n");
}
else
{
fread(0,0,0,file);
printf("fread.....n");
}
}
fclose(file);
|
接吧接吧,嘿嘿。。。
|
|
来的 不晚把,哈哈。
|
谢谢楼主
|
今天可能晚了。
|
鄙视LZ,光凭LZ在1#楼提供的消息,这种问题大家压根就没法帮你!
|
楼主赶紧庆祝结贴吧。
|
强烈建议 结贴