嵌入式学习笔记

一、
Linux对驱动的处理分两种方式,一是直接编译进内核,二是以模块的方式进行动态的加载。(insmod: insmod *.ko 卸载rmmod:rmmod 模块名称)

驱动的出入口函数:入口宏函数 module_init(参数:入口驱动函数)
								出口宏函数 module_exit(参数:驱动卸载函数)

在这里插入图片描述

二、字符设备驱动注册分析:
在这里插入图片描述
1、静态申请设备号:register_chrdev_region()
动态申请设备号:alloc_chrdev_region()
获取设备号:MAJOR(dev)
获取次设备号:MINOR(dev)

设备号:MKDEV(主设备号,次设备号),为无符号31位类型的横竖,用其高12位表示主设备号,低20位表示次设备号
初始化设备:cdev_init() 设备注册:cdev_add()
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少宇的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值