驱动设备的复用

设备复用的步骤:
1:注册时连续注册多个设备,首先获得起始设备的设备号
#define MAJOR 100
dev_t devno = MKDEV(MAJOR,0)//起始设备的主设备号100,从设备号0

2:注册字符设备函数:int register_chrdev_region(dev_t from,unsigned count,const char *name)
表示:从设备号from开始,连续注册count个设备。公用设备名称name

3:初始化字符设备:声明一个字符设备:struct cdev c_dev;
初始化字符设备的接口函数是:void cdev_init(struct cdev *cdev,const struct fileoperation *fops)
作用是:将设备操作方法,与字符设备绑定

4:添加字符设备:
添加字符设备的接口函数是:int cdev_add(struct cdev *p,dev_t dev,unsigned count)
从取得的设备号开始,连续添加count 个设备

5:创建设备文件:mknod /dev/XXX0 c 100 0

mknod /dev/xxx1 c 100 1
......
mknod /dev/xxxcount c 100 count

6:应用程序打开设备文件:Fd0 = open(/dev/xxx0,0666);
Fd1 = open(/dev/xxx1,0666);
Fd2 = open(/dev/xxxcount,0666);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值