登录
注册
一键加入QQ群
友善之臂官方网站
首 页
联系我们
淘宝店铺
维基教程
固件下载
资料汇总
搜索帖子!
NanoPC 系列:
NanoPC-T2
NanoPC-T3 Plus
NanoPC-T4
NanoPC-T6
NanoPC-T6 Plus
NanoPi 系列:
NanoPi-NEO
NEO Core
NEO Air
M1 Plus
Duo2
NEO3
NEO4
M4B
M5
M6
M6V2
核心板:
Smart4418
Core4418
Smart6818
Core6818
SOM-RK3399V2
CM3588
CM3588 Plus
迷你R系列:
NanoPi-R1
R1S
R2S
R2S Plus
Zero2
R3S
R76S
R4S
R5S
R5C
R6C
R6S
热门版块:
开发板销售中心
开发板硬件讨论区
硬软DIY及开发
嵌入式交流与讨论
友友粉丝快线
Ubuntu技术交流区
默认风格
用户中心首页
编辑个人资料
查看个人资料
好友列表
用户权限查看
积分管理
积分转换
特殊组购买
收藏夹
我的主题
基本统计信息
到访IP统计
管理团队
管理统计
在线统计
会员排行
版块排行
帖子排行
个人首页
我的收藏
好友近况
Linux技术交流区
请教:linux驱动如何与硬件打交道的?
友友粉丝快线
开发板销售中心
嵌入式最新资讯
友善之臂最新动态
友善之臂官方客服中心
开发板实战手册及教程
应用方案和定制开发
NanoPi 交流与讨论
NanoPi 玩家交流区
ROM发布区
硬软DIY及开发
嵌入式交流与讨论
Android技术交流区
Linux技术交流区
U-boot技术交流区
WinCE技术交流区
Ubuntu技术交流区
裸机程序和微型OS
OpenWRT讨论区
开发板硬件讨论区
相关资料下载及使用技巧
站点服务
二手交易区
我的论坛我的贴
站务管理与公告
上一主题
下一主题
新 帖
主题 : 请教:linux驱动如何与硬件打交道的?
复制链接
|
浏览器收藏
|
打印
che180
级别: 新手上路
作者资料
发送短消息
加为好友
QQ联系
UID:
49476
精华:
0
发帖:
48
金钱:
240 两
威望:
48 点
综合积分:
96 分
注册时间:
2011-06-12
最后登录:
2018-02-08
楼主
发表于: 2011-11-28 13:38
只看楼主
|
小
中
大
请教:linux驱动如何与硬件打交道的?
自学了这久的linux驱动程序了,也看了很多设备驱动程序,比如USB、tty、lcd、块设备等都了解一点,
但是只看到设备不停的注册与卸载,对设备的操作与初始化 ,就是没看见哪个函数能实在在的操作某个硬件的寄存器,我是搞单片机的,所以我就一直很疑惑这点?
难道内核中已经把这些操作硬件的函数给封装起来再给驱动调用?如果是这样的话,那么怎么才能从内核中正确找到自己所需要的操作硬件的函数呢?比如说GPIO的操作!!
望大家一起讨论讨论
你是怎么学习驱动的,牛人:赶鸭子上架,结果就入门了
顶端
回复
引用
分享
kasim
*無鈳取玳
级别: 论坛版主
作者资料
发送短消息
加为好友
QQ联系
UID:
27
精华:
12
发帖:
5398
金钱:
40120 两
威望:
17929 点
综合积分:
11036 分
注册时间:
2008-01-16
最后登录:
2014-11-22
1楼
发表于: 2011-11-28 21:43
只看该作者
|
小
中
大
目前,在Linux设备驱动里,GPIO的操作通常是通过gpiolib提供的API(include/linux/gpio.h)实现的。 其实,Linux设备驱动操作硬件的方式和单片机本质上没有什么两样,该怎么读写寄存器的还是怎么读写,该怎么映射IO memory的还是怎么映射,只是通过内核提供的一系列接口来实现。这些在Linux Device Driver第三版(
http://www.aiothome.net/read.php?tid-1859.html
)的第九章有介绍。当然最好的文档还是源代码本身。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
顶端
回复
引用
分享
gzyjw
级别: 侠客
作者资料
发送短消息
加为好友
UID:
16811
精华:
0
发帖:
112
金钱:
560 两
威望:
112 点
综合积分:
224 分
注册时间:
2010-03-22
最后登录:
2018-06-27
2楼
发表于: 2011-11-29 09:53
只看该作者
|
小
中
大
楼上说的对
顶端
回复
引用
分享
che180
级别: 新手上路
作者资料
发送短消息
加为好友
QQ联系
UID:
49476
精华:
0
发帖:
48
金钱:
240 两
威望:
48 点
综合积分:
96 分
注册时间:
2011-06-12
最后登录:
2018-02-08
3楼
发表于: 2011-11-29 10:11
只看该作者
|
小
中
大
回 1楼(kasim) 的帖子
那是不是内核已经帮你做好了,你只需要调用就OK了是么?是不是一般这些函数在内核的这个目录下是么include/linux/
你是怎么学习驱动的,牛人:赶鸭子上架,结果就入门了
顶端
回复
引用
分享
上一主题
下一主题
Linux技术交流区
http://aiothome.net
访问内容超出本站范围,不能确定是否安全
继续访问
取消访问